node_modules/
jspm_packages/
dist/
+dist10/
# TypeScript v1 declaration files
typings/
}
};
-export const LoopbackConfig = {
- url: "http://127.0.0.1:3000",
- authtoken: "ccsdkapps"
-}
export const ResourceDictionaryURLs = {
saveResourceDictionary: '/resourcedictionary/save',
import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders, HttpResponse, HttpHeaderResponse } from '@angular/common/http';
import { Observable } from 'rxjs';
-import { LoopbackConfig } from '../../constants/app-constants';
@Injectable()
export class ApiService {
import { HttpClient } from '@angular/common/http';
import { Observable, observable } from 'rxjs';
import { ApiService } from '../../../../common/core/services/api.service';
-import { LoopbackConfig } from '../../../../common/constants/app-constants';
import { saveAs } from 'file-saver';
@Injectable()
}
enrich(uri: string, body: FormData): Observable<any> {
- return this.api.post(LoopbackConfig.url + uri, body, { responseType: 'blob' });
+ return this.api.post(uri, body, { responseType: 'blob' });
}
downloadCBA(uri: string): string {
- this.api.get(LoopbackConfig.url + uri, { responseType: 'blob' })
+ this.api.get(uri, { responseType: 'blob' })
.subscribe(response => {
let blob = new Blob([response], { 'type': "application/octet-stream" });
saveAs(blob, "CBA.zip");
}
post(uri: string, body: any | null, options?: any): Observable<any> {
- return this.api.post(LoopbackConfig.url + uri, body, options);
+ return this.api.post(uri, body, options);
}
deployPost(uri: string, body: any | null, options?: any): Observable<any> {
- return this.api.post(LoopbackConfig.url + uri, body, { responseType: 'text' });
+ return this.api.post(uri, body, { responseType: 'text' });
}
}
\ No newline at end of file
import { HttpClient } from '@angular/common/http';
import { Observable, observable } from 'rxjs';
import { ApiService } from '../../../common/core/services/api.service';
-import { LoopbackConfig } from '../../../common/constants/app-constants';
@Injectable()
export class TestTemplateService {
import { HttpClient } from '@angular/common/http';
import { Observable, observable } from 'rxjs';
import { ApiService } from '../../../../common/core/services/api.service';
-import { LoopbackConfig, ResourceDictionaryURLs } from '../../../../common/constants/app-constants';
+import { ResourceDictionaryURLs } from '../../../../common/constants/app-constants';
@Injectable()
export class ExsistingModelService {
}
searchByTags(tag) {
- return this.api.get(LoopbackConfig.url+ ResourceDictionaryURLs.searchResourceDictionaryByTags + '/' + tag);
+ return this.api.get(ResourceDictionaryURLs.searchResourceDictionaryByTags + '/' + tag);
}
}
\ No newline at end of file
import { HttpClient } from '@angular/common/http';
import { Observable, observable } from 'rxjs';
import { ApiService } from '../../../common/core/services/api.service';
-import { LoopbackConfig, ResourceDictionaryURLs } from '../../../common/constants/app-constants';
+import { ResourceDictionaryURLs } from '../../../common/constants/app-constants';
@Injectable()
export class ResourceEditService {
}
saveResource(resource) {
- return this.api.post(LoopbackConfig.url+ ResourceDictionaryURLs.saveResourceDictionary, resource);
+ return this.api.post(ResourceDictionaryURLs.saveResourceDictionary, resource);
}
}
\ No newline at end of file
--- /dev/null
+export const controllerApiConfig = Object.freeze({
+ url: process.env.API_BLUEPRINT_CONTROLLER_BASE_URL || "http://localhost:8080/api/v1",
+ authToken: process.env.API_BLUEPRINT_CONTROLLER_AUTH_TOKEN || "Basic Y2NzZGthcHBzOmNjc2RrYXBwcw=="
+});
+
+export const processorApiConfig = Object.freeze({
+ url: process.env.API_BLUEPRINT_PROCESSOR_BASE_URL || "http://localhost:8081/api/v1",
+ authToken: process.env.API_BLUEPRINT_PROCESSOR_AUTH_TOKEN || "Basic Y2NzZGthcHBzOmNjc2RrYXBwcw=="
+});
\ No newline at end of file
import * as fs from 'fs';
import * as multiparty from 'multiparty';
import * as request_lib from 'request';
-
-const REST_BLUEPRINT_CONTROLLER_BASE_URL = process.env.REST_BLUEPRINT_CONTROLLER_BASE_URL || "http://localhost:8080/api/v1";
-const REST_BLUEPRINT_CONTROLLER_BASIC_AUTH_HEADER = process.env.REST_BLUEPRINT_CONTROLLER_BASIC_AUTH_HEADER || "Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==";
-const REST_BLUEPRINT_PROCESSOR_BASE_URL= process.env.REST_BLUEPRINT_PROCESSOR_BASE_URL ||"http://localhost:8081/api/v1";
-const MULTIPART_FORM_UPLOAD_DIR = process.env.MULTIPART_FORM_UPLOAD_DIR || "/tmp";
+import {controllerApiConfig, processorApiConfig} from '../../config/app-config';
export class BlueprintRestController {
constructor(
},
})
async getall() {
- return await this.bpservice.getAllblueprints(REST_BLUEPRINT_CONTROLLER_BASIC_AUTH_HEADER);
+ return await this.bpservice.getAllblueprints();
}
@post('/create-blueprint')
): Promise<Response> {
return new Promise((resolve, reject) => {
this.getFileFromMultiPartForm(request).then(file=>{
- this.uploadFileToBlueprintController(file, REST_BLUEPRINT_CONTROLLER_BASE_URL+"/blueprint-model/", response).then(resp=>{
+ this.uploadFileToBlueprintController(file, "/blueprint-model/", response).then(resp=>{
resolve(resp);
}, err=>{
reject(err);
});
});
}
+
@post('/publish')
async publish(
@requestBody({
): Promise<Response> {
return new Promise((resolve, reject) => {
this.getFileFromMultiPartForm(request).then(file=>{
- this.uploadFileToBlueprintController(file, REST_BLUEPRINT_CONTROLLER_BASE_URL+"/blueprint-model/publish/", response).then(resp=>{
+ this.uploadFileToBlueprintController(file, "/blueprint-model/publish/", response).then(resp=>{
resolve(resp);
}, err=>{
reject(err);
});
});
}
+
@post('/enrich-blueprint')
async enrich(
@requestBody({
): Promise<Response> {
return new Promise((resolve, reject) => {
this.getFileFromMultiPartForm(request).then(file=>{
- this.uploadFileToBlueprintController(file, REST_BLUEPRINT_CONTROLLER_BASE_URL+"/blueprint-model/enrich/", response).then(resp=>{
+ this.uploadFileToBlueprintController(file, "/blueprint-model/enrich/", response).then(resp=>{
resolve(resp);
}, err=>{
reject(err);
@param.path.string('version') version:string,
@inject(RestBindings.Http.RESPONSE) response: Response,
): Promise<Response> {
- return this.downloadFileFromBlueprintController(REST_BLUEPRINT_CONTROLLER_BASE_URL+"/blueprint-model/download/by-name/"+name+"/version/"+version, response);
+ return this.downloadFileFromBlueprintController("/blueprint-model/download/by-name/"+name+"/version/"+version, response);
}
async getFileFromMultiPartForm(request: Request): Promise<multiparty.File>{
): Promise<Response> {
return new Promise((resolve, reject) => {
this.getFileFromMultiPartForm(request).then(file=>{
- this.uploadFileToBlueprintController(file, REST_BLUEPRINT_PROCESSOR_BASE_URL+"/execution-service/upload/", response).then(resp=>{
+ this.uploadFileToBlueprintProcessor(file, "/execution-service/upload/", response).then(resp=>{
resolve(resp);
}, err=>{
reject(err);
});
});
}
+
async uploadFileToBlueprintController(file: multiparty.File, uri: string, response: Response): Promise<Response>{
+ return this.uploadFileToBlueprintService(file, controllerApiConfig.url + uri, controllerApiConfig.authToken, response);
+ }
+
+ async uploadFileToBlueprintProcessor(file: multiparty.File, uri: string, response: Response): Promise<Response>{
+ return this.uploadFileToBlueprintService(file, processorApiConfig.url + uri, processorApiConfig.authToken, response);
+ }
+
+ async uploadFileToBlueprintService(file: multiparty.File, url: string, authToken: string, response: Response): Promise<Response>{
let options = {
- // url: REST_BLUEPRINT_CONTROLLER_BASE_URL + uri,
- url:uri,
+ url: url,
headers: {
- Authorization: REST_BLUEPRINT_CONTROLLER_BASIC_AUTH_HEADER,
+ Authorization: authToken,
'content-type': 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW'
},
formData: {
});
})
}
+
async downloadFileFromBlueprintController(uri: string, response: Response): Promise<Response> {
+ return this.downloadFileFromBlueprintService(controllerApiConfig.url + uri, controllerApiConfig.authToken, response);
+ }
+
+ async downloadFileFromBlueprintService(url: string, authToken: string, response: Response): Promise<Response> {
let options = {
- url: uri,
- // REST_BLUEPRINT_CONTROLLER_BASE_URL + uri,
+ url: url,
headers: {
- Authorization: REST_BLUEPRINT_CONTROLLER_BASIC_AUTH_HEADER,
+ Authorization: authToken,
}
};
return new Promise((resolve, reject) => {
import { inject } from '@loopback/core';
import { ResourceDictionaryService } from '../services';
-const REST_RESOURCE_DICTIONARY_BASIC_AUTH_HEADER = process.env.REST_BLUEPRINT_CONTROLLER_BASIC_AUTH_HEADER || "Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==";
export class DataDictionaryController {
constructor(
@inject('services.ResourceDictionaryService')
},
})
async getByName(@param.path.string('name') name: string) {
- return await this.rdservice.getByName(name, REST_RESOURCE_DICTIONARY_BASIC_AUTH_HEADER);
+ return await this.rdservice.getByName(name);
}
+
@get('/resourcedictionary/search/{tags}', {
responses: {
'200': {
},
})
async getByTags(@param.path.string('tags') tags: string) {
- return await this.rdservice.getByTags(tags, REST_RESOURCE_DICTIONARY_BASIC_AUTH_HEADER);
+ return await this.rdservice.getByTags(tags);
}
@get('/resourcedictionary/source-mapping', {
},
})
async getSourceMapping() {
- return await this.rdservice.getSourceMapping(REST_RESOURCE_DICTIONARY_BASIC_AUTH_HEADER);
+ return await this.rdservice.getSourceMapping();
}
+
@post('/resourcedictionary/save', {
responses: {
'200': {
content: { 'application/json': { schema: { 'x-ts-type': JSON } } },
accepts: { 'application/json': { schema: { 'x-ts-type': JSON } } }
}) resourceDictionary: JSON): Promise<any> {
- return await this.rdservice.save(REST_RESOURCE_DICTIONARY_BASIC_AUTH_HEADER, resourceDictionary);
+ return await this.rdservice.save(resourceDictionary);
}
+
@post('/resourcedictionary/search/by-names', {
responses: {
'200': {
content: { 'application/json': { schema: { 'x-ts-type': JSON } } },
accepts: { 'application/json': { schema: { 'x-ts-type': JSON } } }
}) resourceDictionaryList: JSON): Promise<any> {
- return await this.rdservice.searchbyNames(REST_RESOURCE_DICTIONARY_BASIC_AUTH_HEADER, resourceDictionaryList);
+ return await this.rdservice.searchbyNames(resourceDictionaryList);
}
}
-{
+import {controllerApiConfig} from '../../config/app-config';
+
+export default {
"name": "blueprint",
"connector": "rest",
- "baseURL": "http://localhost:8080/api/v1/",
+ "baseURL": controllerApiConfig.url,
"crud": false,
"operations": [{
"template": {
"method": "GET",
- "url": "http://localhost:8080/api/v1/blueprint-model/",
+ "url": controllerApiConfig.url + "/blueprint-model/",
"headers": {
"accepts": "application/json",
"content-type": "application/json",
- "authorization": "{authtoken}"
+ "authorization": controllerApiConfig.authToken
},
"responsePath": "$.*"
},
"functions": {
- "getAllblueprints": ["authtoken"]
+ "getAllblueprints": []
}
}]
-}
\ No newline at end of file
+};
\ No newline at end of file
import {inject} from '@loopback/core';
import {juggler} from '@loopback/repository';
-import * as config from './blueprint.datasource.json';
+import config from './blueprint.datasource-template';
export class BlueprintDataSource extends juggler.DataSource {
static dataSourceName = 'blueprint';
-{
+import {controllerApiConfig} from '../../config/app-config';
+
+export default {
"name": "resourceDictionary",
"connector": "rest",
- "baseURL": "http://localhost:8080/api/v1/dictionary",
+ "baseURL": controllerApiConfig.url + "/dictionary",
"crud": false,
"operations": [{
"template": {
"method": "GET",
- "url": "http://localhost:8080/api/v1/dictionary/{name}",
+ "url": controllerApiConfig.url + "/dictionary/{name}",
"headers": {
"accepts": "application/json",
"content-type": "application/json",
- "authorization": "{authtoken}"
+ "authorization": controllerApiConfig.authToken
},
"responsePath": "$.*"
},
"functions": {
- "getByName": ["name", "authtoken"]
+ "getByName": ["name"]
}
},
{
"template": {
"method": "GET",
- "url": "http://localhost:8080/api/v1/dictionary/source-mapping",
+ "url": controllerApiConfig.url + "/dictionary/source-mapping",
"headers": {
"accepts": "application/json",
"content-type": "application/json",
- "authorization": "{authtoken}"
+ "authorization": controllerApiConfig.authToken
},
"responsePath": "$.*"
},
"functions": {
- "getSourceMapping": ["authtoken"]
+ "getSourceMapping": []
}
},
{
"template": {
"method": "GET",
- "url": "http://localhost:8080/api/v1/dictionary/search/{tags}",
+ "url": controllerApiConfig.url + "/dictionary/search/{tags}",
"headers": {
"accepts": "application/json",
"content-type": "application/json",
- "authorization": "{authtoken}"
+ "authorization": controllerApiConfig.authToken
},
"responsePath": "$.*"
},
"functions": {
- "getByTags": ["tags", "authtoken"]
+ "getByTags": ["tags"]
}
},
{
"template": {
"method": "POST",
- "url": "http://localhost:8080/api/v1/dictionary",
+ "url": controllerApiConfig.url + "/dictionary",
"headers": {
"accepts": "application/json",
"content-type": "application/json",
- "authorization": "{authtoken}"
+ "authorization": controllerApiConfig.authToken
},
"body": "{resourceDictionary}",
"responsePath": "$.*"
},
"functions": {
- "save": ["authtoken", "resourceDictionary"]
+ "save": ["resourceDictionary"]
}
},
{
"template": {
"method": "POST",
- "url": "http://localhost:8080/api/v1/dictionary/by-names",
+ "url": controllerApiConfig.url + "/dictionary/by-names",
"headers": {
"accepts": "application/json",
"content-type": "application/json",
- "authorization": "{authtoken}"
+ "authorization": controllerApiConfig.authToken
},
"body": "{resourceDictionaryList}",
"responsePath": "$.*"
},
"functions": {
- "searchbyNames": ["authtoken", "resourceDictionaryList"]
+ "searchbyNames": ["resourceDictionaryList"]
}
}
]
-}
\ No newline at end of file
+};
\ No newline at end of file
import {inject} from '@loopback/core';
import {juggler} from '@loopback/repository';
-import * as config from './resource-dictionary.datasource.json';
+import config from './resource-dictionary.datasource-template';
export class ResourceDictionaryDataSource extends juggler.DataSource {
static dataSourceName = 'resourceDictionary';
import {BlueprintDataSource} from '../datasources';
export interface BlueprintService {
- getAllblueprints(authtoken: string): Promise<any>;
+ getAllblueprints(): Promise<any>;
}
export class BlueprintServiceProvider implements Provider<BlueprintService> {
import {ResourceDictionaryDataSource} from '../datasources';
export interface ResourceDictionaryService {
- getByName(name: string, authtoken: string): Promise<JSON>;
- getSourceMapping(authtoken: string): Promise<JSON>;
- getByTags(tags: string, authtoken: string): Promise<JSON>;
- save(authtoken: string, resourceDictionary: JSON): Promise<JSON>;
- searchbyNames(authtoken: string, resourceDictionaryList: JSON): Promise<JSON>;
+ getByName(name: string): Promise<JSON>;
+ getSourceMapping(): Promise<JSON>;
+ getByTags(tags: string): Promise<JSON>;
+ save(resourceDictionary: JSON): Promise<JSON>;
+ searchbyNames(resourceDictionaryList: JSON): Promise<JSON>;
}
export class ResourceDictionaryServiceProvider implements Provider<ResourceDictionaryService> {