org.jclouds.compute.functions.GroupNamingConvention.containsGroup()方法的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(17.4k)|赞(0)|评价(0)|浏览(86)

本文整理了Java中org.jclouds.compute.functions.GroupNamingConvention.containsGroup()方法的一些代码示例,展示了GroupNamingConvention.containsGroup()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。GroupNamingConvention.containsGroup()方法的具体详情如下:
包路径:org.jclouds.compute.functions.GroupNamingConvention
类名称:GroupNamingConvention
方法名:containsGroup

GroupNamingConvention.containsGroup介绍

[英]A predicate that identifies if an input has the given group encoded in it.
[中]一种谓词,标识输入中是否编码了给定的组。

代码示例

代码示例来源:origin: jclouds/legacy-jclouds

private void cleanupOrphanedSecurityGroupsInZone(Set<String> groups, String zoneId) {
 Optional<? extends SecurityGroupApi> securityGroupApi = novaApi.getSecurityGroupExtensionForZone(zoneId);
 if (securityGroupApi.isPresent()) {
   for (String group : groups) {
    for (SecurityGroup securityGroup : Iterables.filter(securityGroupApi.get().list(),
         SecurityGroupPredicates.nameMatches(namingConvention.create().containsGroup(group)))) {
      ZoneAndName zoneAndName = ZoneAndName.fromZoneAndName(zoneId, securityGroup.getName());
      logger.debug(">> deleting securityGroup(%s)", zoneAndName);
      securityGroupApi.get().delete(securityGroup.getId());
      // TODO: test this clear happens
      securityGroupMap.invalidate(zoneAndName);
      logger.debug("<< deleted securityGroup(%s)", zoneAndName);
    }
   }
 }
}

代码示例来源:origin: org.jclouds.api/openstack-nova

private void cleanupOrphanedSecurityGroupsInZone(Set<String> groups, String zoneId) {
 Optional<? extends SecurityGroupApi> securityGroupApi = novaApi.getSecurityGroupExtensionForZone(zoneId);
 if (securityGroupApi.isPresent()) {
   for (String group : groups) {
    for (SecurityGroup securityGroup : Iterables.filter(securityGroupApi.get().list(),
         SecurityGroupPredicates.nameMatches(namingConvention.create().containsGroup(group)))) {
      ZoneAndName zoneAndName = ZoneAndName.fromZoneAndName(zoneId, securityGroup.getName());
      logger.debug(">> deleting securityGroup(%s)", zoneAndName);
      securityGroupApi.get().delete(securityGroup.getId());
      // TODO: test this clear happens
      securityGroupMap.invalidate(zoneAndName);
      logger.debug("<< deleted securityGroup(%s)", zoneAndName);
    }
   }
 }
}

代码示例来源:origin: io.cloudsoft.jclouds.api/openstack-nova

private void cleanupOrphanedSecurityGroupsInZone(Set<String> groups, String zoneId) {
 Optional<? extends SecurityGroupApi> securityGroupApi = novaApi.getSecurityGroupExtensionForZone(zoneId);
 if (securityGroupApi.isPresent()) {
   for (String group : groups) {
    for (SecurityGroup securityGroup : Iterables.filter(securityGroupApi.get().list(),
         SecurityGroupPredicates.nameMatches(namingConvention.create().containsGroup(group)))) {
      ZoneAndName zoneAndName = ZoneAndName.fromZoneAndName(zoneId, securityGroup.getName());
      logger.debug(">> deleting securityGroup(%s)", zoneAndName);
      securityGroupApi.get().delete(securityGroup.getId());
      // TODO: test this clear happens
      securityGroupMap.invalidate(zoneAndName);
      logger.debug("<< deleted securityGroup(%s)", zoneAndName);
    }
   }
 }
}

代码示例来源:origin: jclouds/legacy-jclouds

public void testPropertyChangesDelimiter() {
 GroupNamingConvention fn = Guice.createInjector(new AbstractModule() {
   @Override
   protected void configure() {
    bindConstant().annotatedWith(Names.named(RESOURCENAME_DELIMITER)).to('#');
   }
 }).getInstance(GroupNamingConvention.Factory.class).create();
 assertEquals(fn.sharedNameForGroup("cluster"), "jclouds#cluster");
 assertEquals(fn.groupInSharedNameOrNull("jclouds#cluster"), "cluster");
 assertEquals(fn.groupInUniqueNameOrNull("jclouds#cluster"), null);
 assertTrue(fn.containsGroup("cluster").apply("jclouds#cluster"));
}

代码示例来源:origin: apache/jclouds

public void testPropertyChangesDelimiter() {
 GroupNamingConvention fn = Guice.createInjector(new AbstractModule() {
   @Override
   protected void configure() {
    bindConstant().annotatedWith(Names.named(RESOURCENAME_DELIMITER)).to('#');
   }
 }).getInstance(GroupNamingConvention.Factory.class).create();
 assertEquals(fn.sharedNameForGroup("cluster"), "jclouds#cluster");
 assertEquals(fn.groupInSharedNameOrNull("jclouds#cluster"), "cluster");
 assertEquals(fn.groupInUniqueNameOrNull("jclouds#cluster"), null);
 assertTrue(fn.containsGroup("cluster").apply("jclouds#cluster"));
}

代码示例来源:origin: apache/jclouds

public void testPropertyChangesPrefix() {
 GroupNamingConvention fn = Guice.createInjector(new AbstractModule() {
   @Override
   protected void configure() {
    bindConstant().annotatedWith(Names.named(RESOURCENAME_PREFIX)).to("kclouds");
   }
 }).getInstance(GroupNamingConvention.Factory.class).create();
 assertEquals(fn.sharedNameForGroup("cluster"), "kclouds-cluster");
 assertEquals(fn.groupInSharedNameOrNull("kclouds-cluster"), "cluster");
 assertEquals(fn.groupInUniqueNameOrNull("kclouds-cluster"), null);
 assertTrue(fn.containsGroup("cluster").apply("kclouds-cluster"));
}

代码示例来源:origin: jclouds/legacy-jclouds

public void testPropertyChangesPrefix() {
 GroupNamingConvention fn = Guice.createInjector(new AbstractModule() {
   @Override
   protected void configure() {
    bindConstant().annotatedWith(Names.named(RESOURCENAME_PREFIX)).to("kclouds");
   }
 }).getInstance(GroupNamingConvention.Factory.class).create();
 assertEquals(fn.sharedNameForGroup("cluster"), "kclouds-cluster");
 assertEquals(fn.groupInSharedNameOrNull("kclouds-cluster"), "cluster");
 assertEquals(fn.groupInUniqueNameOrNull("kclouds-cluster"), null);
 assertTrue(fn.containsGroup("cluster").apply("kclouds-cluster"));
}

代码示例来源:origin: apache/jclouds

@VisibleForTesting
void deleteKeyPair(String region, String group) {
 for (KeyPair keyPair : client.getKeyPairApi().get().describeKeyPairsInRegionWithFilter(region,
     ImmutableMultimap.<String, String>builder()
         .put("key-name", String.format("jclouds#%s#*", group).replace('#', delimiter))
         .build())) {
   String keyName = keyPair.getKeyName();
   Predicate<String> keyNameMatcher = namingConvention.create().containsGroup(group);
   String oldKeyNameRegex = String.format("jclouds#%s#%s#%s", group, region, "[0-9a-f]+").replace('#', delimiter);
   // old keypair pattern too verbose as it has an unnecessary region qualifier
   if (keyNameMatcher.apply(keyName) || keyName.matches(oldKeyNameRegex)) {
    Set<String> instancesUsingKeyPair = extractIdsFromInstances(concat(client.getInstanceApi().get()
       .describeInstancesInRegionWithFilter(region, ImmutableMultimap.<String, String>builder()
           .put("instance-state-name", InstanceState.TERMINATED.toString())
           .put("instance-state-name", InstanceState.SHUTTING_DOWN.toString())
           .put("key-name", keyPair.getKeyName()).build())));
    if (!instancesUsingKeyPair.isEmpty()) {
      logger.debug("<< inUse keyPair(%s), by (%s)", keyPair.getKeyName(), instancesUsingKeyPair);
    } else {
      logger.debug(">> deleting keyPair(%s)", keyPair.getKeyName());
      client.getKeyPairApi().get().deleteKeyPairInRegion(region, keyPair.getKeyName());
      // TODO: test this clear happens
      credentialsMap.remove(new RegionAndName(region, keyPair.getKeyName()));
      credentialsMap.remove(new RegionAndName(region, group));
      logger.debug("<< deleted keyPair(%s)", keyPair.getKeyName());
    }
   }
 }
}

代码示例来源:origin: jclouds/legacy-jclouds

private void cleanupOrphanedKeyPairsInZone(Set<String> groups, String zoneId) {
 Optional<? extends KeyPairApi> keyPairApi = novaApi.getKeyPairExtensionForZone(zoneId);
 if (keyPairApi.isPresent()) {
   for (String group : groups) {
    for (KeyPair pair : keyPairApi.get().list().filter(nameMatches(namingConvention.create().containsGroup(group)))) {
      ZoneAndName zoneAndName = ZoneAndName.fromZoneAndName(zoneId, pair.getName());
      logger.debug(">> deleting keypair(%s)", zoneAndName);
      keyPairApi.get().delete(pair.getName());
      // TODO: test this clear happens
      keyPairCache.invalidate(zoneAndName);
      logger.debug("<< deleted keypair(%s)", zoneAndName);
    }
    keyPairCache.invalidate(ZoneAndName.fromZoneAndName(zoneId,
         namingConvention.create().sharedNameForGroup(group)));
   }
 }
}

代码示例来源:origin: io.cloudsoft.jclouds.api/openstack-nova

private void cleanupOrphanedKeyPairsInZone(Set<String> groups, String zoneId) {
 Optional<? extends KeyPairApi> keyPairApi = novaApi.getKeyPairExtensionForZone(zoneId);
 if (keyPairApi.isPresent()) {
   for (String group : groups) {
    for (KeyPair pair : keyPairApi.get().list().filter(nameMatches(namingConvention.create().containsGroup(group)))) {
      ZoneAndName zoneAndName = ZoneAndName.fromZoneAndName(zoneId, pair.getName());
      logger.debug(">> deleting keypair(%s)", zoneAndName);
      keyPairApi.get().delete(pair.getName());
      // TODO: test this clear happens
      keyPairCache.invalidate(zoneAndName);
      logger.debug("<< deleted keypair(%s)", zoneAndName);
    }
    keyPairCache.invalidate(ZoneAndName.fromZoneAndName(zoneId,
         namingConvention.create().sharedNameForGroup(group)));
   }
 }
}

代码示例来源:origin: jclouds/legacy-jclouds

public void testCanChangeSuffixSupplier() {
 GroupNamingConvention fn = Guice.createInjector(new AbstractModule() {
   @Override
   protected void configure() {
    bind(new TypeLiteral<Supplier<String>>() {
    }).toInstance(Suppliers.ofInstance("foo"));
   }
 }).getInstance(GroupNamingConvention.Factory.class).create();
 assertEquals(fn.uniqueNameForGroup("cluster"), "jclouds-cluster-foo");
 // note accidental treatment of a unique node as a shared one can lead to 
 // incorrect group names, as long as we permit delimiter to be in group name
 assertEquals(fn.groupInSharedNameOrNull("jclouds-cluster-foo"), "cluster-foo");
 assertEquals(fn.groupInUniqueNameOrNull("jclouds-cluster-foo"), "cluster");
 assertTrue(fn.containsGroup("cluster").apply("jclouds-cluster-foo"));
}

代码示例来源:origin: apache/jclouds

private void cleanupOrphanedSecurityGroupsInZone(Set<String> groups, String zoneId) {
 Zone zone = zoneIdToZone.get().getUnchecked(zoneId);
 if (supportsSecurityGroups().apply(zone)) {
   for (String group : groups) {
    for (SecurityGroup securityGroup : Iterables.filter(client.getSecurityGroupApi().listSecurityGroups(),
         SecurityGroupPredicates.nameMatches(namingConvention.create().containsGroup(group)))) {
      ZoneAndName zoneAndName = ZoneAndName.fromZoneAndName(zoneId, securityGroup.getName());
      logger.debug(">> deleting securityGroup(%s)", zoneAndName);
      client.getSecurityGroupApi().deleteSecurityGroup(securityGroup.getId());
      // TODO: test this clear happens
      securityGroupMap.invalidate(zoneAndName);
      logger.debug("<< deleted securityGroup(%s)", zoneAndName);
    }
   }
 }
}

代码示例来源:origin: org.jclouds.api/openstack-nova

private void cleanupOrphanedKeyPairsInZone(Set<String> groups, String zoneId) {
 Optional<? extends KeyPairApi> keyPairApi = novaApi.getKeyPairExtensionForZone(zoneId);
 if (keyPairApi.isPresent()) {
   for (String group : groups) {
    for (KeyPair pair : keyPairApi.get().list().filter(nameMatches(namingConvention.create().containsGroup(group)))) {
      ZoneAndName zoneAndName = ZoneAndName.fromZoneAndName(zoneId, pair.getName());
      logger.debug(">> deleting keypair(%s)", zoneAndName);
      keyPairApi.get().delete(pair.getName());
      // TODO: test this clear happens
      keyPairCache.invalidate(zoneAndName);
      logger.debug("<< deleted keypair(%s)", zoneAndName);
    }
    keyPairCache.invalidate(ZoneAndName.fromZoneAndName(zoneId,
         namingConvention.create().sharedNameForGroup(group)));
   }
 }
}

代码示例来源:origin: apache/jclouds

public void testCanChangeSuffixSupplier() {
 GroupNamingConvention fn = Guice.createInjector(new AbstractModule() {
   @Override
   protected void configure() {
    bind(new TypeLiteral<Supplier<String>>() {
    }).toInstance(Suppliers.ofInstance("foo"));
   }
 }).getInstance(GroupNamingConvention.Factory.class).create();
 assertEquals(fn.uniqueNameForGroup("cluster"), "jclouds-cluster-foo");
 // note accidental treatment of a unique node as a shared one can lead to 
 // incorrect group names, as long as we permit delimiter to be in group name
 assertEquals(fn.groupInSharedNameOrNull("jclouds-cluster-foo"), "cluster-foo");
 assertEquals(fn.groupInUniqueNameOrNull("jclouds-cluster-foo"), "cluster");
 assertTrue(fn.containsGroup("cluster").apply("jclouds-cluster-foo"));
}

代码示例来源:origin: jclouds/legacy-jclouds

@VisibleForTesting
void deleteKeyPair(String region, String group) {
 for (KeyPair keyPair : client.getKeyPairServices().describeKeyPairsInRegion(region)) {
   String keyName = keyPair.getKeyName();
   Predicate<String> keyNameMatcher = namingConvention.create().containsGroup(group);
   String oldKeyNameRegex = String.format("jclouds#%s#%s#%s", group, region, "[0-9a-f]+").replace('#', delimiter);
   // old keypair pattern too verbose as it has an unnecessary region qualifier
      if (keyNameMatcher.apply(keyName) || keyName.matches(oldKeyNameRegex)) {
    Set<String> instancesUsingKeyPair = extractIdsFromInstances(filter(concat(client.getInstanceServices()
       .describeInstancesInRegion(region)), usingKeyPairAndNotDead(keyPair)));
    if (instancesUsingKeyPair.size() > 0) {
      logger.debug("<< inUse keyPair(%s), by (%s)", keyPair.getKeyName(), instancesUsingKeyPair);
    } else {
      logger.debug(">> deleting keyPair(%s)", keyPair.getKeyName());
      client.getKeyPairServices().deleteKeyPairInRegion(region, keyPair.getKeyName());
      // TODO: test this clear happens
      credentialsMap.remove(new RegionAndName(region, keyPair.getKeyName()));
      credentialsMap.remove(new RegionAndName(region, group));
      logger.debug("<< deleted keyPair(%s)", keyPair.getKeyName());
    }
   }
 }
}

代码示例来源:origin: org.jclouds.api/ec2

@VisibleForTesting
void deleteKeyPair(String region, String group) {
 for (KeyPair keyPair : client.getKeyPairServices().describeKeyPairsInRegion(region)) {
   String keyName = keyPair.getKeyName();
   Predicate<String> keyNameMatcher = namingConvention.create().containsGroup(group);
   String oldKeyNameRegex = String.format("jclouds#%s#%s#%s", group, region, "[0-9a-f]+").replace('#', delimiter);
   // old keypair pattern too verbose as it has an unnecessary region qualifier
      if (keyNameMatcher.apply(keyName) || keyName.matches(oldKeyNameRegex)) {
    Set<String> instancesUsingKeyPair = extractIdsFromInstances(filter(concat(client.getInstanceServices()
       .describeInstancesInRegion(region)), usingKeyPairAndNotDead(keyPair)));
    if (instancesUsingKeyPair.size() > 0) {
      logger.debug("<< inUse keyPair(%s), by (%s)", keyPair.getKeyName(), instancesUsingKeyPair);
    } else {
      logger.debug(">> deleting keyPair(%s)", keyPair.getKeyName());
      client.getKeyPairServices().deleteKeyPairInRegion(region, keyPair.getKeyName());
      // TODO: test this clear happens
      credentialsMap.remove(new RegionAndName(region, keyPair.getKeyName()));
      credentialsMap.remove(new RegionAndName(region, group));
      logger.debug("<< deleted keyPair(%s)", keyPair.getKeyName());
    }
   }
 }
}

代码示例来源:origin: apache/jclouds

private void cleanupOrphanedKeyPairsInZone(Set<String> groups, String zoneId) {
 for (String group : groups) {
   for (SshKeyPair pair : Iterables.filter(client.getSSHKeyPairApi().listSSHKeyPairs(),
                       nameMatches(namingConvention.create().containsGroup(group)))) {
    logger.debug(">> deleting keypair(%s)", pair.getName());
    client.getSSHKeyPairApi().deleteSSHKeyPair(pair.getName());
    // TODO: test this clear happens
    keyPairCache.invalidate(pair.getName());
    logger.debug("<< deleted keypair(%s)", pair.getName());
   }
   keyPairCache.invalidate(namingConvention.create().sharedNameForGroup(group));
 }
}

代码示例来源:origin: org.apache.jclouds.labs/joyent-cloudapi

private void cleanupOrphanedKeysInZone(Set<String> groups, String datacenterId) {
 KeyApi keyApi = novaApi.getKeyApi();
 for (String group : groups) {
   for (Key key : Iterables.filter(keyApi.list(),
      KeyPredicates.nameMatches(namingConvention.create().containsGroup(group)))) {
    DatacenterAndName datacenterAndName = DatacenterAndName.fromDatacenterAndName(datacenterId, key.getName());
    logger.debug(">> deleting key(%s)", datacenterAndName);
    keyApi.delete(key.getName());
    // TODO: test this clear happens
    keyCache.invalidate(datacenterAndName);
    logger.debug("<< deleted key(%s)", datacenterAndName);
   }
   keyCache.invalidate(DatacenterAndName.fromDatacenterAndName(datacenterId, namingConvention.create()
      .sharedNameForGroup(group)));
 }
}

代码示例来源:origin: org.jclouds.labs/joyent-sdc

private void cleanupOrphanedKeysInZone(Set<String> groups, String datacenterId) {
 KeyClient keyClient = novaClient.getKeyClient();
 for (String group : groups) {
   for (Key key : Iterables.filter(keyClient.list(),
      KeyPredicates.nameMatches(namingConvention.create().containsGroup(group)))) {
    DatacenterAndName datacenterAndName = DatacenterAndName.fromDatacenterAndName(datacenterId, key.getName());
    logger.debug(">> deleting key(%s)", datacenterAndName);
    keyClient.delete(key.getName());
    // TODO: test this clear happens
    keyCache.invalidate(datacenterAndName);
    logger.debug("<< deleted key(%s)", datacenterAndName);
   }
   keyCache.invalidate(DatacenterAndName.fromDatacenterAndName(datacenterId, namingConvention.create()
      .sharedNameForGroup(group)));
 }
}

代码示例来源:origin: io.cloudsoft.jclouds.labs/joyent-cloudapi

private void cleanupOrphanedKeysInZone(Set<String> groups, String datacenterId) {
 KeyApi keyApi = novaApi.getKeyApi();
 for (String group : groups) {
   for (Key key : Iterables.filter(keyApi.list(),
      KeyPredicates.nameMatches(namingConvention.create().containsGroup(group)))) {
    DatacenterAndName datacenterAndName = DatacenterAndName.fromDatacenterAndName(datacenterId, key.getName());
    logger.debug(">> deleting key(%s)", datacenterAndName);
    keyApi.delete(key.getName());
    // TODO: test this clear happens
    keyCache.invalidate(datacenterAndName);
    logger.debug("<< deleted key(%s)", datacenterAndName);
   }
   keyCache.invalidate(DatacenterAndName.fromDatacenterAndName(datacenterId, namingConvention.create()
      .sharedNameForGroup(group)));
 }
}

相关文章