當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript cache.InfrastructureCaches類代碼示例

本文整理匯總了TypeScript中core/cache.InfrastructureCaches的典型用法代碼示例。如果您正苦於以下問題:TypeScript InfrastructureCaches類的具體用法?TypeScript InfrastructureCaches怎麽用?TypeScript InfrastructureCaches使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了InfrastructureCaches類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: getAllSecurityGroups

 public getAllSecurityGroups(): IPromise<ISecurityGroupsByAccountSourceData> {
   // Because these are cached in local storage, we unfortunately need to remove the moniker, as it triples the size
   // of the object being stored, which blows out our LS quota for a sufficiently large footprint
   const cache = InfrastructureCaches.get('securityGroups');
   const cached = !!cache ? cache.get('allGroups') : null;
   if (cached) {
     return this.$q.resolve(cached);
   }
   return API.one('securityGroups')
     .useCache()
     .get()
     .then((groupsByAccount: ISecurityGroupsByAccountSourceData) => {
       Object.keys(groupsByAccount).forEach(account => {
         Object.keys(groupsByAccount[account]).forEach(provider => {
           Object.keys(groupsByAccount[account][provider]).forEach(region => {
             groupsByAccount[account][provider][region].forEach(group => {
               delete group.moniker;
             });
           });
         });
       });
       if (cache) {
         cache.put('allGroups', groupsByAccount);
       }
       return groupsByAccount;
     });
 }
開發者ID:mizzy,項目名稱:deck,代碼行數:27,代碼來源:securityGroupReader.service.ts

示例2: it

    it('should remove all items from the specified cache', () => {
      let cache = InfrastructureCaches.get('securityGroups');
      expect(cache).toBeUndefined();

      cacheInitializer.initialize().then(() => {
        cache = InfrastructureCaches.get('securityGroups');
        expect(cache).toBeDefined();
        expect(cache.keys().length).toBe(0);

        const key = 'myTestCacheKey';
        const value = 'myTestCacheValue';
        cache.put(key, value);

        expect(cache.keys().length).toBe(1);
        expect(cache.get(key)).toBe(value);

        cacheInitializer.refreshCache('securityGroups').then((result: any[]) => {
          expect(flatten(result)).toEqual(keys.sg);
          cache = InfrastructureCaches.get('securityGroups');
          expect(cache.keys().length).toBe(0);
        });
        initialized = true;
      });
      $root.$digest();
      expect(initialized).toBeTruthy();
    });
開發者ID:emjburns,項目名稱:deck,代碼行數:26,代碼來源:cacheInitializer.service.spec.ts

示例3: deleteLoadBalancer

  public static deleteLoadBalancer(command: ILoadBalancerDeleteCommand, application: Application): ng.IPromise<ITask> {
    command.type = 'deleteLoadBalancer';

    InfrastructureCaches.clearCache('loadBalancers');

    return TaskExecutor.executeTask({
      job: [command],
      application,
      description: `Delete load balancer: ${command.loadBalancerName}`,
    });
  }
開發者ID:emjburns,項目名稱:deck,代碼行數:11,代碼來源:loadBalancer.write.service.ts

示例4: clearCacheAndRetryAttachingSecurityGroups

  private clearCacheAndRetryAttachingSecurityGroups(
    application: Application,
    nameBasedSecurityGroups: ISecurityGroup[],
  ): IPromise<any[]> {
    InfrastructureCaches.clearCache('securityGroups');
    return this.loadSecurityGroups().then((refreshedSecurityGroups: ISecurityGroupsByAccount) => {
      application['securityGroupsIndex'] = refreshedSecurityGroups;

      return this.attachSecurityGroups(application, nameBasedSecurityGroups, false);
    });
  }
開發者ID:mizzy,項目名稱:deck,代碼行數:11,代碼來源:securityGroupReader.service.ts

示例5: upsertLoadBalancer

  public static upsertLoadBalancer(
    command: ILoadBalancerUpsertCommand,
    application: Application,
    descriptor: string,
    params: any = {},
  ): IPromise<ITask> {
    Object.assign(command, params);
    command.type = 'upsertLoadBalancer';

    InfrastructureCaches.clearCache('loadBalancers');

    return TaskExecutor.executeTask({
      job: [command],
      application,
      description: `${descriptor} Load Balancer: ${command['name']}`,
    });
  }
開發者ID:emjburns,項目名稱:deck,代碼行數:17,代碼來源:loadBalancer.write.service.ts

示例6: expect

      cacheInitializer.initialize().then(() => {
        cache = InfrastructureCaches.get('securityGroups');
        expect(cache).toBeDefined();
        expect(cache.keys().length).toBe(0);

        const key = 'myTestCacheKey';
        const value = 'myTestCacheValue';
        cache.put(key, value);

        expect(cache.keys().length).toBe(1);
        expect(cache.get(key)).toBe(value);

        cacheInitializer.refreshCache('securityGroups').then((result: any[]) => {
          expect(flatten(result)).toEqual(keys.sg);
          cache = InfrastructureCaches.get('securityGroups');
          expect(cache.keys().length).toBe(0);
        });
        initialized = true;
      });
開發者ID:emjburns,項目名稱:deck,代碼行數:19,代碼來源:cacheInitializer.service.spec.ts

示例7: beforeEach

 beforeEach(() => {
   InfrastructureCaches.destroyCaches();
 });
開發者ID:emjburns,項目名稱:deck,代碼行數:3,代碼來源:cacheInitializer.service.spec.ts

示例8: expect

 cacheInitializer.refreshCache('credentials').then((result: any[]) => {
   expect(flatten(result)).toEqual(keys.account);
   cache = InfrastructureCaches.get('credentials');
   expect(cache.keys().length).toBe(0);
 });
開發者ID:mizzy,項目名稱:deck,代碼行數:5,代碼來源:cacheInitializer.service.spec.ts

示例9: listNetworksByProvider

 public static listNetworksByProvider(cloudProvider: string) {
   return API.one('networks')
     .one(cloudProvider)
     .useCache(InfrastructureCaches.get('networks'))
     .getList();
 }
開發者ID:mizzy,項目名稱:deck,代碼行數:6,代碼來源:NetworkReader.ts


注:本文中的core/cache.InfrastructureCaches類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。