Catalog alignment
[sdc.git] / catalog-ui / src / app / ng2 / services / http-hepler.service.ts
1 import { Injectable, Inject } from "@angular/core";
2 import { Dictionary } from "../../utils/dictionary/dictionary";
3 import { SharingService } from "../services/sharing.service";
4 import { SdcConfigToken, ISdcConfig } from "../config/sdc-config.config";
5
6
7 @Injectable()
8 export class HttpHelperService {
9     constructor( private sharingService: SharingService,
10         @Inject(SdcConfigToken) private sdcConfig: ISdcConfig){}
11     
12     public getUuidValue = (url: string): string => {
13         let map: Dictionary<string, string> = this.sharingService.getUuidMap();
14         if (map && url.indexOf(this.sdcConfig.api.root) > 0) {
15             map.forEach((key: string) => {
16                 if (url.indexOf(key) !== -1) {
17                     return this.sharingService.getUuidValue(key);
18                 }
19             });
20         }
21         return '';
22     }
23     public static replaceUrlParams(url: string, urlParams: { [index: string]: any }): string {
24         return url.replace(/:(\w+)/g, (m, p1): string => urlParams[p1] || '');
25     }
26     public static getHeaderMd5 = (object:any):string => {
27         let componentString:string = JSON.stringify(object);
28         let md5Result = md5(componentString).toLowerCase();
29         return btoa(md5Result);
30     };
31 }