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


TypeScript applicationDataSource.registry.ApplicationDataSourceRegistry类代码示例

本文整理汇总了TypeScript中core/application/service/applicationDataSource.registry.ApplicationDataSourceRegistry的典型用法代码示例。如果您正苦于以下问题:TypeScript registry.ApplicationDataSourceRegistry类的具体用法?TypeScript registry.ApplicationDataSourceRegistry怎么用?TypeScript registry.ApplicationDataSourceRegistry使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了registry.ApplicationDataSourceRegistry类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: addTags

]).run(($q: IQService, applicationDataSourceRegistry: ApplicationDataSourceRegistry, loadBalancerReader: LoadBalancerReader, entityTagsReader: EntityTagsReader) => {
  const loadLoadBalancers = (application: Application) => {
    return loadBalancerReader.loadLoadBalancers(application.name);
  };

  const addLoadBalancers = (_application: Application, loadBalancers: ILoadBalancer[]) => {
    return addTags(loadBalancers);
  };

  const addTags = (loadBalancers: ILoadBalancer[]) => {
    if (!SETTINGS.feature.entityTags) {
      return $q.when(loadBalancers);
    }
    const entityIds = loadBalancers.map(lb => lb.name);
    return entityTagsReader.getAllEntityTags('loadBalancer', entityIds).then(tags => {
      loadBalancers.forEach(loadBalancer => {
        loadBalancer.entityTags = tags.find(t => t.entityRef.entityId === loadBalancer.name &&
        t.entityRef.account === loadBalancer.account &&
        t.entityRef.region === loadBalancer.region);
      });
      return loadBalancers;
    });
  };

  applicationDataSourceRegistry.registerDataSource(new DataSourceConfig({
    key: 'loadBalancers',
    optional: true,
    loader: loadLoadBalancers,
    onLoad: addLoadBalancers,
    providerField: 'cloudProvider',
    credentialsField: 'account',
    regionField: 'region',
    description: 'Traffic distribution management between servers'
  }));
});
开发者ID:jcwest,项目名称:deck,代码行数:35,代码来源:loadBalancer.dataSource.ts

示例2:

  .run((applicationDataSourceRegistry: ApplicationDataSourceRegistry,
        securityGroupReader: SecurityGroupReader,
        entityTagsReader: EntityTagsReader) => {

    const loadSecurityGroups = (application: Application) => {
      return securityGroupReader.loadSecurityGroupsByApplicationName(application.name);
    };

    const addSecurityGroups = (application: Application, securityGroups: ISecurityGroup[]) => {
      return securityGroupReader.getApplicationSecurityGroups(application, securityGroups);
    };

    const addTags = (application: Application) => {
      return entityTagsReader.addTagsToSecurityGroups(application);
    };

    applicationDataSourceRegistry.registerDataSource({
      key: 'securityGroups',
      optional: true,
      loader: loadSecurityGroups,
      onLoad: addSecurityGroups,
      afterLoad: addTags,
      providerField: 'provider',
      credentialsField: 'accountName',
      regionField: 'region',
      description: 'Network traffic access management'
    });
  });
开发者ID:robfletcher,项目名称:deck,代码行数:28,代码来源:securityGroup.dataSource.ts

示例3: require

  .run((cloudProviderRegistry: CloudProviderRegistry,
        applicationDataSourceRegistry: ApplicationDataSourceRegistry) => {

    if (NetflixSettings.feature.netflixMode) {
      cloudProviderRegistry.overrideValue(
        'aws',
        'instance.detailsTemplateUrl',
        require('./instance/aws/instanceDetails.html')
      );
      cloudProviderRegistry.overrideValue(
        'aws',
        'instance.detailsController',
        'netflixAwsInstanceDetailsCtrl'
      );
      cloudProviderRegistry.overrideValue(
        'aws',
        'serverGroup.detailsTemplateUrl',
        require('./serverGroup/awsServerGroupDetails.html')
      );
      cloudProviderRegistry.overrideValue(
        'titus',
        'instance.detailsTemplateUrl',
        require('./instance/titus/instanceDetails.html')
      );
      cloudProviderRegistry.overrideValue(
        'titus',
        'instance.detailsController',
        'netflixTitusInstanceDetailsCtrl'
      );
      applicationDataSourceRegistry.setDataSourceOrder([
        'ci', 'executions', 'serverGroups', 'loadBalancers', 'securityGroups', 'properties', 'analytics', 'tasks', 'config'
      ]);
    }
  });
开发者ID:brujoand,项目名称:deck,代码行数:34,代码来源:netflix.module.ts

示例4:

]).run(($q: IQService, applicationDataSourceRegistry: ApplicationDataSourceRegistry, loadBalancerReader: LoadBalancerReader, entityTagsReader: EntityTagsReader) => {
  const loadLoadBalancers = (application: Application) => {
    return loadBalancerReader.loadLoadBalancers(application.name);
  };

  const addLoadBalancers = (_application: Application, loadBalancers: ILoadBalancer[]) => {
    return $q.when(loadBalancers);
  };

  const addTags = (application: Application) => {
    entityTagsReader.addTagsToLoadBalancers(application);
  };

  applicationDataSourceRegistry.registerDataSource({
    key: 'loadBalancers',
    optional: true,
    loader: loadLoadBalancers,
    onLoad: addLoadBalancers,
    afterLoad: addTags,
    providerField: 'cloudProvider',
    credentialsField: 'account',
    regionField: 'region',
    description: 'Traffic distribution management between servers'
  });
});
开发者ID:robfletcher,项目名称:deck,代码行数:25,代码来源:loadBalancer.dataSource.ts

示例5:

]).run(($q: IQService, applicationDataSourceRegistry: ApplicationDataSourceRegistry, entityTagsReader: EntityTagsReader) => {
  if (!SETTINGS.feature.entityTags) {
    return;
  }
  const loadEntityTags = (application: Application) => {
    return entityTagsReader.getAllEntityTagsForApplication(application.name);
  };

  const addEntityTags = (_application: Application, data: IEntityTags[]) => {
    return $q.when(data);
  };

  const addTagsToEntities = (application: Application) => {
    application.getDataSource('serverGroups').ready().then(() => entityTagsReader.addTagsToServerGroups(application), noop);
    application.getDataSource('loadBalancers').ready().then(() => entityTagsReader.addTagsToLoadBalancers(application), noop);
    application.getDataSource('securityGroups').ready().then(() => entityTagsReader.addTagsToSecurityGroups(application), noop);
  };

  applicationDataSourceRegistry.registerDataSource({
    key: 'entityTags',
    visible: false,
    loader: loadEntityTags,
    onLoad: addEntityTags,
    afterLoad: addTagsToEntities,
  });
});
开发者ID:robfletcher,项目名称:deck,代码行数:26,代码来源:entityTags.dataSource.ts

示例6: DataSourceConfig

 .run((applicationDataSourceRegistry: ApplicationDataSourceRegistry) => {
   if (NetflixSettings.feature.tableau) {
     applicationDataSourceRegistry.registerDataSource(new DataSourceConfig({
       key: 'analytics',
       sref: '.analytics',
       optIn: true,
       optional: true,
       description: 'Pipeline and task statistics'
     }));
   }
 });
开发者ID:brujoand,项目名称:deck,代码行数:11,代码来源:tableau.dataSource.ts


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