diff --git a/src/contexts/context.controller.ts b/src/contexts/context.controller.ts index 3e47862..fd11342 100644 --- a/src/contexts/context.controller.ts +++ b/src/contexts/context.controller.ts @@ -84,4 +84,23 @@ export default class ContextController { reply(Boom.badImplementation(error)); }); } + + public getContextDetailsById(request: Hapi.Request, reply: Hapi.IReply) { + const id = request.params['id']; + + this.database.context.findAll({ + include: [ + this.database.layer, + this.database.tool + ], + where: { + id: id + } + }).then((layersContexts: Array) => { + reply(layersContexts); + }).catch((error) => { + reply(Boom.badImplementation(error)); + }); + } + } diff --git a/src/contexts/routes.ts b/src/contexts/routes.ts index faefc56..373fbbf 100644 --- a/src/contexts/routes.ts +++ b/src/contexts/routes.ts @@ -43,6 +43,36 @@ export default function (server: Hapi.Server, } }); + server.route({ + method: 'GET', + path: '/contexts/{id}/details', + config: { + handler: contextController.getContextDetailsById, + // auth: 'jwt', + auth: false, + tags: ['api', 'tools', 'layers', 'contexts'], + description: 'Get details of context by context id.', + validate: { + params: { + id: Joi.string().required() + } + // headers: jwtValidator + }, + plugins: { + 'hapi-swagger': { + responses: { + '200': { + 'description': 'Context founded.' + }, + '404': { + 'description': 'Context does not exists.' + } + } + } + } + } + }); + server.route({ method: 'GET', path: '/contexts', diff --git a/src/layersContexts/layerContext.controller.ts b/src/layersContexts/layerContext.controller.ts index b9a92c1..79af138 100644 --- a/src/layersContexts/layerContext.controller.ts +++ b/src/layersContexts/layerContext.controller.ts @@ -90,8 +90,6 @@ export default class LayerContextController { public getLayersByContextId(request: Hapi.Request, reply: Hapi.IReply) { const id = request.params['id']; - - this.database.context.findAll({ include: [ this.database.layer ], where: {