protected Builder() {
   id("openstack-keystone")
       .name("OpenStack Keystone Essex+ API")
       .identityName(
           "${tenantName}:${userName} or ${userName}, if your keystone supports a default tenant")
       .credentialName("${password}")
       .endpointName("Keystone base url ending in /v${jclouds.api-version}/")
       .documentation(URI.create("http://api.openstack.org/"))
       .version("2.0")
       .defaultEndpoint("http://localhost:5000/v${jclouds.api-version}/")
       .defaultProperties(KeystoneApiMetadata.defaultProperties())
       .defaultModules(
           ImmutableSet.<Class<? extends Module>>builder()
               .add(AuthenticationApiModule.class)
               .add(KeystoneAuthenticationModule.class)
               .add(KeystoneAdminURLModule.class)
               .add(KeystoneParserModule.class)
               .add(KeystoneHttpApiModule.class)
               .build());
 }
 public static Properties defaultProperties() {
   Properties properties = KeystoneApiMetadata.defaultProperties();
   properties.setProperty(CREDENTIAL_TYPE, CloudIdentityCredentialTypes.API_KEY_CREDENTIALS);
   return properties;
 }