vulcain-corejs
Version:
Vulcain micro-service framework
55 lines (53 loc) • 2.41 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); }
};
const requestContext_1 = require('../servers/requestContext');
const annotations_1 = require('../di/annotations');
require('reflect-metadata');
const symMetadata = Symbol.for("handler:metadata");
const symActions = Symbol.for("handler:actions");
class AbstractHandler {
constructor(container) {
this.container = container;
}
get requestContext() {
if (!this._requestContext) {
this._requestContext = this.container.get(annotations_1.DefaultServiceNames.RequestContext, true) || new requestContext_1.RequestContext(this.container, requestContext_1.Pipeline.InProcess);
}
return this._requestContext;
}
set requestContext(ctx) {
this._requestContext = ctx;
}
get metadata() {
return Reflect.getMetadata(symMetadata, this.constructor);
}
get metadataActions() {
return Reflect.getMetadata(symActions, this.constructor);
}
}
AbstractHandler = __decorate([
__param(0, annotations_1.Inject("Container")),
__metadata('design:paramtypes', [Object])
], AbstractHandler);
exports.AbstractHandler = AbstractHandler;
class AbstractActionHandler extends AbstractHandler {
}
exports.AbstractActionHandler = AbstractActionHandler;
class AbstractEventHandler extends AbstractHandler {
}
exports.AbstractEventHandler = AbstractEventHandler;
class AbstractQueryHandler extends AbstractHandler {
}
exports.AbstractQueryHandler = AbstractQueryHandler;
//# sourceMappingURL=abstractHandlers.js.map
;