@mas-soft/mas-core-server
Version:
main application
48 lines • 1.76 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const core_module_1 = require("../../src/core-module");
function CreateEntityMicroService(entityClass, baseUrl) {
const datasource = new core_module_1.MasDataSource(new core_module_1.SettingsProvider(), core_module_1.MAS_CONNECTION_NAME + ".EntityService." + (1000000 * Math.random()).toFixed(0));
const repositroy = new core_module_1.MasEntityRepository(entityClass, datasource);
const controller = new core_module_1.EntityControler(repositroy);
const prefix = baseUrl ? baseUrl + "." : "";
return {
name: 'EntityService',
settings: {},
actions: {
[prefix + "add"]: {
params: {
entity: "object",
},
handler(ctx) {
console.dir({ entity: ctx.params.entity });
return controller.add(ctx.params.entity);
}
},
[prefix + "get"]: {
params: {
filter: "object",
},
handler(ctx) {
return controller.get(ctx.params.filter);
}
}
},
methods: {
getEntityClass: () => {
return entityClass;
},
getMasDataSource: () => {
return datasource;
},
getRepository: () => {
return repositroy;
},
getController: () => {
return controller;
}
}
};
}
exports.CreateEntityMicroService = CreateEntityMicroService;
//# sourceMappingURL=entity-service.js.map