dogecoin-gatewayd-plugin
Version:
Three unix processes designed to automate the integration between a ripple gateway using gatewayd and a dogecoind server.
67 lines (59 loc) • 2.16 kB
JavaScript
// Generated by CoffeeScript 1.7.1
var DogecoinBridge, DogecoinBridgeController, RippleNameLookup,
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
RippleNameLookup = require("" + __dirname + "/ripple_name_lookup");
DogecoinBridge = require("" + __dirname + "/dogecoin_bridge");
DogecoinBridgeController = (function() {
function DogecoinBridgeController(gatewayd) {
this.gatewayd = gatewayd;
this.get = __bind(this.get, this);
}
DogecoinBridgeController.prototype.get = function(request, response) {
var dogecoinBridge, rippleNameLookup;
if (!this.gatewayd.validator.isRippleAddress(request.params.name)) {
rippleNameLookup = new RippleNameLookup(request.params.name);
return rippleNameLookup.resolveNameToAddress((function(_this) {
return function(error, rippleAddress) {
var body, dogecoinBridge;
if (error) {
return response.status(500).send({
error: error
});
} else if (rippleAddress) {
dogecoinBridge = new DogecoinBridge(_this.gatewayd, rippleAddress);
return dogecoinBridge.getDogecoinBridge(function(error, bridge) {
return response.status(200).send({
ripple: {
address: bridge.uid
},
dogecoin: {
address: bridge.name
}
});
});
} else {
body = {
field: 'name',
message: 'must be a valid ripple address or ripple name'
};
return response.status(500).send(body);
}
};
})(this));
} else {
dogecoinBridge = new DogecoinBridge(this.gatewayd, request.params.name);
return dogecoinBridge.getDogecoinBridge(function(error, bridge) {
return response.status(200).send({
ripple: {
address: bridge.uid
},
dogecoin: {
address: bridge.name
}
});
});
}
};
return DogecoinBridgeController;
})();
module.exports = DogecoinBridgeController;