org.jclouds.providers.internal
Class BaseProviderMetadata

java.lang.Object
  extended by org.jclouds.providers.internal.BaseProviderMetadata
All Implemented Interfaces:
ProviderMetadata
Direct Known Subclasses:
AnonymousProviderMetadata

public abstract class BaseProviderMetadata
extends Object
implements ProviderMetadata

The BaseProviderMetadata class is an abstraction of ProviderMetadata to be extended by those implementing ProviderMetadata. (Note: This class must be abstract to allow ServiceLoader to work properly.

Author:
Adrian Cole

Nested Class Summary
static class BaseProviderMetadata.Builder
           
 
Field Summary
protected  ApiMetadata api
           
protected  com.google.common.base.Optional<URI> console
           
protected  Properties defaultProperties
           
protected  String endpoint
           
protected  com.google.common.base.Optional<URI> homepage
           
protected  String id
           
protected  Set<String> iso3166Codes
           
protected  Set<String> linkedServices
           
protected  String name
           
 
Constructor Summary
BaseProviderMetadata(BaseProviderMetadata.Builder builder)
           
BaseProviderMetadata(String id, String name, ApiMetadata api, String endpoint, Properties defaultProperties, com.google.common.base.Optional<URI> homepage, com.google.common.base.Optional<URI> console, Set<String> linkedServices, Set<String> iso3166Codes)
           
 
Method Summary
 boolean equals(Object o)
           
 ApiMetadata getApiMetadata()
          
 com.google.common.base.Optional<URI> getConsole()
          
 Properties getDefaultProperties()
          Configuration Properties used when creating connections to this provider.
 String getEndpoint()
          
 com.google.common.base.Optional<URI> getHomepage()
          
 String getId()
          
 Set<String> getIso3166Codes()
          iso 3166 codes; ex.
 Set<String> getLinkedServices()
          
 String getName()
          
 int hashCode()
           
 com.google.common.base.Objects.ToStringHelper string()
           
 ProviderMetadata.Builder toBuilder()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

id

protected final String id

name

protected final String name

api

protected final ApiMetadata api

endpoint

protected final String endpoint

defaultProperties

protected final Properties defaultProperties

homepage

protected final com.google.common.base.Optional<URI> homepage

console

protected final com.google.common.base.Optional<URI> console

linkedServices

protected final Set<String> linkedServices

iso3166Codes

protected final Set<String> iso3166Codes
Constructor Detail

BaseProviderMetadata

public BaseProviderMetadata(BaseProviderMetadata.Builder builder)

BaseProviderMetadata

public BaseProviderMetadata(String id,
                            String name,
                            ApiMetadata api,
                            String endpoint,
                            Properties defaultProperties,
                            com.google.common.base.Optional<URI> homepage,
                            com.google.common.base.Optional<URI> console,
                            Set<String> linkedServices,
                            Set<String> iso3166Codes)
Method Detail

toBuilder

public ProviderMetadata.Builder toBuilder()
Specified by:
toBuilder in interface ProviderMetadata
See Also:
ProviderMetadata.Builder

equals

public boolean equals(Object o)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

toString

public String toString()
Overrides:
toString in class Object

string

public com.google.common.base.Objects.ToStringHelper string()

getId

public String getId()

Specified by:
getId in interface ProviderMetadata
Returns:
the provider's unique identifier (ex. aws-ec2, trystack-nova)

getName

public String getName()

Specified by:
getName in interface ProviderMetadata
Returns:
the name (display name) of the provider (ex. GoGrid)

getApiMetadata

public ApiMetadata getApiMetadata()

Specified by:
getApiMetadata in interface ProviderMetadata
Returns:
the provider's api

getEndpoint

public String getEndpoint()

Specified by:
getEndpoint in interface ProviderMetadata
Returns:
the url for the provider's api
See Also:
ApiMetadata#getEndpoint

getConsole

public com.google.common.base.Optional<URI> getConsole()

Specified by:
getConsole in interface ProviderMetadata
Returns:
the url for the provider's console, or absent if one doesn't exist

getDefaultProperties

public Properties getDefaultProperties()
Configuration Properties used when creating connections to this provider. For example, location information, or default networking configuration.

Specified by:
getDefaultProperties in interface ProviderMetadata
Returns:
properties used to create connections to this provider
See Also:
ApiMetadata.getDefaultProperties()

getHomepage

public com.google.common.base.Optional<URI> getHomepage()

Specified by:
getHomepage in interface ProviderMetadata
Returns:
the url for the provider's homepage, or absent if unknown

getLinkedServices

public Set<String> getLinkedServices()

Specified by:
getLinkedServices in interface ProviderMetadata
Returns:
ids of all known providers which have the same account as this.

getIso3166Codes

public Set<String> getIso3166Codes()
iso 3166 codes; ex. US-CA,US

Specified by:
getIso3166Codes in interface ProviderMetadata
Returns:
all known region/location ISO 3166 codes


Copyright © 2009-2013 jclouds. All Rights Reserved.