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


TypeScript core.Application類代碼示例

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


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

示例1: onTaskComplete

 public onTaskComplete(loadBalancer: IGceLoadBalancer): void {
   InfrastructureCaches.clearCache('healthCheck');
   this.application.getDataSource('loadBalancers').refresh();
   this.application
     .getDataSource('loadBalancers')
     .onNextRefresh(this.$scope, () => this.onApplicationRefresh(loadBalancer));
 }
開發者ID:mizzy,項目名稱:deck,代碼行數:7,代碼來源:commonLoadBalancer.controller.ts

示例2: populateTargetGroups

 public static populateTargetGroups(
   application: Application,
   serverGroup: IAmazonServerGroup,
 ): IPromise<ITargetGroup[]> {
   return $q
     .all([AccountService.getAccountDetails(serverGroup.account), application.getDataSource('loadBalancers').ready()])
     .then(data => {
       const awsAccount = (data[0] && data[0].awsAccount) || serverGroup.account;
       const loadBalancers: IAmazonApplicationLoadBalancer[] = application
         .getDataSource('loadBalancers')
         .data.filter(
           lb => lb.loadBalancerType === 'application' || lb.loadBalancerType === 'network',
         ) as IAmazonApplicationLoadBalancer[];
       const targetGroups = serverGroup.targetGroups
         .map((targetGroupName: string) => {
           const allTargetGroups = flatten(loadBalancers.map(lb => lb.targetGroups || []));
           const targetGroup = allTargetGroups.find(
             tg => tg.name === targetGroupName && tg.region === serverGroup.region && tg.account === awsAccount,
           );
           return this.buildTargetGroup(targetGroup, serverGroup);
         })
         .filter(tg => tg);
       return targetGroups;
     });
 }
開發者ID:emjburns,項目名稱:deck,代碼行數:25,代碼來源:amazonLoadBalancerDataUtils.ts

示例3: flatten

 return application.getDataSource('loadBalancers').ready().then(() => {
   const loadBalancers: IAmazonApplicationLoadBalancer[] = application.getDataSource('loadBalancers').data.filter((lb) => lb.loadBalancerType === 'application' || lb.loadBalancerType === 'network') as IAmazonApplicationLoadBalancer[];
   const targetGroups = serverGroup.targetGroups.map((targetGroupName: string) => {
     const allTargetGroups = flatten(loadBalancers.map((lb) => lb.targetGroups || []));
     const targetGroup = allTargetGroups.find((tg) => tg.name === targetGroupName);
     return this.buildTargetGroup(targetGroup, serverGroup);
   }).filter((tg) => tg);
   return targetGroups;
 });
開發者ID:robfletcher,項目名稱:deck,代碼行數:9,代碼來源:amazonLoadBalancerDataUtils.ts

示例4: populateTargetGroups

 public static populateTargetGroups(application: Application, serverGroup: IAmazonServerGroup): IPromise<ITargetGroup[]> {
   return application.getDataSource('loadBalancers').ready().then(() => {
     const loadBalancers: IAmazonApplicationLoadBalancer[] = application.getDataSource('loadBalancers').data.filter((lb) => lb.loadBalancerType === 'application') as IAmazonApplicationLoadBalancer[];
     const targetGroups = serverGroup.targetGroups.map((targetGroupName: string) => {
       const allTargetGroups = flatten(loadBalancers.map((lb) => lb.targetGroups || []));
       const targetGroup = allTargetGroups.find((tg) => tg.name === targetGroupName);
       return this.buildTargetGroup(targetGroup, serverGroup);
     });
     return targetGroups;
   });
 }
開發者ID:jcwest,項目名稱:deck,代碼行數:11,代碼來源:amazonLoadBalancerDataUtils.ts

示例5: convertLoadBalancerForEditing

  public convertLoadBalancerForEditing(loadBalancer: IAppengineLoadBalancer,
                                       application: Application): ng.IPromise<IAppengineLoadBalancer> {
    return application.getDataSource('loadBalancers').ready().then(() => {
      const upToDateLoadBalancer = application.getDataSource('loadBalancers').data.find((candidate: ILoadBalancer) => {
        return candidate.name === loadBalancer.name &&
          (candidate.account === loadBalancer.account || candidate.account === loadBalancer.credentials);
      });

      if (upToDateLoadBalancer) {
        loadBalancer.serverGroups = cloneDeep(upToDateLoadBalancer.serverGroups);
      }
      return loadBalancer;
    });
  }
開發者ID:robfletcher,項目名稱:deck,代碼行數:14,代碼來源:transformer.ts

示例6: flatten

 .then(data => {
   const awsAccount = (data[0] && data[0].awsAccount) || serverGroup.account;
   const loadBalancers: IAmazonApplicationLoadBalancer[] = application
     .getDataSource('loadBalancers')
     .data.filter(
       lb => lb.loadBalancerType === 'application' || lb.loadBalancerType === 'network',
     ) as IAmazonApplicationLoadBalancer[];
   const targetGroups = serverGroup.targetGroups
     .map((targetGroupName: string) => {
       const allTargetGroups = flatten(loadBalancers.map(lb => lb.targetGroups || []));
       const targetGroup = allTargetGroups.find(
         tg => tg.name === targetGroupName && tg.region === serverGroup.region && tg.account === awsAccount,
       );
       return this.buildTargetGroup(targetGroup, serverGroup);
     })
     .filter(tg => tg);
   return targetGroups;
 });
開發者ID:emjburns,項目名稱:deck,代碼行數:18,代碼來源:amazonLoadBalancerDataUtils.ts

示例7: makeManifestRefresher

 public makeManifestRefresher(app: Application, $scope: IScope, params: IManifestParams, container: IManifestContainer) {
   this.updateManifest(params, container);
   app.onRefresh($scope, () => this.updateManifest(params, container));
 }
開發者ID:robfletcher,項目名稱:deck,代碼行數:4,代碼來源:manifest.service.ts

示例8:

 mock.inject(($q: IQService, $rootScope: IScope) => {
   const $scope = $rootScope.$new();
   // The application model implicitly depends on a bunch of Angular things, which is why
   // we need the Angular mock environment (even though we're testing a React component).
   application = ApplicationModelBuilder.createApplicationForTests(
     'app',
     {
       key: 'serverGroups',
       loader: () =>
         $q.resolve([
           // Replica sets in same cluster, no manager.
           {
             name: 'replicaSet my-replicaSet-v002',
             region: 'default',
             category: 'serverGroup',
             account: 'my-k8s-account',
             cloudProvider: 'kubernetes',
             cluster: 'replicaSet my-replicaSet',
           },
           {
             name: 'replicaSet my-replicaSet-v001',
             region: 'default',
             category: 'serverGroup',
             account: 'my-k8s-account',
             cloudProvider: 'kubernetes',
             cluster: 'replicaSet my-replicaSet',
           },
           // Replica set managed by deployment.
           {
             name: 'replicaSet my-managed-replicaSet-v001',
             region: 'default',
             category: 'serverGroup',
             account: 'my-k8s-account',
             cloudProvider: 'kubernetes',
             cluster: 'deployment my-deployment',
             serverGroupManagers: [{ name: 'deployment my-deployment' }],
           },
         ]),
       onLoad: (_app: Application, data: any) => $q.resolve(data),
     },
     {
       key: 'serverGroupManagers',
       loader: () =>
         $q.resolve([
           {
             name: 'deployment my-deployment',
             region: 'default',
             account: 'my-k8s-account',
             cloudProvider: 'kubernetes',
           },
         ]),
       onLoad: (_app: Application, data: any) => $q.resolve(data),
     },
     {
       key: 'securityGroups',
       loader: () => $q.resolve([]),
       onLoad: (_app: Application, data: any) => $q.resolve(data),
     },
     {
       key: 'loadBalancers',
       loader: () => $q.resolve([]),
       onLoad: (_app: Application, data: any) => $q.resolve(data),
     },
   );
   application.refresh();
   $scope.$digest();
 }),
開發者ID:emjburns,項目名稱:deck,代碼行數:67,代碼來源:ManifestCopier.spec.ts

示例9: cloneDeep

    return application.getDataSource('loadBalancers').ready().then(() => {
      const upToDateLoadBalancer = application.getDataSource('loadBalancers').data.find((candidate: ILoadBalancer) => {
        return candidate.name === loadBalancer.name &&
          (candidate.account === loadBalancer.account || candidate.account === loadBalancer.credentials);
      });

      if (upToDateLoadBalancer) {
        loadBalancer.serverGroups = cloneDeep(upToDateLoadBalancer.serverGroups);
      }
      return loadBalancer;
    });
開發者ID:robfletcher,項目名稱:deck,代碼行數:11,代碼來源:transformer.ts

示例10: get

 return this.application.ready().then(() => {
   this.application.getDataSource('serverGroups').data.forEach((serverGroup: IServerGroup) => {
     if (has(serverGroup, 'providerMetadata.tags.length') &&
         serverGroup.account === this.account &&
         get(serverGroup, 'providerMetadata.networkName') === this.network) {
       serverGroup.providerMetadata.tags.forEach((tag: string) => {
         if (!this.serverGroupsIndexedByTag.get(tag)) {
           this.serverGroupsIndexedByTag.set(tag, new Set<string>([serverGroup.name]));
         } else {
           this.serverGroupsIndexedByTag.get(tag).add(serverGroup.name);
         }
       });
     }
   });
 });
開發者ID:jcwest,項目名稱:deck,代碼行數:15,代碼來源:securityGroupHelpText.service.ts


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