Merge "Creating findOneBluePrintModel (configuration)"
[ccsdk/cds.git] / cds-ui / server / src / services / blueprint.service.ts
1 import {getService} from '@loopback/service-proxy';
2 import {inject, Provider} from '@loopback/core';
3 import {BlueprintDataSource} from '../datasources';
4
5 export interface BlueprintService {
6     getOneBluePrint(id: string): any;
7    getAllblueprints(): Promise<any>;
8    getBlueprintsByKeyword(keyword: string): Promise<any>;
9    getByTags(tags: string): Promise<JSON>;
10    getPagedBueprints(limit: number, offset: number , sort: string): Promise<any>;
11    getMetaDataPagedBlueprints(limit: number, offset: number, sort: string, keyword: string): Promise<any>;
12
13
14 }
15
16 export class BlueprintServiceProvider implements Provider<BlueprintService> {
17   constructor(
18     // blueprint must match the name property in the datasource json file
19     @inject('datasources.blueprint')
20     protected dataSource: BlueprintDataSource = new BlueprintDataSource(),
21   ) {}
22
23   value(): Promise<BlueprintService> {
24     return getService(this.dataSource);
25   }
26 }