Interface ApiMetadata

All Known Subinterfaces:
HttpApiMetadata<A>
All Known Implementing Classes:
AnonymousHttpApiMetadata, AtmosApiMetadata, AWSEC2ApiMetadata, AWSS3ApiMetadata, AzureBlobApiMetadata, AzureManagementApiMetadata, B2ApiMetadata, BaseApiMetadata, BaseHttpApiMetadata, BYONApiMetadata, ChefApiMetadata, CinderApiMetadata, CloudDNSApiMetadata, CloudFilesApiMetadata, CloudIdentityApiMetadata, CloudLoadBalancersApiMetadata, CloudStackApiMetadata, CloudWatchApiMetadata, DigitalOcean2ApiMetadata, DockerApiMetadata, DynECTApiMetadata, EC2ApiMetadata, ElasticStackApiMetadata, FilesystemApiMetadata, GlacierApiMetadata, GleSYSApiMetadata, GoGridApiMetadata, GoogleCloudStorageApiMetadata, GoogleComputeEngineApiMetadata, KeystoneApiMetadata, KeystoneApiMetadata, NeutronApiMetadata, NovaApiMetadata, NovaEC2ApiMetadata, PacketApiMetadata, ProfitBricksApiMetadata, Route53ApiMetadata, S3ApiMetadata, ServerManagerApiMetadata, SoftLayerApiMetadata, SQSApiMetadata, STSApiMetadata, StubApiMetadata, SwiftApiMetadata, TransientApiMetadata, TroveApiMetadata, UltraDNSWSApiMetadata

@Beta public interface ApiMetadata
The ApiMetadata interface allows jclouds to provide a plugin framework for gathering cloud api metadata.
Since:
1.5
  • Method Details

    • toBuilder

      ApiMetadata.Builder<?> toBuilder()
      See Also:
    • getId

      String getId()
      Returns:
      the api's unique identifier (ex. ec2, openstack-nova)
    • getName

      String getName()
      Returns:
      the name (display name) of the api (ex. EC2 Base API)
    • getEndpointName

      String getEndpointName()
      The endpointName helps the user supply the correct data when prompted.

      For example, on OpenStack APIs, this could be: Keystone url
      For file-based apis, this could be: Path of byon.yaml

      Default: "https endpoint"

      Returns:
      the name (display name) of an endpoint to this api (ex. Keystone url).
    • getIdentityName

      String getIdentityName()
      Returns:
      the name (display name) of an identity on this api (ex. user, email, account, apikey, tenantId:username)
    • getCredentialName

      com.google.common.base.Optional<String> getCredentialName()
      Note: if the api doesn't need a credential, this will return absent.
      Returns:
      the name (display name) of a credential on this api, if it is required (ex. password, secret, rsaKey)
    • getVersion

      String getVersion()
      Explicitly identifies the version of an api.
    • getBuildVersion

      com.google.common.base.Optional<String> getBuildVersion()
      Explicitly identifies the build that the server jclouds connects to is running. For example, for virtualbox, the api version may be 4.1.8 while the build version is 4.1.8r75467.
    • getDefaultEndpoint

      com.google.common.base.Optional<String> getDefaultEndpoint()
      Explicitly identifies the most top-level endpoint to a service provider. This helps differentiate two providers of the same api, or a different environments providing the same api.

      note

      The type of endpoint is String as we permit endpoints that require variable expansion. ex.
       https://${jclouds.identity}.blob.core.windows.net
       
      Returns:
      the api's default endpoint, if known.
    • getDefaultIdentity

      com.google.common.base.Optional<String> getDefaultIdentity()
      Explicitly identifies the login identity into a provider
      Returns:
      the login identity into a provider, if known.
    • getDefaultCredential

      com.google.common.base.Optional<String> getDefaultCredential()
      Explicitly sets the secret, which when combined with the identity, will create an authenticated subject or session
      Returns:
      the api's default credential, if known.
      See Also:
    • getDefaultProperties

      Properties getDefaultProperties()
      Configuration Properties used when creating connections to this api
      Returns:
      properties used to create connections to this api
    • getDefaultModules

      Set<Class<? extends com.google.inject.Module>> getDefaultModules()
      Modules that configure dependency injection for this context
      Returns:
      modules that configure dependency injection for this context
    • getDocumentation

      URI getDocumentation()
      Returns:
      the url for the API documentation related to this service
    • getContext

      com.google.common.reflect.TypeToken<? extends Context> getContext()
      Returns:
      the primary context of this api, for example ApiContext<EC2Api>
    • getViews

      Set<com.google.common.reflect.TypeToken<? extends View>> getViews()
      Returns:
      types of contexts this can be transformed into, for example BlobStoreContext