vulcain-corejs
Version:
Vulcain micro-service framework
58 lines (56 loc) • 3.25 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __param = (this && this.__param) || function (paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments)).next());
});
};
const annotations_1 = require("../di/annotations");
const schema_1 = require("../schemas/schema");
const annotations_2 = require("../pipeline/annotations");
const applicationRequestError_1 = require("../errors/applicationRequestError");
let ServiceExplorer = class ServiceExplorer {
constructor(domain, container) {
this.domain = domain;
this.container = container;
}
getServiceDescriptions() {
return __awaiter(this, void 0, void 0, function* () {
let ctx = this.requestContext;
if (ctx.publicPath)
throw new applicationRequestError_1.ForbiddenRequestError();
let descriptors = this.container.get(annotations_1.DefaultServiceNames.ServiceDescriptors);
let result = yield descriptors.getDescriptions();
result.alternateAddress = this.requestContext.hostName;
return result;
});
}
};
__decorate([
annotations_2.Query({ outputSchema: "ServiceDescription", description: "Get all service handler description", action: "_serviceDescription" }),
__metadata("design:type", Function),
__metadata("design:paramtypes", []),
__metadata("design:returntype", Promise)
], ServiceExplorer.prototype, "getServiceDescriptions", null);
ServiceExplorer = __decorate([
annotations_2.QueryHandler({ scope: "?", serviceLifeTime: annotations_1.LifeTime.Singleton }),
__param(0, annotations_1.Inject(annotations_1.DefaultServiceNames.Domain)),
__param(1, annotations_1.Inject(annotations_1.DefaultServiceNames.Container)),
__metadata("design:paramtypes", [schema_1.Domain, Object])
], ServiceExplorer);
exports.ServiceExplorer = ServiceExplorer;
//# sourceMappingURL=serviceExplorer.js.map
;