From 0e4a401e7f909cfcd839cc016713d9502d6e59f4 Mon Sep 17 00:00:00 2001 From: Eugenio Romano Date: Mon, 11 Jul 2016 16:58:15 +0100 Subject: [PATCH] integrate search new javascript api --- .../src/interface/authentication.interface.ts | 1 + .../src/services/AlfrescoAuthenticationBase.service.ts | 2 ++ .../services/AlfrescoAuthenticationService.service.ts | 8 ++++++-- .../src/services/AlfrescoContentService.spec.ts | 10 ++++++---- .../src/services/AlfrescoSettingsService.spec.ts | 7 ------- ng2-components/ng2-alfresco-search/demo/src/main.ts | 2 +- .../src/services/alfresco-search.service.ts | 2 +- 7 files changed, 17 insertions(+), 15 deletions(-) diff --git a/ng2-components/ng2-alfresco-core/src/interface/authentication.interface.ts b/ng2-components/ng2-alfresco-core/src/interface/authentication.interface.ts index 8d274a1b56..c12c7dbe0a 100644 --- a/ng2-components/ng2-alfresco-core/src/interface/authentication.interface.ts +++ b/ng2-components/ng2-alfresco-core/src/interface/authentication.interface.ts @@ -19,6 +19,7 @@ import { Observable } from 'rxjs/Rx'; export interface AbstractAuthentication { TYPE: string; + alfrescoApi: any; login(username: string, password: string): Observable; diff --git a/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationBase.service.ts b/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationBase.service.ts index ef278a3127..988cf46a6a 100644 --- a/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationBase.service.ts +++ b/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationBase.service.ts @@ -23,6 +23,8 @@ declare let AlfrescoApi: any; export class AlfrescoAuthenticationBase { + alfrescoApi: any; + private _authUrl: string = '/alfresco/api/-default-/public/authentication/versions/1'; private alfrescoSetting: AlfrescoSettingsService; /** diff --git a/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationService.service.ts b/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationService.service.ts index b91ce885e6..5da51062af 100644 --- a/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationService.service.ts +++ b/ng2-components/ng2-alfresco-core/src/services/AlfrescoAuthenticationService.service.ts @@ -99,7 +99,7 @@ export class AlfrescoAuthenticationService extends AlfrescoAuthenticationBase { } /** - * The method return tru if the user is logged in + * The method return true if the user is logged in * @returns {boolean} */ isLoggedIn(type: string = 'ECM'): boolean { @@ -110,6 +110,10 @@ export class AlfrescoAuthenticationService extends AlfrescoAuthenticationBase { return false; } + getAlfrescoApi(): any { + return this.findProviderInstance('ECM').alfrescoApi; + } + /** * Return the token stored in the localStorage of the specific provider type * @param token @@ -198,7 +202,7 @@ export class AlfrescoAuthenticationService extends AlfrescoAuthenticationBase { let auth: AbstractAuthentication = null; if (this.providersInstance && this.providersInstance.length !== 0) { this.providersInstance.forEach((provider) => { - if (provider.TYPE === type) { + if (provider.TYPE === type.toUpperCase()) { auth = provider; } }); diff --git a/ng2-components/ng2-alfresco-core/src/services/AlfrescoContentService.spec.ts b/ng2-components/ng2-alfresco-core/src/services/AlfrescoContentService.spec.ts index 1d704db753..0537dc364c 100644 --- a/ng2-components/ng2-alfresco-core/src/services/AlfrescoContentService.spec.ts +++ b/ng2-components/ng2-alfresco-core/src/services/AlfrescoContentService.spec.ts @@ -26,6 +26,8 @@ describe('AlfrescoContentService', () => { let injector, service: AlfrescoContentService, authService: AlfrescoAuthenticationService; const nodeId = 'blah'; + let DEFAULT_CONTEXT_PATH: string = '/alfresco'; + let DEFAULT_BASE_API_PATH: string = '/api/-default-/public/alfresco/versions/1'; beforeEach(() => { injector = ReflectiveInjector.resolveAndCreate([ @@ -47,8 +49,8 @@ describe('AlfrescoContentService', () => { id: nodeId } })).toBe( - AlfrescoSettingsService.DEFAULT_HOST_ADDRESS + AlfrescoSettingsService.DEFAULT_CONTEXT_PATH + - AlfrescoSettingsService.DEFAULT_BASE_API_PATH + '/nodes/' + nodeId + '/content' + + AlfrescoSettingsService.DEFAULT_HOST_ADDRESS + DEFAULT_CONTEXT_PATH + + DEFAULT_BASE_API_PATH + '/nodes/' + nodeId + '/content' + '?attachment=false&alf_ticket=' + authService.getTicket() ); }); @@ -59,8 +61,8 @@ describe('AlfrescoContentService', () => { id: nodeId } })).toBe( - AlfrescoSettingsService.DEFAULT_HOST_ADDRESS + AlfrescoSettingsService.DEFAULT_CONTEXT_PATH + - AlfrescoSettingsService.DEFAULT_BASE_API_PATH + '/nodes/' + nodeId + '/renditions/doclib/content' + + AlfrescoSettingsService.DEFAULT_HOST_ADDRESS + DEFAULT_CONTEXT_PATH + + DEFAULT_BASE_API_PATH + '/nodes/' + nodeId + '/renditions/doclib/content' + '?attachment=false&alf_ticket=' + authService.getTicket() ); }); diff --git a/ng2-components/ng2-alfresco-core/src/services/AlfrescoSettingsService.spec.ts b/ng2-components/ng2-alfresco-core/src/services/AlfrescoSettingsService.spec.ts index bcc8dd5f0c..b3f61dde03 100644 --- a/ng2-components/ng2-alfresco-core/src/services/AlfrescoSettingsService.spec.ts +++ b/ng2-components/ng2-alfresco-core/src/services/AlfrescoSettingsService.spec.ts @@ -37,11 +37,4 @@ describe('AlfrescoSettingsService', () => { expect(service.host).toBe(address); }); - it('should format api url', () => { - let address = 'http://192.168.0.1'; - let expectedUrl = - `${address}${AlfrescoSettingsService.DEFAULT_CONTEXT_PATH}${AlfrescoSettingsService.DEFAULT_BASE_API_PATH}`; - service.host = address; - expect(service.getApiBaseUrl()).toBe(expectedUrl); - }); }); diff --git a/ng2-components/ng2-alfresco-search/demo/src/main.ts b/ng2-components/ng2-alfresco-search/demo/src/main.ts index 9acd7c8f09..719d61e450 100644 --- a/ng2-components/ng2-alfresco-search/demo/src/main.ts +++ b/ng2-components/ng2-alfresco-search/demo/src/main.ts @@ -81,7 +81,7 @@ class SearchDemo implements OnInit { } login() { - this.authService.login('admin', 'admin').subscribe( + this.authService.login('admin', 'admin', ['ECM']).subscribe( token => { console.log(token); this.token = token; diff --git a/ng2-components/ng2-alfresco-search/src/services/alfresco-search.service.ts b/ng2-components/ng2-alfresco-search/src/services/alfresco-search.service.ts index 3913feb255..f248e4d553 100644 --- a/ng2-components/ng2-alfresco-search/src/services/alfresco-search.service.ts +++ b/ng2-components/ng2-alfresco-search/src/services/alfresco-search.service.ts @@ -40,7 +40,7 @@ export class AlfrescoSearchService { rootNodeId: nodeId, nodeType: 'cm:content' }; - return this.authService.alfrescoApi.search.liveSearchNodes(term, opts); + return this.authService.getAlfrescoApi().search.liveSearchNodes(term, opts); } /**