aboutsummaryrefslogtreecommitdiffstats
path: root/cds-ui/client-frankfurt/src/app/common
diff options
context:
space:
mode:
Diffstat (limited to 'cds-ui/client-frankfurt/src/app/common')
-rw-r--r--cds-ui/client-frankfurt/src/app/common/constants/app-constants.ts5
-rw-r--r--cds-ui/client-frankfurt/src/app/common/core/services/api.service.ts110
-rw-r--r--cds-ui/client-frankfurt/src/app/common/core/services/api.typed.service.ts51
-rw-r--r--cds-ui/client-frankfurt/src/app/common/core/stores/Store.ts22
-rw-r--r--cds-ui/client-frankfurt/src/app/common/model/page.ts21
5 files changed, 110 insertions, 99 deletions
diff --git a/cds-ui/client-frankfurt/src/app/common/constants/app-constants.ts b/cds-ui/client-frankfurt/src/app/common/constants/app-constants.ts
index 11d0598d9..cfe8061f3 100644
--- a/cds-ui/client-frankfurt/src/app/common/constants/app-constants.ts
+++ b/cds-ui/client-frankfurt/src/app/common/constants/app-constants.ts
@@ -88,13 +88,16 @@ export const GlobalContants = {
export const BlueprintURLs = {
getAllBlueprints: '/controllerblueprint/all',
+ getPagedBlueprints: '/controllerblueprint/paged',
searchByTag: '/controllerblueprint/searchByTags/',
save: '/controllerblueprint/create-blueprint',
publish: '/controllerblueprint/publish',
enrich: '/controllerblueprint/enrich-blueprint',
download: '/controllerblueprint/download-blueprint/',
deploy: '/controllerblueprint/deploy-blueprint',
- getMetaDate: '/controllerblueprint/meta-data/'
+ getMetaDate: '/controllerblueprint/meta-data/',
+ countOfAllBluePrints: '/controllerblueprint/list/count',
+ getMetaDatePageable: '/controllerblueprint/metadata/paged'
};
export const ResourceDictionaryURLs = {
diff --git a/cds-ui/client-frankfurt/src/app/common/core/services/api.service.ts b/cds-ui/client-frankfurt/src/app/common/core/services/api.service.ts
index b26558b01..de8aab886 100644
--- a/cds-ui/client-frankfurt/src/app/common/core/services/api.service.ts
+++ b/cds-ui/client-frankfurt/src/app/common/core/services/api.service.ts
@@ -1,4 +1,3 @@
-
/*
============LICENSE_START==========================================
===================================================================
@@ -22,103 +21,10 @@ See the License for the specific language governing permissions and
limitations under the License.
============LICENSE_END============================================
*/
-export const GlobalContants = {
- endpoints: {},
- cbawizard: {
- stepsRequired:
- {
- stepCount: 4,
- steps: [{
- name: 'CBA Metadata',
- componentURL: '/controllerBlueprint/selectTemplate',
- label: 'CBA Metadata',
- link: '/blueprint/selectTemplate',
- index: 0,
- component: 'SelectTemplateComponent'
- },
- {
- name: 'Controller Blueprint Designer',
- componentURL: '/controllerBlueprint/modifyTemplate',
- label: 'Controller Blueprint Designer',
- link: '/blueprint/modifyTemplate',
- index: 1,
- component: 'ModifyTemplateComponent'
- },
- {
- name: 'Test',
- componentURL: '/controllerBlueprint/testTemplate',
- label: 'Test',
- link: '/blueprint/testTemplate',
- index: 2,
- component: 'TestTemplateComponent'
- },
- {
- name: 'Deploy',
- componentURL: '/controllerBlueprint/deployTemplate',
- label: 'Deploy',
- link: '/blueprint/deployTemplate',
- index: 3,
- component: 'DeployTemplateComponent'
- }]
- }
- },
- datadictionary: {
- stepsRequired:
- {
- stepCount: 3,
- steps: [{
- name: 'Resource Creation', componentURL: '/dataDictionary/selectTemplate',
- label: 'Resource Creation',
- component: 'ResourceCreationComponent'
-
- },
- {
- name: 'Edit/Validate', componentURL: '/dataDictionary/modifyTemplate',
- label: 'Edit/Validate',
- component: 'ResourceEditComponent'
- },
- {
- name: 'Save', componentURL: '/dataDictionary/saveTemplate',
- label: 'Save Resource',
- component: 'SaveResourceComponent'
- }]
- }
-
- }
-};
-
-export const BlueprintURLs = {
- getAllBlueprints: '/controllerblueprint/all',
- searchByTag: '/controllerblueprint/searchByTags/',
- save: '/controllerblueprint/create-blueprint',
- publish: '/controllerblueprint/publish',
- enrich: '/controllerblueprint/enrich-blueprint',
- download: '/controllerblueprint/download-blueprint/',
- deploy: '/controllerblueprint/deploy-blueprint',
- getMetaDate: '/controllerblueprint/meta-data/'
-};
-
-export const ResourceDictionaryURLs = {
- saveResourceDictionary: '/resourcedictionary/save',
- searchResourceDictionaryByTags: '/resourcedictionary/search',
- searchResourceDictionaryByName: '',
- getSources: '/resourcedictionary/source-mapping',
- getModelType: '/resourcedictionary/model-type',
- getDataType: '/resourcedictionary/model-type/by-definition/data_type'
-};
-
-export const ControllerCatalogURLs = {
- searchControllerCatalogByTags: '/controllercatalog/search',
- saveControllerCatalog: '/controllercatalog/save',
- getDefinition: '/controllercatalog/model-type/by-definition',
- getDerivedFrom: '/controllercatalog/model-type/by-derivedfrom'
-};
-
-
import {Injectable} from '@angular/core';
-import {HttpClient, HttpHeaders, HttpResponse, HttpHeaderResponse} from '@angular/common/http';
-import {Observable} from 'rxjs';
+import {HttpClient, HttpHeaders, HttpResponse, HttpHeaderResponse, HttpParams} from '@angular/common/http';
+import {Observable, of} from 'rxjs';
@Injectable()
export class ApiService {
@@ -126,8 +32,16 @@ export class ApiService {
constructor(private httpClient: HttpClient) {
}
- get(url: string, params?: any): Observable<any> {
- return this.httpClient.get(url, params);
+ get(url: string, params?: {}): Observable<any> {
+ console.log('params', params);
+ let httpParams = new HttpParams();
+ for (const key in params) {
+ if (params.hasOwnProperty(key)) {
+ httpParams = httpParams.append(key, params[key]);
+ }
+ }
+ const options = {params: httpParams};
+ return this.httpClient.get(url, options);
}
post(url: string, body: any | null, options?: any): Observable<any> {
diff --git a/cds-ui/client-frankfurt/src/app/common/core/services/api.typed.service.ts b/cds-ui/client-frankfurt/src/app/common/core/services/api.typed.service.ts
new file mode 100644
index 000000000..2f3778c1a
--- /dev/null
+++ b/cds-ui/client-frankfurt/src/app/common/core/services/api.typed.service.ts
@@ -0,0 +1,51 @@
+/*
+============LICENSE_START==========================================
+===================================================================
+Copyright (C) 2018 IBM Intellectual Property. All rights reserved.
+
+Modifications Copyright (C) 2019 Orange
+
+===================================================================
+
+Unless otherwise specified, all software contained herein is licensed
+under the Apache License, Version 2.0 (the License);
+you may not use this software except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+============LICENSE_END============================================
+*/
+
+import { Injectable } from '@angular/core';
+import { HttpClient, HttpHeaders, HttpResponse, HttpHeaderResponse, HttpParams } from '@angular/common/http';
+import { Observable, of } from 'rxjs';
+
+@Injectable()
+export class ApiService<T> {
+
+ constructor(private httpClient: HttpClient) {
+ }
+
+ get(url: string, params?: {}): Observable<T[]> {
+ console.log('params', params);
+ let httpParams = new HttpParams();
+ for (const key in params) {
+ if (params.hasOwnProperty(key)) {
+ httpParams = httpParams.append(key, params[key]);
+ }
+ }
+ const options = {params: httpParams};
+ return this.httpClient.get<T[]>(url, options);
+ }
+
+ post(url: string, body: any | null, options?: any): Observable<any> {
+
+ return this.httpClient.post(url, body, options);
+ }
+}
diff --git a/cds-ui/client-frankfurt/src/app/common/core/stores/Store.ts b/cds-ui/client-frankfurt/src/app/common/core/stores/Store.ts
new file mode 100644
index 000000000..1d5b0afc1
--- /dev/null
+++ b/cds-ui/client-frankfurt/src/app/common/core/stores/Store.ts
@@ -0,0 +1,22 @@
+import {Observable, BehaviorSubject} from 'rxjs';
+import { Injectable } from '@angular/core';
+
+export class Store<T> {
+ state$: Observable<T>;
+ private subject: BehaviorSubject<T>;
+
+ protected constructor(initialState: T) {
+ this.subject = new BehaviorSubject(initialState);
+ this.state$ = this.subject.asObservable();
+ }
+
+ get state(): T {
+ return this.subject.getValue();
+ }
+
+ protected setState(nextState: T): void {
+ console.log('setting state', this.subject);
+ this.subject.next(nextState);
+ }
+
+}
diff --git a/cds-ui/client-frankfurt/src/app/common/model/page.ts b/cds-ui/client-frankfurt/src/app/common/model/page.ts
new file mode 100644
index 000000000..7c3a0c4f3
--- /dev/null
+++ b/cds-ui/client-frankfurt/src/app/common/model/page.ts
@@ -0,0 +1,21 @@
+export class Page<T> {
+ content: T[];
+ pageable: {
+ sort: {
+ unsorted: boolean,
+ sorted: boolean,
+ empty: boolean
+ };
+
+ offset: number,
+ pageSize: number,
+ pageNumber: number,
+ paged: boolean,
+ unpaged: boolean,
+ };
+ totalPages: number;
+ totalElements: number;
+ last: boolean;
+ first: boolean;
+ empty: boolean;
+}