BREAKING CHANGE: Fix types of XRP values in getServerInfo response

This commit is contained in:
Chris Clark
2015-12-07 11:44:40 -08:00
parent 261fba3d21
commit 99d08065e4
6 changed files with 26 additions and 21 deletions

View File

@@ -683,10 +683,10 @@ pubkeyNode | string | Public key used to verify this node for internal communica
serverState | string | A string indicating to what extent the server is participating in the network. See [Possible Server States](https://ripple.com/build/rippled-apis/#possible-server-states) for more details. serverState | string | A string indicating to what extent the server is participating in the network. See [Possible Server States](https://ripple.com/build/rippled-apis/#possible-server-states) for more details.
validatedLedger | object | Information about the fully-validated ledger with the highest sequence number (the most recent). validatedLedger | object | Information about the fully-validated ledger with the highest sequence number (the most recent).
*validatedLedger.* age | integer | The time since the ledger was closed, in seconds. *validatedLedger.* age | integer | The time since the ledger was closed, in seconds.
*validatedLedger.* baseFeeXRP | number | Base fee, in XRP. This may be represented in scientific notation such as 1e-05 for 0.00005. *validatedLedger.* baseFeeXRP | [value](#value) | Base fee, in XRP. This may be represented in scientific notation such as 1e-05 for 0.00005.
*validatedLedger.* hash | string | Unique hash for the ledger, as an uppercase hexadecimal string. *validatedLedger.* hash | string | Unique hash for the ledger, as an uppercase hexadecimal string.
*validatedLedger.* reserveBaseXRP | integer | Minimum amount of XRP necessary for every account to keep in reserve. *validatedLedger.* reserveBaseXRP | [value](#value) | Minimum amount of XRP necessary for every account to keep in reserve.
*validatedLedger.* reserveIncrementXRP | integer | Amount of XRP added to the account reserve for each object an account is responsible for in the ledger. *validatedLedger.* reserveIncrementXRP | [value](#value) | Amount of XRP added to the account reserve for each object an account is responsible for in the ledger.
*validatedLedger.* ledgerVersion | integer | Identifying sequence number of this ledger version. *validatedLedger.* ledgerVersion | integer | Identifying sequence number of this ledger version.
validationQuorum | number | Minimum number of trusted validations required in order to validate a ledger version. Some circumstances may cause the server to require more validations. validationQuorum | number | Minimum number of trusted validations required in order to validate a ledger version. Some circumstances may cause the server to require more validations.
load | object | *Optional* *(Admin only)* Detailed information about the current load state of the server. load | object | *Optional* *(Admin only)* Detailed information about the current load state of the server.
@@ -717,10 +717,10 @@ return api.getServerInfo().then(info => {/* ... */});
"serverState": "full", "serverState": "full",
"validatedLedger": { "validatedLedger": {
"age": 5, "age": 5,
"baseFeeXRP": 0.00001, "baseFeeXRP": "0.00001",
"hash": "4482DEE5362332F54A4036ED57EE1767C9F33CF7CE5A6670355C16CECE381D46", "hash": "4482DEE5362332F54A4036ED57EE1767C9F33CF7CE5A6670355C16CECE381D46",
"reserveBaseXRP": 20, "reserveBaseXRP": "20",
"reserveIncrementXRP": 5, "reserveIncrementXRP": "5",
"ledgerVersion": 6595042 "ledgerVersion": 6595042
}, },
"validationQuorum": 3 "validationQuorum": 3
@@ -3464,7 +3464,7 @@ Name | Type | Description
baseFeeXRP | [value](#value) | Base fee, in XRP. baseFeeXRP | [value](#value) | Base fee, in XRP.
ledgerHash | string | Unique hash of the ledger that was closed, as hex. ledgerHash | string | Unique hash of the ledger that was closed, as hex.
ledgerTimestamp | date-time string | The time at which this ledger closed. ledgerTimestamp | date-time string | The time at which this ledger closed.
reserveBaseXRP | [value](#value) | The minimum reserve, in drops of XRP, that is required for an account. reserveBaseXRP | [value](#value) | The minimum reserve, in XRP, that is required for an account.
reserveIncrementXRP | [value](#value) | The increase in account reserve that is added for each item the account owns, such as offers or trust lines. reserveIncrementXRP | [value](#value) | The increase in account reserve that is added for each item the account owns, such as offers or trust lines.
transactionCount | integer | Number of new transactions included in this ledger. transactionCount | integer | Number of new transactions included in this ledger.
ledgerVersion | integer | Ledger version of the ledger that closed. ledgerVersion | integer | Ledger version of the ledger that closed.

View File

@@ -83,7 +83,7 @@
"description": "The time since the ledger was closed, in seconds." "description": "The time since the ledger was closed, in seconds."
}, },
"baseFeeXRP": { "baseFeeXRP": {
"type": "number", "$ref": "value",
"description": "Base fee, in XRP. This may be represented in scientific notation such as 1e-05 for 0.00005." "description": "Base fee, in XRP. This may be represented in scientific notation such as 1e-05 for 0.00005."
}, },
"hash": { "hash": {
@@ -91,13 +91,11 @@
"description": "Unique hash for the ledger, as an uppercase hexadecimal string." "description": "Unique hash for the ledger, as an uppercase hexadecimal string."
}, },
"reserveBaseXRP": { "reserveBaseXRP": {
"type": "integer", "$ref": "value",
"minimum": 0,
"description": "Minimum amount of XRP necessary for every account to keep in reserve." "description": "Minimum amount of XRP necessary for every account to keep in reserve."
}, },
"reserveIncrementXRP": { "reserveIncrementXRP": {
"type": "integer", "$ref": "value",
"minimum": 0,
"description": "Amount of XRP added to the account reserve for each object an account is responsible for in the ledger." "description": "Amount of XRP added to the account reserve for each object an account is responsible for in the ledger."
}, },
"ledgerVersion": { "ledgerVersion": {

View File

@@ -23,7 +23,7 @@
}, },
"reserveBaseXRP": { "reserveBaseXRP": {
"$ref": "value", "$ref": "value",
"description": "The minimum reserve, in drops of XRP, that is required for an account." "description": "The minimum reserve, in XRP, that is required for an account."
}, },
"reserveIncrementXRP": { "reserveIncrementXRP": {
"$ref": "value", "$ref": "value",

View File

@@ -6,7 +6,7 @@ import type {Connection} from './connection';
export type GetServerInfoResponse = { export type GetServerInfoResponse = {
buildVersion: string, buildVersion: string,
completeLedgers: string, completeLedgers: string,
hostid: string, hostID: string,
ioLatencyMs: number, ioLatencyMs: number,
load?: { load?: {
jobTypes: Array<Object>, jobTypes: Array<Object>,
@@ -23,11 +23,11 @@ export type GetServerInfoResponse = {
serverState: string, serverState: string,
validatedLedger: { validatedLedger: {
age: number, age: number,
baseFeeXrp: number, baseFeeXRP: string,
hash: string, hash: string,
reserveBaseXrp: number, reserveBaseXRP: string,
reserveIncXrp: number, reserveIncrementXRP: string,
seq: number ledgerVersion: number
}, },
validationQuorum: number validationQuorum: number
} }
@@ -49,6 +49,12 @@ function getServerInfo(connection: Connection): Promise<GetServerInfoResponse> {
reserveIncXrp: 'reserveIncrementXRP', reserveIncXrp: 'reserveIncrementXRP',
seq: 'ledgerVersion' seq: 'ledgerVersion'
}); });
info.validatedLedger.baseFeeXRP =
info.validatedLedger.baseFeeXRP.toString();
info.validatedLedger.reserveBaseXRP =
info.validatedLedger.reserveBaseXRP.toString();
info.validatedLedger.reserveIncrementXRP =
info.validatedLedger.reserveIncrementXRP.toString();
return info; return info;
}); });
} }

View File

@@ -14,6 +14,7 @@ const address = addresses.ACCOUNT;
const utils = RippleAPI._PRIVATE.ledgerUtils; const utils = RippleAPI._PRIVATE.ledgerUtils;
const ledgerClosed = require('./fixtures/rippled/ledger-close-newer'); const ledgerClosed = require('./fixtures/rippled/ledger-close-newer');
const schemaValidator = RippleAPI._PRIVATE.schemaValidator; const schemaValidator = RippleAPI._PRIVATE.schemaValidator;
assert.options.strict = true;
function unused() { function unused() {
} }

View File

@@ -13,10 +13,10 @@
"serverState": "full", "serverState": "full",
"validatedLedger": { "validatedLedger": {
"age": 5, "age": 5,
"baseFeeXRP": 0.00001, "baseFeeXRP": "0.00001",
"hash": "4482DEE5362332F54A4036ED57EE1767C9F33CF7CE5A6670355C16CECE381D46", "hash": "4482DEE5362332F54A4036ED57EE1767C9F33CF7CE5A6670355C16CECE381D46",
"reserveBaseXRP": 20, "reserveBaseXRP": "20",
"reserveIncrementXRP": 5, "reserveIncrementXRP": "5",
"ledgerVersion": 6595042 "ledgerVersion": 6595042
}, },
"validationQuorum": 3 "validationQuorum": 3