当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript Application.getDataSource方法代码示例

本文整理汇总了TypeScript中@spinnaker/core.Application.getDataSource方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Application.getDataSource方法的具体用法?TypeScript Application.getDataSource怎么用?TypeScript Application.getDataSource使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在@spinnaker/core.Application的用法示例。


在下文中一共展示了Application.getDataSource方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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: 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

示例6: 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

示例7: 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

示例8: 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


注:本文中的@spinnaker/core.Application.getDataSource方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。