@payburner/keyburner-sidewinder-core
Version:
Core library for Keyburner Sidewinder
61 lines • 2.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AWSDynamoSidewinderQueryService = void 0;
class AWSDynamoSidewinderQueryService {
constructor(docClient) {
this.docClient = null;
this.docClient = docClient;
}
getAllEnvironments(address) {
const self = this;
return new Promise((resolve, reject) => {
const params = {
TableName: "sidewinder_sequence",
IndexName: 'address-environment-index',
KeyConditionExpression: "address = :address",
ExpressionAttributeValues: {
":address": address
},
ScanIndexForward: true
};
const t0 = new Date().getTime();
self.docClient.query(params, function (err, data) {
console.log('getAllEnvironments :: Query Time Get Sequence: ' + (new Date().getTime() - t0));
if (err) {
console.error("Unable to query. Error:", JSON.stringify(err, null, 2));
resolve({ status: 500, error: err });
}
else {
resolve({ status: 200, data: data });
}
});
});
}
getAllTokenAccounts(address) {
const self = this;
return new Promise((resolve, reject) => {
const params = {
TableName: "sidewinder_token_account",
IndexName: 'account_owner_address-token_symbol-index',
KeyConditionExpression: "account_owner_address = :account_owner_address",
ExpressionAttributeValues: {
":account_owner_address": address
},
ScanIndexForward: true
};
const t0 = new Date().getTime();
self.docClient.query(params, function (err, data) {
console.log('Query Time Get Token Accounts: ' + (new Date().getTime() - t0));
if (err) {
console.error("getAllTokenAccounts :: Unable to query. Error:", JSON.stringify(err, null, 2));
resolve({ status: 500, error: err });
}
else {
resolve({ status: 200, data: data });
}
});
});
}
}
exports.AWSDynamoSidewinderQueryService = AWSDynamoSidewinderQueryService;
//# sourceMappingURL=AWSDynamoSidewinderQueryService.js.map