From b58060599bb9c0ea01ed9a1c749b4bae6cb6a706 Mon Sep 17 00:00:00 2001 From: Adrian Cole Date: Wed, 6 Jun 2012 14:57:50 -0700 Subject: [PATCH] Issue 815: repackaged keystone classes into their own api --- .../cloudfiles/CloudFilesApiMetadata.java | 3 +- .../CloudLoadBalancersApiMetadata.java | 3 +- .../cloudservers/CloudServersApiMetadata.java | 3 +- .../openstack/nova/NovaAsyncClientTest.java | 2 +- apis/openstack-keystone/.pom.xml.swp | Bin 0 -> 16384 bytes {labs => apis}/openstack-keystone/pom.xml | 17 +- .../v2_0/AuthenticationAsyncClient.java | 0 .../keystone/v2_0/AuthenticationClient.java | 0 .../keystone/v2_0/KeystoneApiMetadata.java | 8 +- .../keystone/v2_0/KeystoneAsyncClient.java | 2 + .../keystone/v2_0/KeystoneClient.java | 2 + .../v2_0/binders/BindAuthToJsonPayload.java | 0 .../keystone/v2_0/config/Authentication.java | 38 ++++ .../keystone/v2_0/config/CredentialType.java | 0 .../config/KeystoneAuthenticationModule.java | 1 - .../v2_0/config/KeystoneParserModule.java | 0 .../v2_0/config/KeystoneProperties.java | 2 +- .../v2_0/config/KeystoneRestClientModule.java | 11 +- .../keystone/v2_0/domain/Access.java | 0 .../v2_0/domain/ApiAccessKeyCredentials.java | 0 .../keystone/v2_0/domain/ApiMetadata.java | 2 +- .../keystone/v2_0/domain/Endpoint.java | 0 .../keystone/v2_0/domain/MediaType.java | 0 .../v2_0/domain/PasswordCredentials.java | 0 .../openstack/keystone/v2_0/domain/Role.java | 0 .../keystone/v2_0/domain/Service.java | 0 .../keystone/v2_0/domain/Tenant.java | 0 .../openstack/keystone/v2_0/domain/Token.java | 0 .../openstack/keystone/v2_0/domain/User.java | 0 .../v2_0/features}/AdminAsyncClient.java | 4 +- .../keystone/v2_0/features}/AdminClient.java | 2 +- .../v2_0/features}/ServiceAsyncClient.java | 4 +- .../v2_0/features}/ServiceClient.java | 2 +- .../v2_0/filters/AuthenticateRequest.java | 54 +++++ .../keystone/v2_0/functions/AdminURL.java | 0 .../AuthenticateApiAccessKeyCredentials.java | 0 .../AuthenticatePasswordCredentials.java | 0 .../v2_0/functions/EndpointToRegion.java | 0 .../functions/EndpointToSupplierAdminURI.java | 0 .../v2_0/functions/EndpointToSupplierURI.java | 0 .../functions/PublicURLOrInternalIfNull.java | 0 .../functions/RegionToAdminEndpointURI.java | 0 .../keystone/v2_0/functions/ReturnRegion.java | 0 .../v2_0/handlers/KeystoneErrorHandler.java | 0 .../keystone/v2_0/handlers/RetryOnRenew.java | 5 +- ...RIFromAccessForTypeAndVersionSupplier.java | 0 ...RIFromAccessForTypeAndVersionSupplier.java | 0 .../suppliers/RegionIdToAdminURISupplier.java | 0 ...RIFromAccessForTypeAndVersionSupplier.java | 0 ...RIFromAccessForTypeAndVersionSupplier.java | 0 .../jclouds/openstack/v2_0/ServiceType.java | 52 +++++ .../jclouds/openstack/v2_0/domain/Link.java | 207 ++++++++++++++++++ .../openstack/v2_0/domain/Resource.java | 185 ++++++++++++++++ .../v2_0/options/BaseListOptions.java | 100 +++++++++ .../v2_0/predicates/LinkPredicates.java | 103 +++++++++ .../openstack/v2_0/reference/AuthHeaders.java | 31 +++ .../openstack/v2_0/services/Compute.java | 43 ++++ .../openstack/v2_0/services/Extension.java | 79 +++++++ .../openstack/v2_0/services/Image.java | 43 ++++ .../openstack/v2_0/services/ObjectStore.java | 43 ++++ .../services/org.jclouds.apis.ApiMetadata | 0 .../v2_0/features}/AdminClientExpectTest.java | 5 +- .../v2_0/features}/AdminClientLiveTest.java | 7 +- .../v2_0/features}/UserClientExpectTest.java | 5 +- .../v2_0/features}/UserClientLiveTest.java | 2 +- .../keystone/v2_0/functions/AdminURLTest.java | 0 .../PublicURLOrInternalIfNullTest.java | 0 .../v2_0/functions/ReturnRegionTest.java | 0 .../v2_0/handlers/RetryOnRenewTest.java | 0 .../internal/BaseKeystoneClientLiveTest.java | 0 .../BaseKeystoneRestClientExpectTest.java | 2 +- .../v2_0/internal/KeystoneFixture.java | 0 .../keystone/v2_0/parse/ParseAccessTest.java | 0 .../v2_0/parse/ParseApiMetadataTest.java | 2 +- ...omAccessForTypeAndVersionSupplierTest.java | 0 ...omAccessForTypeAndVersionSupplierTest.java | 0 ...omAccessForTypeAndVersionSupplierTest.java | 0 .../v2_0/options/BaseListOptionsTest.java | 77 +++++++ .../v2_0/predicates/LinkPredicatesTest.java | 51 +++++ .../test/resources/apiMetadataResponse.json | 0 .../src/test/resources/api_metadata.json | 0 .../test/resources/keystoneAuthResponse.json | 0 .../keystoneAuthResponse_trystack.json | 0 .../src/test/resources/logback.xml | 115 +++++----- .../src/test/resources/tenant_details.json | 0 .../src/test/resources/tenant_list.json | 0 .../src/test/resources/token_details.json | 0 .../src/test/resources/user_details.json | 0 .../src/test/resources/user_endpoints.json | 0 .../src/test/resources/user_list.json | 0 .../src/test/resources/user_role_list.json | 0 .../test/resources/user_tenant_role_list.json | 0 apis/openstack-nova/pom.xml | 8 +- .../openstack/nova/v1_1/NovaApiMetadata.java | 6 +- .../openstack/nova/v1_1/NovaAsyncClient.java | 15 +- .../openstack/nova/v1_1/NovaClient.java | 15 +- .../v1_1/config/NovaRestClientModule.java | 29 ++- .../openstack/nova/v1_1/domain/Extension.java | 2 +- .../openstack/nova/v1_1/domain/Flavor.java | 2 +- .../nova/v1_1/domain/HostAggregate.java | 2 +- .../openstack/nova/v1_1/domain/Image.java | 2 +- .../openstack/nova/v1_1/domain/Server.java | 2 +- .../nova/v1_1/domain/ServerCreated.java | 2 +- .../nova/v1_1/domain/VolumeType.java | 2 +- .../extensions/AdminActionsAsyncClient.java | 6 +- .../v1_1/extensions/AdminActionsClient.java | 4 +- .../FlavorExtraSpecsAsyncClient.java | 6 +- .../extensions/FlavorExtraSpecsClient.java | 6 +- .../extensions/FloatingIPAsyncClient.java | 6 +- .../v1_1/extensions/FloatingIPClient.java | 4 +- .../HostAdministrationAsyncClient.java | 6 +- .../extensions/HostAdministrationClient.java | 4 +- .../extensions/HostAggregateAsyncClient.java | 6 +- .../v1_1/extensions/HostAggregateClient.java | 6 +- .../v1_1/extensions/KeyPairAsyncClient.java | 6 +- .../nova/v1_1/extensions/KeyPairClient.java | 4 +- .../v1_1/extensions/QuotaAsyncClient.java | 6 +- .../extensions/QuotaClassAsyncClient.java | 7 +- .../v1_1/extensions/QuotaClassClient.java | 7 +- .../nova/v1_1/extensions/QuotaClient.java | 6 +- .../extensions/SecurityGroupAsyncClient.java | 6 +- .../v1_1/extensions/SecurityGroupClient.java | 4 +- .../ServerWithSecurityGroupsAsyncClient.java | 6 +- .../ServerWithSecurityGroupsClient.java | 4 +- .../SimpleTenantUsageAsyncClient.java | 6 +- .../extensions/SimpleTenantUsageClient.java | 4 +- .../VirtualInterfaceAsyncClient.java | 6 +- .../extensions/VirtualInterfaceClient.java | 4 +- .../v1_1/extensions/VolumeAsyncClient.java | 7 +- .../nova/v1_1/extensions/VolumeClient.java | 4 +- .../extensions/VolumeTypeAsyncClient.java | 6 +- .../v1_1/extensions/VolumeTypeClient.java | 6 +- .../v1_1/features/ExtensionAsyncClient.java | 2 +- .../nova/v1_1/features/FlavorAsyncClient.java | 4 +- .../nova/v1_1/features/FlavorClient.java | 2 +- .../nova/v1_1/features/ImageAsyncClient.java | 4 +- .../nova/v1_1/features/ImageClient.java | 2 +- .../nova/v1_1/features/ServerAsyncClient.java | 6 +- .../nova/v1_1/features/ServerClient.java | 4 +- ...paceEqualsAnyNamespaceInExtensionsSet.java | 4 +- .../nova/v1_1/options/ListOptions.java | 2 +- .../ServerInZoneToNodeMetadataTest.java | 4 +- .../FlavorExtraSpecsClientLiveTest.java | 2 +- .../QuotaClassClientExpectTest.java | 1 - .../extensions/QuotaClassClientLiveTest.java | 1 - ...erverWithSecurityGroupsClientLiveTest.java | 2 +- .../v1_1/features/FlavorClientLiveTest.java | 2 +- .../v1_1/features/ImageClientLiveTest.java | 2 +- .../v1_1/features/ServerClientLiveTest.java | 2 +- ...EqualsAnyNamespaceInExtensionsSetTest.java | 6 +- .../v1_1/internal/BaseNovaClientLiveTest.java | 2 +- .../v1_1/parse/ParseCreatedServerTest.java | 4 +- .../v1_1/parse/ParseExtensionListTest.java | 4 +- .../nova/v1_1/parse/ParseExtensionTest.java | 4 +- .../nova/v1_1/parse/ParseFlavorListTest.java | 6 +- .../nova/v1_1/parse/ParseFlavorTest.java | 4 +- .../nova/v1_1/parse/ParseImageListTest.java | 6 +- .../nova/v1_1/parse/ParseImageTest.java | 6 +- .../parse/ParseServerDetailsEssexTest.java | 8 +- .../nova/v1_1/parse/ParseServerListTest.java | 6 +- .../nova/v1_1/parse/ParseServerTest.java | 6 +- .../ParseServerWithAllExtensionsTest.java | 8 +- .../ParseServerWithInternetAddressesTest.java | 6 +- ...licIpsInPrivateAddressBlockExpectTest.java | 6 +- apis/pom.xml | 1 + .../openstack/swift/SwiftApiMetadata.java | 3 +- .../swift/CommonSwiftClientTest.java | 2 +- common/openstack/pom.xml | 13 +- .../config/OpenStackAuthenticationModule.java | 6 +- .../filters/AuthenticateRequest.java | 2 +- .../{ => internal}/Authentication.java | 2 +- .../OpenStackAuthAsyncClient.java | 3 +- .../{ => internal}/OpenStackAuthClient.java | 2 +- .../config/AuthenticationServiceModule.java | 2 +- .../OpenStackAuthAsyncClientTest.java | 3 +- .../TestOpenStackAuthenticationModule.java | 2 +- labs/openstack-glance/pom.xml | 8 +- .../glance/v1_0/GlanceApiMetadata.java | 2 +- .../openstack/glance/v1_0/domain/Image.java | 2 +- .../v1_0/features/ImageAsyncClient.java | 13 +- .../glance/v1_0/features/ImageClient.java | 3 +- .../ParseImageDetailsFromHeaders.java | 16 +- .../glance/v1_0/options/ImageField.java | 7 - .../glance/v1_0/options/ListImageOptions.java | 11 +- .../v1_0/options/UpdateImageOptions.java | 14 +- .../v1_0/features/ImageClientExpectTest.java | 1 - labs/openstack-quantum/pom.xml | 8 +- .../quantum/v1_0/QuantumApiMetadata.java | 2 +- .../quantum/v1_0/domain/Network.java | 4 +- .../v1_0/features/NetworkAsyncClient.java | 2 +- .../v1_0/features/PortAsyncClient.java | 2 +- labs/openstack-swift/pom.xml | 8 +- .../openstack/swift/v1/SwiftApiMetadata.java | 2 +- .../swift/v1/features/AccountAsyncClient.java | 2 +- .../v1/features/ContainerAsyncClient.java | 2 +- .../swift/v1/features/ObjectAsyncClient.java | 2 +- labs/pom.xml | 1 - providers/hpcloud-objectstorage/pom.xml | 9 +- .../HPCloudObjectStorageAsyncClient.java | 2 +- .../extensions/HPCloudCDNAsyncClient.java | 2 +- 200 files changed, 1532 insertions(+), 319 deletions(-) create mode 100644 apis/openstack-keystone/.pom.xml.swp rename {labs => apis}/openstack-keystone/pom.xml (90%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationAsyncClient.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationClient.java (100%) rename {labs => apis}/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneApiMetadata.java (92%) rename {labs => apis}/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneAsyncClient.java (93%) rename {labs => apis}/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneClient.java (93%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/binders/BindAuthToJsonPayload.java (100%) create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/Authentication.java rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/config/CredentialType.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneAuthenticationModule.java (99%) rename {labs => apis}/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneParserModule.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneProperties.java (97%) rename {labs => apis}/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneRestClientModule.java (87%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Access.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiAccessKeyCredentials.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiMetadata.java (98%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Endpoint.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/MediaType.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/PasswordCredentials.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Role.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Service.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Tenant.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Token.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/User.java (100%) rename {labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features}/AdminAsyncClient.java (98%) rename {labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features}/AdminClient.java (98%) rename {labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features}/ServiceAsyncClient.java (94%) rename {labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features}/ServiceClient.java (96%) create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/filters/AuthenticateRequest.java rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURL.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticateApiAccessKeyCredentials.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticatePasswordCredentials.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToRegion.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierAdminURI.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierURI.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNull.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/RegionToAdminEndpointURI.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegion.java (100%) rename {labs => apis}/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/KeystoneErrorHandler.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java (92%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/LocationIdToURIFromAccessForTypeAndVersionSupplier.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplier.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURISupplier.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplier.java (100%) rename {common/openstack => apis/openstack-keystone}/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplier.java (100%) create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Link.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Resource.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/options/BaseListOptions.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/predicates/LinkPredicates.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/reference/AuthHeaders.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Compute.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Extension.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Image.java create mode 100644 apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/ObjectStore.java rename {labs => apis}/openstack-keystone/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata (100%) rename {labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features}/AdminClientExpectTest.java (99%) rename {labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features}/AdminClientLiveTest.java (96%) rename {labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features}/UserClientExpectTest.java (96%) rename {labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0 => apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features}/UserClientLiveTest.java (97%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURLTest.java (100%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNullTest.java (100%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegionTest.java (100%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenewTest.java (100%) rename {labs => apis}/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneClientLiveTest.java (100%) rename {labs => apis}/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneRestClientExpectTest.java (98%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/KeystoneFixture.java (100%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java (100%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseApiMetadataTest.java (98%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplierTest.java (100%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplierTest.java (100%) rename {common/openstack => apis/openstack-keystone}/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplierTest.java (100%) create mode 100644 apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/options/BaseListOptionsTest.java create mode 100644 apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/predicates/LinkPredicatesTest.java rename {common/openstack => apis/openstack-keystone}/src/test/resources/apiMetadataResponse.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/api_metadata.json (100%) rename {common/openstack => apis/openstack-keystone}/src/test/resources/keystoneAuthResponse.json (100%) rename {common/openstack => apis/openstack-keystone}/src/test/resources/keystoneAuthResponse_trystack.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/logback.xml (63%) rename {labs => apis}/openstack-keystone/src/test/resources/tenant_details.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/tenant_list.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/token_details.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/user_details.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/user_endpoints.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/user_list.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/user_role_list.json (100%) rename {labs => apis}/openstack-keystone/src/test/resources/user_tenant_role_list.json (100%) rename common/openstack/src/main/java/org/jclouds/openstack/{ => internal}/Authentication.java (97%) rename common/openstack/src/main/java/org/jclouds/openstack/{ => internal}/OpenStackAuthAsyncClient.java (96%) rename common/openstack/src/main/java/org/jclouds/openstack/{ => internal}/OpenStackAuthClient.java (97%) rename common/openstack/src/test/java/org/jclouds/openstack/{ => internal}/OpenStackAuthAsyncClientTest.java (97%) rename common/openstack/src/test/java/org/jclouds/openstack/{ => internal}/TestOpenStackAuthenticationModule.java (98%) diff --git a/apis/cloudfiles/src/main/java/org/jclouds/cloudfiles/CloudFilesApiMetadata.java b/apis/cloudfiles/src/main/java/org/jclouds/cloudfiles/CloudFilesApiMetadata.java index d2211b8395..c9b381c02f 100644 --- a/apis/cloudfiles/src/main/java/org/jclouds/cloudfiles/CloudFilesApiMetadata.java +++ b/apis/cloudfiles/src/main/java/org/jclouds/cloudfiles/CloudFilesApiMetadata.java @@ -28,7 +28,6 @@ import org.jclouds.apis.ApiMetadata; import org.jclouds.blobstore.BlobStoreContext; import org.jclouds.cloudfiles.blobstore.config.CloudFilesBlobStoreContextModule; import org.jclouds.cloudfiles.config.CloudFilesRestClientModule; -import org.jclouds.openstack.OpenStackAuthAsyncClient; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; @@ -81,7 +80,7 @@ public class CloudFilesApiMetadata extends BaseRestApiMetadata { .identityName("Username") .credentialName("API Key") .documentation(URI.create("http://docs.rackspacecloud.com/files/api/v1/cfdevguide_d5/content/ch01.html")) - .version(OpenStackAuthAsyncClient.VERSION) + .version("1.0") .defaultProperties(CloudFilesApiMetadata.defaultProperties()) .view(TypeToken.of(BlobStoreContext.class)) .defaultModules(ImmutableSet.>of(CloudFilesRestClientModule.class, CloudFilesBlobStoreContextModule.class)); diff --git a/apis/cloudloadbalancers/src/main/java/org/jclouds/cloudloadbalancers/CloudLoadBalancersApiMetadata.java b/apis/cloudloadbalancers/src/main/java/org/jclouds/cloudloadbalancers/CloudLoadBalancersApiMetadata.java index 28c904566e..e59e3b9808 100644 --- a/apis/cloudloadbalancers/src/main/java/org/jclouds/cloudloadbalancers/CloudLoadBalancersApiMetadata.java +++ b/apis/cloudloadbalancers/src/main/java/org/jclouds/cloudloadbalancers/CloudLoadBalancersApiMetadata.java @@ -25,7 +25,6 @@ import org.jclouds.apis.ApiMetadata; import org.jclouds.cloudloadbalancers.config.CloudLoadBalancersRestClientModule; import org.jclouds.cloudloadbalancers.loadbalancer.config.CloudLoadBalancersLoadBalancerContextModule; import org.jclouds.loadbalancer.LoadBalancerServiceContext; -import org.jclouds.openstack.OpenStackAuthAsyncClient; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; @@ -75,7 +74,7 @@ public class CloudLoadBalancersApiMetadata extends BaseRestApiMetadata { .identityName("Username") .credentialName("API Key") .documentation(URI.create("http://docs.rackspacecloud.com/loadbalancers/api/v1.0/clb-devguide/content/ch01.html")) - .version(OpenStackAuthAsyncClient.VERSION) + .version("1.0") .defaultEndpoint("https://auth.api.rackspacecloud.com") .defaultProperties(CloudLoadBalancersApiMetadata.defaultProperties()) .view(TypeToken.of(LoadBalancerServiceContext.class)) diff --git a/apis/cloudservers/src/main/java/org/jclouds/cloudservers/CloudServersApiMetadata.java b/apis/cloudservers/src/main/java/org/jclouds/cloudservers/CloudServersApiMetadata.java index 954355dfbe..0a394dbebe 100644 --- a/apis/cloudservers/src/main/java/org/jclouds/cloudservers/CloudServersApiMetadata.java +++ b/apis/cloudservers/src/main/java/org/jclouds/cloudservers/CloudServersApiMetadata.java @@ -25,7 +25,6 @@ import org.jclouds.apis.ApiMetadata; import org.jclouds.cloudservers.compute.config.CloudServersComputeServiceContextModule; import org.jclouds.cloudservers.config.CloudServersRestClientModule; import org.jclouds.compute.ComputeServiceContext; -import org.jclouds.openstack.OpenStackAuthAsyncClient; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; @@ -74,7 +73,7 @@ public class CloudServersApiMetadata extends BaseRestApiMetadata { .identityName("Username") .credentialName("API Key") .documentation(URI.create("http://docs.rackspacecloud.com/servers/api/v1.0/cs-devguide/content/ch01.html")) - .version(OpenStackAuthAsyncClient.VERSION) + .version("1.0") .defaultEndpoint("https://auth.api.rackspacecloud.com") .defaultProperties(CloudServersApiMetadata.defaultProperties()) .view(TypeToken.of(ComputeServiceContext.class)) diff --git a/apis/nova/src/test/java/org/jclouds/openstack/nova/NovaAsyncClientTest.java b/apis/nova/src/test/java/org/jclouds/openstack/nova/NovaAsyncClientTest.java index 792101bb3c..4c1fd65c7d 100644 --- a/apis/nova/src/test/java/org/jclouds/openstack/nova/NovaAsyncClientTest.java +++ b/apis/nova/src/test/java/org/jclouds/openstack/nova/NovaAsyncClientTest.java @@ -35,9 +35,9 @@ import org.jclouds.http.HttpRequest; import org.jclouds.http.functions.ReleasePayloadAndReturn; import org.jclouds.http.functions.ReturnTrueIf2xx; import org.jclouds.http.functions.UnwrapOnlyJsonValue; -import org.jclouds.openstack.TestOpenStackAuthenticationModule; import org.jclouds.openstack.filters.AddTimestampQuery; import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.internal.TestOpenStackAuthenticationModule; import org.jclouds.openstack.nova.config.NovaRestClientModule; import org.jclouds.openstack.nova.domain.RebootType; import org.jclouds.openstack.nova.options.CreateServerOptions; diff --git a/apis/openstack-keystone/.pom.xml.swp b/apis/openstack-keystone/.pom.xml.swp new file mode 100644 index 0000000000000000000000000000000000000000..2e445a32b1607b1a6362553fd4b61348037193d3 GIT binary patch literal 16384 zcmeHOO^h5z8LgNQLP$(-6e5IBDnpQxXuEsXb^tl;F~fST4A~#!Sv#?0X;a%>GgG@g z-JPzUogE@#2`Pvx5|JWt3>?BCNN^0f5OPBz5I~9q7Y+~(h@YI`0i7t7~`aS6b`z3-&33=Uzg7_Tyh{ik}=D`*eC6VSXZ5=tTink@KHs zW@oLyP+DT0d3F$aESO2~!q}lRjFLSWGmkr6kvh9x5Dk3k1Z+n-QOrY`GH=h?<0F|y zA$Q`aZy)q$JCYLr$GsuB+(J)*hnwowz*L(nJ^qi~>dhqkvJsC}0#Y z3K#{90{?por13Fw9mP7Pi?*$Q-!}F8-}<>3D?#BuFHSiAbUBCyHfWICm zPXhM?cL0C-C?Vehc7X?gH}52554aon{znM;9`IG*PT((hfD7;v-~-oyCa?_Dfd_%( zz@I-%$Q!`7f$KmBw1Ce5f4`lO-vF-zuL3Uv0dNku5BTSYzzO&*@EUL(cow(-oCa#Z zgTM*kcHnO~VEF^^Ht+`UBJdSp8F&Er2lW3bpz7gORTnc4oqF7E!~)qMQ^C}Ydrb0% z2vgooSSq5>O1Vs3Cl8;s7k<^)b?`oAsL0io9`3F*a<%inHAQ!y zCsN6`Y}f6&>lCj=bVZCH>h7q!FJ8c;6y9M%l@fV9`?*NswoR5~N*K2!tqI;D<%ge# zG`rkOZO!`Y3;FA-JeCYPr*{{!R~4+SZQLM&_y2MU(vhwWYnQ=y_F5=j)W9v4&WjQ> zo=UY9ev7tQDcmiU>I1`X+>Elek8)xpNzl&G!^fSWsK-clg)RDVl%z$kcuY%EQRJ~F zbn(vCX7#Tv%_guDj9|7J(vpw`M@a3?CFB;D&FqXTKd5r8aJ0*7Xm)W8&E7w`U0=+d zX51%p*I69y`^GMpFqz_U)v!|bmy(i~aEwc-V1bpj?--*7?$-G$WjF@Rqb03mQc&>9xz^S>EKar9y~s+Djd;Nhr)_n|lRl;Ic&gcH>`~3sDu5k^$atLdHMf^8_z)^r=o*Iar52A!OXo9j;Ipq5*nIgp~X9u9~0@RY6WPS)$o z&NJ(4ZLHk-%o6G@Z|HHPlH!ca0@rXoST&q7`TWf2JUaQZa{u&peYE^X(Dz8Dfed!MunU( zh(hp3>dPT+VoRFv=LT4E`*df7-Vz7GV>n~BSVb0PSuRER4JtEsP^a+ zbfi;-QA!6=X^QfxMLA^mc$_MtYKRHct#l6sFc6sZ9^~Kt`2JZM1au@dAUjx+szxclYJM8t}1YQA# zz`wA+Pl5NauipdS!(RRx-~h*g_mTcx;4R=sz$?IafNugX0?PjgFpp8dC}0#Y3K#{9 z0!9I&fKlN8Q-SOlRc*YpO>6e1_B!SF1#HWU4-yoQ>r8yXPyzabNO91bTTOom$wSKz zIOPWs6|NrFDdVb+ib(8SI-)zsKP1f>sPq#5q|5sk^Yf$86^4Hr#x`>%Bkl2MXORy- zev?@_2JTfx=`#_Jzq!W1.5.0-SNAPSHOT ../../project/pom.xml - org.jclouds.labs + org.jclouds.api openstack-keystone jcloud openstack-keystone api jclouds components to access an implementation of OpenStack Keystone @@ -43,7 +43,9 @@ FIXME_CREDENTIALS passwordCredentials - org.jclouds.openstack.keystone.v2_0*;version="${project.version}" + org.jclouds.openstack.v2_0*;version="${project.version}", + org.jclouds.openstack.keystone.v2_0*;version="${project.version}" + org.jclouds.rest.internal;version="${project.version}", org.jclouds*;version="${project.version}", @@ -53,8 +55,8 @@ - org.jclouds.common - openstack-common + org.jclouds + jclouds-core ${project.version} @@ -64,13 +66,6 @@ test-jar test - - org.jclouds.common - openstack-common - ${project.version} - test-jar - test - org.jclouds.driver jclouds-slf4j diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationAsyncClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationAsyncClient.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationAsyncClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationAsyncClient.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationClient.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AuthenticationClient.java diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneApiMetadata.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneApiMetadata.java similarity index 92% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneApiMetadata.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneApiMetadata.java index 7e038f26c6..a9c8f69310 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneApiMetadata.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneApiMetadata.java @@ -26,7 +26,7 @@ import java.util.Properties; import org.jclouds.apis.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties; import org.jclouds.openstack.keystone.v2_0.config.KeystoneRestClientModule; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; @@ -45,6 +45,9 @@ public class KeystoneApiMetadata extends BaseRestApiMetadata { private static final long serialVersionUID = 6725672099385580694L; public static final TypeToken> CONTEXT_TOKEN = new TypeToken>() { + + /** The serialVersionUID */ + private static final long serialVersionUID = 3030344682235783904L; }; @Override @@ -62,9 +65,6 @@ public class KeystoneApiMetadata extends BaseRestApiMetadata { public static Properties defaultProperties() { Properties properties = BaseRestApiMetadata.defaultProperties(); - // auth fail can happen while cloud-init applies keypair updates - properties.setProperty("jclouds.ssh.max-retries", "7"); - properties.setProperty("jclouds.ssh.retry-auth", "true"); // TODO: this doesn't actually do anything yet. properties.setProperty(KeystoneProperties.VERSION, "2.0"); properties.put(SERVICE_TYPE, ServiceType.IDENTITY); diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneAsyncClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneAsyncClient.java similarity index 93% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneAsyncClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneAsyncClient.java index cb88070c2f..1d23d251f4 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneAsyncClient.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneAsyncClient.java @@ -26,6 +26,8 @@ import org.jclouds.Constants; import org.jclouds.javax.annotation.Nullable; import org.jclouds.location.Region; import org.jclouds.location.functions.RegionToEndpoint; +import org.jclouds.openstack.keystone.v2_0.features.AdminAsyncClient; +import org.jclouds.openstack.keystone.v2_0.features.ServiceAsyncClient; import org.jclouds.openstack.keystone.v2_0.functions.RegionToAdminEndpointURI; import org.jclouds.rest.annotations.Delegate; import org.jclouds.rest.annotations.EndpointParam; diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneClient.java similarity index 93% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneClient.java index 2c63a5b074..ae23238227 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneClient.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneClient.java @@ -25,6 +25,8 @@ import org.jclouds.concurrent.Timeout; import org.jclouds.javax.annotation.Nullable; import org.jclouds.location.Region; import org.jclouds.location.functions.RegionToEndpoint; +import org.jclouds.openstack.keystone.v2_0.features.AdminClient; +import org.jclouds.openstack.keystone.v2_0.features.ServiceClient; import org.jclouds.openstack.keystone.v2_0.functions.RegionToAdminEndpointURI; import org.jclouds.rest.annotations.Delegate; import org.jclouds.rest.annotations.EndpointParam; diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/binders/BindAuthToJsonPayload.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/binders/BindAuthToJsonPayload.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/binders/BindAuthToJsonPayload.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/binders/BindAuthToJsonPayload.java diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/Authentication.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/Authentication.java new file mode 100644 index 0000000000..a6ed4f9bfa --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/Authentication.java @@ -0,0 +1,38 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.keystone.v2_0.config; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +/** + * + * @author Adrian Cole + * + */ +@Retention(value = RetentionPolicy.RUNTIME) +@Target(value = { ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) +@Qualifier +public @interface Authentication { + +} \ No newline at end of file diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/CredentialType.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/CredentialType.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/CredentialType.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/CredentialType.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneAuthenticationModule.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneAuthenticationModule.java similarity index 99% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneAuthenticationModule.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneAuthenticationModule.java index 21b1733918..5379e3f4f1 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneAuthenticationModule.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneAuthenticationModule.java @@ -39,7 +39,6 @@ import org.jclouds.location.suppliers.ZoneIdToURISupplier; import org.jclouds.location.suppliers.ZoneIdsSupplier; import org.jclouds.location.suppliers.derived.RegionIdsFromRegionIdToURIKeySet; import org.jclouds.location.suppliers.derived.ZoneIdsFromZoneIdToURIKeySet; -import org.jclouds.openstack.Authentication; import org.jclouds.openstack.keystone.v2_0.AuthenticationAsyncClient; import org.jclouds.openstack.keystone.v2_0.AuthenticationClient; import org.jclouds.openstack.keystone.v2_0.domain.Access; diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneParserModule.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneParserModule.java similarity index 100% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneParserModule.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneParserModule.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneProperties.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneProperties.java similarity index 97% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneProperties.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneProperties.java index 9f6bfb4f83..a180e101d6 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneProperties.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneProperties.java @@ -18,7 +18,7 @@ */ package org.jclouds.openstack.keystone.v2_0.config; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; /** * Configuration properties and constants used in Keystone connections. diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneRestClientModule.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneRestClientModule.java similarity index 87% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneRestClientModule.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneRestClientModule.java index 70b672c5cf..7a07dd6444 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneRestClientModule.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeystoneRestClientModule.java @@ -24,12 +24,12 @@ import org.jclouds.http.HttpErrorHandler; import org.jclouds.http.annotation.ClientError; import org.jclouds.http.annotation.Redirection; import org.jclouds.http.annotation.ServerError; -import org.jclouds.openstack.keystone.v2_0.AdminAsyncClient; -import org.jclouds.openstack.keystone.v2_0.AdminClient; import org.jclouds.openstack.keystone.v2_0.KeystoneAsyncClient; import org.jclouds.openstack.keystone.v2_0.KeystoneClient; -import org.jclouds.openstack.keystone.v2_0.ServiceAsyncClient; -import org.jclouds.openstack.keystone.v2_0.ServiceClient; +import org.jclouds.openstack.keystone.v2_0.features.AdminAsyncClient; +import org.jclouds.openstack.keystone.v2_0.features.AdminClient; +import org.jclouds.openstack.keystone.v2_0.features.ServiceAsyncClient; +import org.jclouds.openstack.keystone.v2_0.features.ServiceClient; import org.jclouds.openstack.keystone.v2_0.handlers.KeystoneErrorHandler; import org.jclouds.rest.ConfiguresRestClient; import org.jclouds.rest.config.RestClientModule; @@ -45,7 +45,8 @@ import com.google.common.collect.ImmutableMap; public class KeystoneRestClientModule extends RestClientModule { public static final Map, Class> DELEGATE_MAP = ImmutableMap., Class> builder() - .put(ServiceClient.class, ServiceAsyncClient.class).put(AdminClient.class, AdminAsyncClient.class) + .put(ServiceClient.class, ServiceAsyncClient.class) + .put(AdminClient.class, AdminAsyncClient.class) .build(); public KeystoneRestClientModule() { diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Access.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Access.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Access.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Access.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiAccessKeyCredentials.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiAccessKeyCredentials.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiAccessKeyCredentials.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiAccessKeyCredentials.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiMetadata.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiMetadata.java similarity index 98% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiMetadata.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiMetadata.java index 768ad8c8c5..5b78d101c3 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiMetadata.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/ApiMetadata.java @@ -25,7 +25,7 @@ import java.util.Date; import java.util.Set; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Resource; import com.google.common.base.Objects; import com.google.common.base.Objects.ToStringHelper; diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Endpoint.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Endpoint.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Endpoint.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Endpoint.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/MediaType.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/MediaType.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/MediaType.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/MediaType.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/PasswordCredentials.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/PasswordCredentials.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/PasswordCredentials.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/PasswordCredentials.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Role.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Role.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Role.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Role.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Service.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Service.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Service.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Service.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Tenant.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Tenant.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Tenant.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Tenant.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Token.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Token.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Token.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/Token.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/User.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/User.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/User.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/domain/User.java diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AdminAsyncClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/AdminAsyncClient.java similarity index 98% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AdminAsyncClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/AdminAsyncClient.java index fa58e3b901..2c259af154 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AdminAsyncClient.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/AdminAsyncClient.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import java.util.Set; @@ -28,13 +28,13 @@ import javax.ws.rs.PathParam; import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; import org.jclouds.openstack.keystone.v2_0.domain.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.domain.Endpoint; import org.jclouds.openstack.keystone.v2_0.domain.Role; import org.jclouds.openstack.keystone.v2_0.domain.Tenant; import org.jclouds.openstack.keystone.v2_0.domain.Token; import org.jclouds.openstack.keystone.v2_0.domain.User; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AdminClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/AdminClient.java similarity index 98% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AdminClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/AdminClient.java index def212949f..bbaa922aba 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/AdminClient.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/AdminClient.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import java.util.Set; import java.util.concurrent.TimeUnit; diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/ServiceAsyncClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/ServiceAsyncClient.java similarity index 94% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/ServiceAsyncClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/ServiceAsyncClient.java index 9cc665fd91..7a7f10d209 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/ServiceAsyncClient.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/ServiceAsyncClient.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import java.util.Set; @@ -25,9 +25,9 @@ import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; import org.jclouds.openstack.keystone.v2_0.domain.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.domain.Tenant; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/ServiceClient.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/ServiceClient.java similarity index 96% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/ServiceClient.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/ServiceClient.java index a09a78e3eb..604f8d3705 100644 --- a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/ServiceClient.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/features/ServiceClient.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import java.util.Set; import java.util.concurrent.TimeUnit; diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/filters/AuthenticateRequest.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/filters/AuthenticateRequest.java new file mode 100644 index 0000000000..293ab1ce13 --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/filters/AuthenticateRequest.java @@ -0,0 +1,54 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.keystone.v2_0.filters; + +import javax.inject.Inject; +import javax.inject.Singleton; + +import org.jclouds.http.HttpException; +import org.jclouds.http.HttpRequest; +import org.jclouds.http.HttpRequestFilter; +import org.jclouds.http.utils.ModifyRequest; +import org.jclouds.openstack.keystone.v2_0.config.Authentication; +import org.jclouds.openstack.v2_0.reference.AuthHeaders; + +import com.google.common.base.Supplier; + +/** + * Signs the Keystone-based request. This will update the Authentication Token before 24 hours is up. + * + * @author Adrian Cole + * + */ +@Singleton +public class AuthenticateRequest implements HttpRequestFilter { + + private final Supplier authTokenProvider; + + @Inject + public AuthenticateRequest(@Authentication Supplier authTokenProvider) { + this.authTokenProvider = authTokenProvider; + } + + @Override + public HttpRequest filter(HttpRequest request) throws HttpException { + return ModifyRequest.replaceHeader(request, AuthHeaders.AUTH_TOKEN, authTokenProvider.get()); + } + +} \ No newline at end of file diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURL.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURL.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURL.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURL.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticateApiAccessKeyCredentials.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticateApiAccessKeyCredentials.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticateApiAccessKeyCredentials.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticateApiAccessKeyCredentials.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticatePasswordCredentials.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticatePasswordCredentials.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticatePasswordCredentials.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/AuthenticatePasswordCredentials.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToRegion.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToRegion.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToRegion.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToRegion.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierAdminURI.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierAdminURI.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierAdminURI.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierAdminURI.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierURI.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierURI.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierURI.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/EndpointToSupplierURI.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNull.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNull.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNull.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNull.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/RegionToAdminEndpointURI.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/RegionToAdminEndpointURI.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/RegionToAdminEndpointURI.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/RegionToAdminEndpointURI.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegion.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegion.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegion.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegion.java diff --git a/labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/KeystoneErrorHandler.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/KeystoneErrorHandler.java similarity index 100% rename from labs/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/KeystoneErrorHandler.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/KeystoneErrorHandler.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java similarity index 92% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java index 91fc560eaa..339dbb6d2b 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java @@ -29,7 +29,6 @@ import org.jclouds.http.HttpResponse; import org.jclouds.http.HttpRetryHandler; import org.jclouds.logging.Logger; import org.jclouds.openstack.keystone.v2_0.domain.Access; -import org.jclouds.openstack.reference.AuthHeaders; import com.google.common.cache.LoadingCache; import com.google.common.collect.Multimap; @@ -62,8 +61,8 @@ public class RetryOnRenew implements HttpRetryHandler { case 401: // Do not retry on 401 from authentication request Multimap headers = command.getCurrentRequest().getHeaders(); - if (headers != null && headers.containsKey(AuthHeaders.AUTH_USER) - && headers.containsKey(AuthHeaders.AUTH_KEY) && !headers.containsKey(AuthHeaders.AUTH_TOKEN)) { + if (headers != null && headers.containsKey("X-Auth-User") + && headers.containsKey("X-Auth-Key") && !headers.containsKey("X-Auth-Token")) { retry = false; } else { byte[] content = closeClientButKeepContentStream(response); diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/LocationIdToURIFromAccessForTypeAndVersionSupplier.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/LocationIdToURIFromAccessForTypeAndVersionSupplier.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/LocationIdToURIFromAccessForTypeAndVersionSupplier.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/LocationIdToURIFromAccessForTypeAndVersionSupplier.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplier.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplier.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplier.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplier.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURISupplier.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURISupplier.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURISupplier.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURISupplier.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplier.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplier.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplier.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplier.java diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplier.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplier.java similarity index 100% rename from common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplier.java rename to apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplier.java diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java new file mode 100644 index 0000000000..f4f764739f --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java @@ -0,0 +1,52 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Name 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.jclouds.openstack.v2_0; + +/** + * An OpenStack service, such as Compute (Nova), Object Storage (Swift), or Image Service (Glance). + * A service provides one or more endpoints through which users can access resources and perform + * (presumably useful) operations. + * + * @author Adrian Cole + * @see + */ +public interface ServiceType { + /** + * Object Storage (Swift) + */ + public static final String OBJECT_STORE = "object-store"; + /** + * Compute (Nova) + */ + public static final String COMPUTE = "compute"; + /** + * Image Service (Glance) + */ + public static final String IMAGE = "image"; + /** + * Identity Service (Keystone) + */ + public static final String IDENTITY = "identity"; + /** + * Network Service (Quantum) + */ + public static final String NETWORK = "network"; +} \ No newline at end of file diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Link.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Link.java new file mode 100644 index 0000000000..521bd30c29 --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Link.java @@ -0,0 +1,207 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Href 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.jclouds.openstack.v2_0.domain; + +import static com.google.common.base.Objects.equal; +import static com.google.common.base.Objects.toStringHelper; +import static com.google.common.base.Preconditions.checkNotNull; + +import java.net.URI; + +import org.jclouds.javax.annotation.Nullable; + +import com.google.common.base.Objects; +import com.google.gson.annotations.SerializedName; + +/** + * For convenience, resources contain links to themselves. This allows a client to easily obtain a + * resource URIs rather than to construct them. + * + * @author AdrianCole + * @see + */ +public class Link { + /** + * Relations associated with resources. + */ + public static enum Relation { + /** + * a versioned link to the resource. These links should be used in cases where the link will + * be followed immediately. + */ + SELF, + /** + * a permanent link to a resource that is appropriate for long term storage. + */ + BOOKMARK, + /** + * + */ + DESCRIBEDBY, + /** + * an alternate representation of the resource. For example, an OpenStack Compute image may + * have an alternate representation in the OpenStack Image service. + */ + ALTERNATE, + /** + * the value returned by the OpenStack service was not recognized. + */ + UNRECOGNIZED; + + public String value() { + return name().toLowerCase(); + } + + public static Relation fromValue(String v) { + try { + return valueOf(v.toUpperCase()); + } catch (IllegalArgumentException e) { + return UNRECOGNIZED; + } + } + + } + + public static Link create(Relation relation, URI href) { + return new Link(relation, null, href); + } + + public static Link create(Relation relation,String type, URI href) { + return new Link(relation, type, href); + } + + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return builder().fromLink(this); + } + + public static class Builder { + protected Relation relation; + protected String type; + protected URI href; + + /** + * @see Link#getRelation() + */ + public Builder relation(Relation relation) { + this.relation = checkNotNull(relation, "relation"); + return this; + } + + /** + * @see Link#getType() + */ + public Builder type(String type) { + this.type = type; + return this; + } + + /** + * @see Link#getHref() + */ + public Builder href(URI href) { + this.href = checkNotNull(href, "href"); + return this; + } + + public Link build(){ + return new Link(relation, type, href); + } + + public Builder fromLink(Link from) { + return relation(from.getRelation()).type(from.getType()).href(from.getHref()); + } + } + + protected Link() { + // we want serializers like Gson to work w/o using sun.misc.Unsafe, + // prohibited in GAE. This also implies fields are not final. + // see http://code.google.com/p/jclouds/issues/detail?id=925 + } + + @SerializedName("rel") + protected Relation relation; + protected String type; + protected URI href; + + protected Link(Relation relation, @Nullable String type, URI href) { + this.relation = checkNotNull(relation, "relation"); + this.type = type; + this.href = checkNotNull(href, "href"); + } + + /** + * There are three kinds of link relations associated with resources. A self link contains a + * versioned link to the resource. These links should be used in cases where the link will be + * followed immediately. A bookmark link provides a permanent link to a resource that is + * appropriate for long term storage. An alternate link can contain an alternate representation + * of the resource. For example, an OpenStack Compute image may have an alternate representation + * in the OpenStack Image service. Note that the type attribute here is used to provide a hint as + * to the type of representation to expect when following the link. + * + * @return the relation of the resource in the current OpenStack deployment + */ + public Relation getRelation() { + return relation; + } + + /** + * @return the type of the resource or null if not specified + */ + @Nullable + public String getType() { + return type; + } + + /** + * @return the href of the resource + */ + public URI getHref() { + return href; + } + + @Override + public boolean equals(Object object) { + if (this == object) { + return true; + } + if (object instanceof Link) { + final Link other = Link.class.cast(object); + return equal(relation, other.relation) && equal(type, other.type) && equal(href, other.href); + } else { + return false; + } + } + + @Override + public int hashCode() { + return Objects.hashCode(relation, type, href); + } + + @Override + public String toString() { + return toStringHelper("").add("relation", relation).add("type", type).add("href", href).toString(); + } + +} diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Resource.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Resource.java new file mode 100644 index 0000000000..84dd35eb1f --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/domain/Resource.java @@ -0,0 +1,185 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Name 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.jclouds.openstack.v2_0.domain; + +import static com.google.common.base.Preconditions.checkNotNull; + +import java.util.Collections; +import java.util.Set; + +import org.jclouds.javax.annotation.Nullable; + +import com.google.common.base.Objects; +import com.google.common.base.Objects.ToStringHelper; +import com.google.common.collect.ImmutableSet; + +/** + * Resource found in a paginated collection + * + * @author AdrianCole + * @see + */ +public class Resource implements Comparable { + + public static Builder builder() { + return new ConcreteBuilder(); + } + + public Builder toBuilder() { + return new ConcreteBuilder().fromResource(this); + } + + public static abstract class Builder> { + protected abstract T self(); + + private String id; + private String name; + private Set links = ImmutableSet.of(); + + /** + * @see Resource#getId() + */ + public T id(String id) { + this.id = id; + return self(); + } + + /** + * @see Resource#getName() + */ + public T name(String name) { + this.name = name; + return self(); + } + + /** + * @see Resource#getLinks() + */ + public T links(Link... links) { + return links(ImmutableSet.copyOf(checkNotNull(links, "links"))); + } + + /** + * @see Resource#getLinks() + */ + public T links(Set links) { + this.links = links; + return self(); + } + + public Resource build() { + return new Resource(this); + } + + public T fromResource(Resource in) { + return this + .id(in.getId()) + .name(in.getName()) + .links(in.getLinks()) + ; + } + } + + private static class ConcreteBuilder extends Builder { + @Override + protected ConcreteBuilder self() { + return this; + } + } + + protected Resource() { + // we want serializers like Gson to work w/o using sun.misc.Unsafe, + // prohibited in GAE. This also implies fields are not final. + // see http://code.google.com/p/jclouds/issues/detail?id=925 + } + + private String id; + private String name; + private Set links = ImmutableSet.of(); + + protected Resource(Builder builder) { + this.id = checkNotNull(builder.id, "id"); + this.name = builder.name; + this.links = ImmutableSet.copyOf(checkNotNull(builder.links, "links")); + } + + /** + * When providing an ID, it is assumed that the resource exists in the current OpenStack + * deployment + * + * @return the id of the resource in the current OpenStack deployment + */ + public String getId() { + return id; + } + + /** + * @return the name of the resource + */ + @Nullable + public String getName() { + return name; + } + + /** + * @return the links of the id address allocated to the new server + */ + public Set getLinks() { + return Collections.unmodifiableSet(this.links); + } + + @Override + public int hashCode() { + return Objects.hashCode(id, name, links); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) return true; + if (obj == null || getClass() != obj.getClass()) return false; + Resource that = Resource.class.cast(obj); + return Objects.equal(this.getId(), that.getId()) + && Objects.equal(this.name, that.name) + && Objects.equal(this.links, that.links); + } + + protected ToStringHelper string() { + return Objects.toStringHelper("") + .add("id", getId()) + .add("name", name) + .add("links", links); + } + + @Override + public String toString() { + return string().toString(); + } + @Override + public int compareTo(Resource that) { + if (that == null) + return 1; + if (this == that) + return 0; + return this.getId().compareTo(that.getId()); + } + +} diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/options/BaseListOptions.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/options/BaseListOptions.java new file mode 100644 index 0000000000..f21f1d047d --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/options/BaseListOptions.java @@ -0,0 +1,100 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.options; + +import static com.google.common.base.Preconditions.checkNotNull; +import static com.google.common.base.Preconditions.checkState; + +import java.util.Date; + +import org.jclouds.http.options.BaseHttpRequestOptions; + +/** + * Options used to control paginated results (aka list commands). + * + * @see + * @author Adrian Cole + */ +public class BaseListOptions extends BaseHttpRequestOptions { + public static final BaseListOptions NONE = new BaseListOptions(); + + /** + * Only return objects changed since this time. + */ + public BaseListOptions changesSince(Date ifModifiedSince) { + this.queryParameters.put("changes-since", checkNotNull(ifModifiedSince, "ifModifiedSince") + .getTime() + / 1000 + ""); + return this; + } + + /** + * Indicates where to begin listing. The list will only include objects that occur after the + * offset. This is convenient for pagination: To get the next page of results use the last result + * number of the current page + current page offset as the offset. + */ + public BaseListOptions startAt(long offset) { + checkState(offset >= 0, "offset must be >= 0"); + queryParameters.put("offset", Long.toString(checkNotNull(offset, "offset"))); + return this; + } + + /** + * To reduce load on the service, list operations will return a maximum of 1,000 items at a time. + * To navigate the collection, the parameters limit and offset can be set in the URI + * (e.g.?limit=0&offset=0). If an offset is given beyond the end of a list an empty list will be + * returned. + *

+ * Note that list operations never return itemNotFound (404) faults. + */ + public BaseListOptions maxResults(int limit) { + checkState(limit >= 0, "limit must be >= 0"); + checkState(limit <= 10000, "limit must be <= 10000"); + queryParameters.put("limit", Integer.toString(limit)); + return this; + } + + public static class Builder { + + /** + * @see BaseListOptions#startAt(long) + */ + public static BaseListOptions startAt(long prefix) { + BaseListOptions options = new BaseListOptions(); + return options.startAt(prefix); + } + + /** + * @see BaseListOptions#maxResults + */ + public static BaseListOptions maxResults(int maxKeys) { + BaseListOptions options = new BaseListOptions(); + return options.maxResults(maxKeys); + } + + /** + * @see BaseListOptions#changesSince(Date) + */ + public static BaseListOptions changesSince(Date since) { + BaseListOptions options = new BaseListOptions(); + return options.changesSince(since); + } + + } +} diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/predicates/LinkPredicates.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/predicates/LinkPredicates.java new file mode 100644 index 0000000000..dc5b12505f --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/predicates/LinkPredicates.java @@ -0,0 +1,103 @@ +/* + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.predicates; + +import static com.google.common.base.Preconditions.checkNotNull; + +import java.net.URI; + +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Link.Relation; + +import com.google.common.base.Predicate; + +/** + * Predicates handy when working with Link Types + * + * @author Adrian Cole + */ + +public class LinkPredicates { + /** + * matches links of the given relation + * + * @param rel relation of the link + * @return predicate that will match links of the given rel + */ + public static Predicate relationEquals(final Relation rel) { + checkNotNull(rel, "rel must be defined"); + + return new Predicate() { + @Override + public boolean apply(Link link) { + return rel.equals(link.getRelation()); + } + + @Override + public String toString() { + return "relEquals(" + rel + ")"; + } + }; + } + + /** + * matches links of the given href + * + * @param href + * @return predicate that will match links of the given href + */ + public static Predicate hrefEquals(final URI href) { + checkNotNull(href, "href must be defined"); + + return new Predicate() { + @Override + public boolean apply(Link link) { + return href.equals(link.getHref()); + } + + @Override + public String toString() { + return "hrefEquals(" + href + ")"; + } + }; + } + + /** + * matches links of the given type + * + * @param type + * ex. application/pdf + * @return predicate that will match links of the given type + */ + public static Predicate typeEquals(final String type) { + checkNotNull(type, "type must be defined"); + + return new Predicate() { + @Override + public boolean apply(Link link) { + return type.equals(link.getType()); + } + + @Override + public String toString() { + return "typeEquals(" + type + ")"; + } + }; + } +} diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/reference/AuthHeaders.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/reference/AuthHeaders.java new file mode 100644 index 0000000000..900e19e98a --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/reference/AuthHeaders.java @@ -0,0 +1,31 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.reference; + +/** + * @author Adrian Cole + * + */ +public interface AuthHeaders { + + public static final String AUTH_USER = "X-Auth-User"; + public static final String AUTH_KEY = "X-Auth-Key"; + public static final String AUTH_TOKEN = "X-Auth-Token"; + +} \ No newline at end of file diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Compute.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Compute.java new file mode 100644 index 0000000000..1b2a932b47 --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Compute.java @@ -0,0 +1,43 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.services; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +import org.jclouds.openstack.v2_0.ServiceType; + +/** + * Compute (Nova) + * + * @author Adrian Cole + * @see + * @see ServiceType#COMPUTE + */ +@Retention(value = RetentionPolicy.RUNTIME) +@Target(value = { ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) +@Qualifier +public @interface Compute { + +} \ No newline at end of file diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Extension.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Extension.java new file mode 100644 index 0000000000..4425814196 --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Extension.java @@ -0,0 +1,79 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.services; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +import org.jclouds.openstack.v2_0.ServiceType; + +/** + * An extension of a {@link ServiceType service}. In order for us to understand + * the context of the extension, we must consider the extensions call. + * + *
+ * For our purposes, the minimal context of an extension is the type of the + * service it extends ex. {@link ServiceType#COMPUTE}, and its namespace ex. http://docs.openstack.org + * /ext/keypairs/api/v1.1. + * + * @author Adrian Cole + * + * @see ServiceType + * @see + * @see + * @see + */ +@Retention(value = RetentionPolicy.RUNTIME) +@Target(value = { ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) +@Qualifier +public @interface Extension { + + /** + * the service type this is an extension of. + * + *

note

+ * + * This isn't necessarily one of the built-in {@link ServiceType services}, + * it could be an extension of a custom service. + * + * @return the service type this is an extension of. + * + */ + String of(); + + /** + * namespace ex. http + * ://docs.openstack.org /ext/keypairs/api/v1.1. + * + * @return the namespace of the extension + */ + String namespace(); + +} \ No newline at end of file diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Image.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Image.java new file mode 100644 index 0000000000..0baad0bb1d --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/Image.java @@ -0,0 +1,43 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.services; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +import org.jclouds.openstack.v2_0.ServiceType; + +/** + * Image Service (Glance) + * + * @author Adrian Cole + * @see + * @see ServiceType#IMAGE + */ +@Retention(value = RetentionPolicy.RUNTIME) +@Target(value = { ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) +@Qualifier +public @interface Image { + +} \ No newline at end of file diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/ObjectStore.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/ObjectStore.java new file mode 100644 index 0000000000..e271ddb1c3 --- /dev/null +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/services/ObjectStore.java @@ -0,0 +1,43 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.services; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +import org.jclouds.openstack.v2_0.ServiceType; + +/** + * Object Storage (Swift) + * + * @author Adrian Cole + * @see + * @see ServiceType#OBJECT_STORE + */ +@Retention(value = RetentionPolicy.RUNTIME) +@Target(value = { ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) +@Qualifier +public @interface ObjectStore { + +} \ No newline at end of file diff --git a/labs/openstack-keystone/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata b/apis/openstack-keystone/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata similarity index 100% rename from labs/openstack-keystone/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata rename to apis/openstack-keystone/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata diff --git a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/AdminClientExpectTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/AdminClientExpectTest.java similarity index 99% rename from labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/AdminClientExpectTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/AdminClientExpectTest.java index 16753c99a7..9ca48068c4 100644 --- a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/AdminClientExpectTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/AdminClientExpectTest.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import static org.testng.Assert.assertEquals; @@ -31,7 +31,7 @@ import java.util.Set; import org.jclouds.date.DateService; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.http.HttpResponseException; -import org.jclouds.openstack.domain.Link; +import org.jclouds.openstack.keystone.v2_0.KeystoneClient; import org.jclouds.openstack.keystone.v2_0.domain.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.domain.Endpoint; import org.jclouds.openstack.keystone.v2_0.domain.MediaType; @@ -40,6 +40,7 @@ import org.jclouds.openstack.keystone.v2_0.domain.Tenant; import org.jclouds.openstack.keystone.v2_0.domain.Token; import org.jclouds.openstack.keystone.v2_0.domain.User; import org.jclouds.openstack.keystone.v2_0.internal.BaseKeystoneRestClientExpectTest; +import org.jclouds.openstack.v2_0.domain.Link; import org.jclouds.rest.AuthorizationException; import org.testng.annotations.Test; diff --git a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/AdminClientLiveTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/AdminClientLiveTest.java similarity index 96% rename from labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/AdminClientLiveTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/AdminClientLiveTest.java index 82ab9fc504..62db6cd514 100644 --- a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/AdminClientLiveTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/AdminClientLiveTest.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertFalse; @@ -28,15 +28,14 @@ import java.net.URI; import java.util.Set; import org.jclouds.http.HttpRequest; -import org.jclouds.openstack.filters.AuthenticateRequest; import org.jclouds.openstack.keystone.v2_0.domain.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.domain.Endpoint; import org.jclouds.openstack.keystone.v2_0.domain.Role; import org.jclouds.openstack.keystone.v2_0.domain.Tenant; import org.jclouds.openstack.keystone.v2_0.domain.Token; import org.jclouds.openstack.keystone.v2_0.domain.User; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.keystone.v2_0.internal.BaseKeystoneClientLiveTest; -import org.jclouds.openstack.reference.AuthHeaders; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; @@ -57,7 +56,7 @@ public class AdminClientLiveTest extends BaseKeystoneClientLiveTest { public void grabToken() { AuthenticateRequest ar = keystoneContext.getUtils().getInjector().getInstance(AuthenticateRequest.class); HttpRequest test = ar.filter(HttpRequest.builder().method("GET").endpoint(URI.create(endpoint)).build()); - token = Iterables.getOnlyElement(test.getHeaders().get(AuthHeaders.AUTH_TOKEN)); + token = Iterables.getOnlyElement(test.getHeaders().get("X-Auth-Token")); } public void testGetApiMetaData() { diff --git a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/UserClientExpectTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/UserClientExpectTest.java similarity index 96% rename from labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/UserClientExpectTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/UserClientExpectTest.java index 016b972b5c..d6e8504ecc 100644 --- a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/UserClientExpectTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/UserClientExpectTest.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import static org.testng.Assert.assertEquals; @@ -29,11 +29,12 @@ import java.util.Set; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.http.HttpRequest; import org.jclouds.http.HttpResponse; -import org.jclouds.openstack.domain.Link; +import org.jclouds.openstack.keystone.v2_0.KeystoneClient; import org.jclouds.openstack.keystone.v2_0.domain.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.domain.MediaType; import org.jclouds.openstack.keystone.v2_0.domain.Tenant; import org.jclouds.openstack.keystone.v2_0.internal.BaseKeystoneRestClientExpectTest; +import org.jclouds.openstack.v2_0.domain.Link; import com.google.common.collect.ImmutableMultimap; import com.google.common.collect.ImmutableSet; diff --git a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/UserClientLiveTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/UserClientLiveTest.java similarity index 97% rename from labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/UserClientLiveTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/UserClientLiveTest.java index 75788d0359..c1cf75acee 100644 --- a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/UserClientLiveTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/features/UserClientLiveTest.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack.keystone.v2_0; +package org.jclouds.openstack.keystone.v2_0.features; import static org.testng.Assert.assertFalse; import static org.testng.Assert.assertNotNull; diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURLTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURLTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURLTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/AdminURLTest.java diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNullTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNullTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNullTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/PublicURLOrInternalIfNullTest.java diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegionTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegionTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegionTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/functions/ReturnRegionTest.java diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenewTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenewTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenewTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenewTest.java diff --git a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneClientLiveTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneClientLiveTest.java similarity index 100% rename from labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneClientLiveTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneClientLiveTest.java diff --git a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneRestClientExpectTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneRestClientExpectTest.java similarity index 98% rename from labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneRestClientExpectTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneRestClientExpectTest.java index a4ff58b447..102090a500 100644 --- a/labs/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneRestClientExpectTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/BaseKeystoneRestClientExpectTest.java @@ -27,7 +27,7 @@ import javax.ws.rs.core.MediaType; import org.jclouds.http.HttpRequest; import org.jclouds.http.HttpResponse; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.rest.internal.BaseRestClientExpectTest; import com.google.common.base.Objects; diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/KeystoneFixture.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/KeystoneFixture.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/KeystoneFixture.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/internal/KeystoneFixture.java diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseApiMetadataTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseApiMetadataTest.java similarity index 98% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseApiMetadataTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseApiMetadataTest.java index a49337f776..df44b6d504 100644 --- a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseApiMetadataTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseApiMetadataTest.java @@ -25,8 +25,8 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseItemParserTest; -import org.jclouds.openstack.domain.Link; import org.jclouds.openstack.keystone.v2_0.domain.ApiMetadata; +import org.jclouds.openstack.v2_0.domain.Link; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplierTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplierTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplierTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToAdminURIFromAccessForTypeAndVersionSupplierTest.java diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplierTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplierTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplierTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/RegionIdToURIFromAccessForTypeAndVersionSupplierTest.java diff --git a/common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplierTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplierTest.java similarity index 100% rename from common/openstack/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplierTest.java rename to apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/suppliers/ZoneIdToURIFromAccessForTypeAndVersionSupplierTest.java diff --git a/apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/options/BaseListOptionsTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/options/BaseListOptionsTest.java new file mode 100644 index 0000000000..5387aec178 --- /dev/null +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/options/BaseListOptionsTest.java @@ -0,0 +1,77 @@ +/** + * Licensed to jclouds, Inc. (jclouds) under one or more + * contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. jclouds licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.jclouds.openstack.v2_0.options; + +import static org.jclouds.openstack.v2_0.options.BaseListOptions.Builder.changesSince; +import static org.jclouds.openstack.v2_0.options.BaseListOptions.Builder.maxResults; +import static org.jclouds.openstack.v2_0.options.BaseListOptions.Builder.startAt; +import static org.testng.Assert.assertEquals; + +import java.util.Date; + +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableList; + +/** + * Tests behavior of {@code ListOptions} + * + * @author Adrian Cole + */ +@Test(groups = "unit") +public class BaseListOptionsTest { + + public void testChangesSince() { + Date ifModifiedSince = new Date(); + BaseListOptions options = new BaseListOptions().changesSince(ifModifiedSince); + assertEquals(ImmutableList.of(ifModifiedSince.getTime() / 1000 + ""), options + .buildQueryParameters().get("changes-since")); + } + + public void testStartAt() { + long offset = 1; + BaseListOptions options = new BaseListOptions().startAt(offset); + assertEquals(ImmutableList.of("1"), options.buildQueryParameters().get("offset")); + } + + public void testMaxResults() { + int limit = 1; + BaseListOptions options = new BaseListOptions().maxResults(limit); + assertEquals(ImmutableList.of("1"), options.buildQueryParameters().get("limit")); + } + + public void testChangesSinceStatic() { + Date ifModifiedSince = new Date(); + BaseListOptions options = changesSince(ifModifiedSince); + assertEquals(ImmutableList.of(ifModifiedSince.getTime() / 1000 + ""), options + .buildQueryParameters().get("changes-since")); + } + + public void testStartAtStatic() { + long offset = 1; + BaseListOptions options = startAt(offset); + assertEquals(ImmutableList.of("1"), options.buildQueryParameters().get("offset")); + } + + public void testMaxResultsStatic() { + int limit = 1; + BaseListOptions options = maxResults(limit); + assertEquals(ImmutableList.of("1"), options.buildQueryParameters().get("limit")); + } +} diff --git a/apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/predicates/LinkPredicatesTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/predicates/LinkPredicatesTest.java new file mode 100644 index 0000000000..7160e36dff --- /dev/null +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/v2_0/predicates/LinkPredicatesTest.java @@ -0,0 +1,51 @@ +package org.jclouds.openstack.v2_0.predicates; + +import static org.jclouds.openstack.v2_0.predicates.LinkPredicates.hrefEquals; +import static org.jclouds.openstack.v2_0.predicates.LinkPredicates.relationEquals; +import static org.jclouds.openstack.v2_0.predicates.LinkPredicates.typeEquals; + +import java.net.URI; + +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Link.Relation; +import org.testng.annotations.Test; + +/** + * + * @author Adrian Cole + */ +@Test(groups = "unit", testName = "LinkPredicatesTest") +public class LinkPredicatesTest { + Link ref = Link.builder().type("application/pdf").relation(Relation.DESCRIBEDBY).href( + URI.create("http://docs.openstack.org/ext/keypairs/api/v1.1")).build(); + + @Test + public void testRelationEqualsWhenEqual() { + assert relationEquals(Relation.DESCRIBEDBY).apply(ref); + } + + @Test + public void testRelationEqualsWhenNotEqual() { + assert !relationEquals(Relation.UNRECOGNIZED).apply(ref); + } + + @Test + public void testTypeEqualsWhenEqual() { + assert typeEquals("application/pdf").apply(ref); + } + + @Test + public void testTypeEqualsWhenNotEqual() { + assert !typeEquals("foo").apply(ref); + } + + @Test + public void testHrefEqualsWhenEqual() { + assert hrefEquals(URI.create("http://docs.openstack.org/ext/keypairs/api/v1.1")).apply(ref); + } + + @Test + public void testHrefEqualsWhenNotEqual() { + assert !hrefEquals(URI.create("foo")).apply(ref); + } +} diff --git a/common/openstack/src/test/resources/apiMetadataResponse.json b/apis/openstack-keystone/src/test/resources/apiMetadataResponse.json similarity index 100% rename from common/openstack/src/test/resources/apiMetadataResponse.json rename to apis/openstack-keystone/src/test/resources/apiMetadataResponse.json diff --git a/labs/openstack-keystone/src/test/resources/api_metadata.json b/apis/openstack-keystone/src/test/resources/api_metadata.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/api_metadata.json rename to apis/openstack-keystone/src/test/resources/api_metadata.json diff --git a/common/openstack/src/test/resources/keystoneAuthResponse.json b/apis/openstack-keystone/src/test/resources/keystoneAuthResponse.json similarity index 100% rename from common/openstack/src/test/resources/keystoneAuthResponse.json rename to apis/openstack-keystone/src/test/resources/keystoneAuthResponse.json diff --git a/common/openstack/src/test/resources/keystoneAuthResponse_trystack.json b/apis/openstack-keystone/src/test/resources/keystoneAuthResponse_trystack.json similarity index 100% rename from common/openstack/src/test/resources/keystoneAuthResponse_trystack.json rename to apis/openstack-keystone/src/test/resources/keystoneAuthResponse_trystack.json diff --git a/labs/openstack-keystone/src/test/resources/logback.xml b/apis/openstack-keystone/src/test/resources/logback.xml similarity index 63% rename from labs/openstack-keystone/src/test/resources/logback.xml rename to apis/openstack-keystone/src/test/resources/logback.xml index a4f81d3fa6..8f628c3c44 100644 --- a/labs/openstack-keystone/src/test/resources/logback.xml +++ b/apis/openstack-keystone/src/test/resources/logback.xml @@ -1,51 +1,64 @@ - - - - target/test-data/jclouds.log - - - %d %-5p [%c] [%thread] %m%n - - - - - target/test-data/jclouds-wire.log - - - %d %-5p [%c] [%thread] %m%n - - - - - target/test-data/jclouds-blobstore.log - - - %d %-5p [%c] [%thread] %m%n - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + target/test-data/jclouds.log + + + %d %-5p [%c] [%thread] %m%n + + + + + target/test-data/jclouds-wire.log + + + %d %-5p [%c] [%thread] %m%n + + + + + target/test-data/jclouds-compute.log + + + %d %-5p [%c] [%thread] %m%n + + + + + target/test-data/jclouds-ssh.log + + + %d %-5p [%c] [%thread] %m%n + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/labs/openstack-keystone/src/test/resources/tenant_details.json b/apis/openstack-keystone/src/test/resources/tenant_details.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/tenant_details.json rename to apis/openstack-keystone/src/test/resources/tenant_details.json diff --git a/labs/openstack-keystone/src/test/resources/tenant_list.json b/apis/openstack-keystone/src/test/resources/tenant_list.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/tenant_list.json rename to apis/openstack-keystone/src/test/resources/tenant_list.json diff --git a/labs/openstack-keystone/src/test/resources/token_details.json b/apis/openstack-keystone/src/test/resources/token_details.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/token_details.json rename to apis/openstack-keystone/src/test/resources/token_details.json diff --git a/labs/openstack-keystone/src/test/resources/user_details.json b/apis/openstack-keystone/src/test/resources/user_details.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/user_details.json rename to apis/openstack-keystone/src/test/resources/user_details.json diff --git a/labs/openstack-keystone/src/test/resources/user_endpoints.json b/apis/openstack-keystone/src/test/resources/user_endpoints.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/user_endpoints.json rename to apis/openstack-keystone/src/test/resources/user_endpoints.json diff --git a/labs/openstack-keystone/src/test/resources/user_list.json b/apis/openstack-keystone/src/test/resources/user_list.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/user_list.json rename to apis/openstack-keystone/src/test/resources/user_list.json diff --git a/labs/openstack-keystone/src/test/resources/user_role_list.json b/apis/openstack-keystone/src/test/resources/user_role_list.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/user_role_list.json rename to apis/openstack-keystone/src/test/resources/user_role_list.json diff --git a/labs/openstack-keystone/src/test/resources/user_tenant_role_list.json b/apis/openstack-keystone/src/test/resources/user_tenant_role_list.json similarity index 100% rename from labs/openstack-keystone/src/test/resources/user_tenant_role_list.json rename to apis/openstack-keystone/src/test/resources/user_tenant_role_list.json diff --git a/apis/openstack-nova/pom.xml b/apis/openstack-nova/pom.xml index 478c13c04d..49978653f6 100644 --- a/apis/openstack-nova/pom.xml +++ b/apis/openstack-nova/pom.xml @@ -58,8 +58,8 @@ - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} @@ -75,8 +75,8 @@ test - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} test-jar test diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaApiMetadata.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaApiMetadata.java index 570fa8b7ce..870db664d8 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaApiMetadata.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaApiMetadata.java @@ -19,6 +19,7 @@ package org.jclouds.openstack.nova.v1_1; import static org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.SERVICE_TYPE; +import static org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.VERSION; import static org.jclouds.openstack.nova.v1_1.config.NovaProperties.AUTO_ALLOCATE_FLOATING_IPS; import static org.jclouds.openstack.nova.v1_1.config.NovaProperties.AUTO_GENERATE_KEYPAIRS; import static org.jclouds.openstack.nova.v1_1.config.NovaProperties.TIMEOUT_SECURITYGROUP_PRESENT; @@ -28,10 +29,9 @@ import java.util.Properties; import org.jclouds.apis.ApiMetadata; import org.jclouds.compute.ComputeServiceContext; -import org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties; import org.jclouds.openstack.nova.v1_1.compute.config.NovaComputeServiceContextModule; import org.jclouds.openstack.nova.v1_1.config.NovaRestClientModule; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; @@ -74,7 +74,7 @@ public class NovaApiMetadata extends BaseRestApiMetadata { properties.setProperty(SERVICE_TYPE, ServiceType.COMPUTE); // TODO: this doesn't actually do anything yet. - properties.setProperty(KeystoneProperties.VERSION, "2.0"); + properties.setProperty(VERSION, "2.0"); properties.setProperty(AUTO_ALLOCATE_FLOATING_IPS, "false"); properties.setProperty(AUTO_GENERATE_KEYPAIRS, "false"); diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaAsyncClient.java index fc5ab0364d..10de3b2fc3 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaAsyncClient.java @@ -23,7 +23,20 @@ import java.util.Set; import org.jclouds.javax.annotation.Nullable; import org.jclouds.location.Zone; import org.jclouds.location.functions.ZoneToEndpoint; -import org.jclouds.openstack.nova.v1_1.extensions.*; +import org.jclouds.openstack.nova.v1_1.extensions.AdminActionsAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.FlavorExtraSpecsAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.FloatingIPAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAdministrationAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAggregateAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.KeyPairAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaClassAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.SecurityGroupAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.ServerWithSecurityGroupsAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.SimpleTenantUsageAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.VirtualInterfaceAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeTypeAsyncClient; import org.jclouds.openstack.nova.v1_1.features.ExtensionAsyncClient; import org.jclouds.openstack.nova.v1_1.features.FlavorAsyncClient; import org.jclouds.openstack.nova.v1_1.features.ImageAsyncClient; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaClient.java index d7ca6c2081..7f692c639f 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/NovaClient.java @@ -25,7 +25,20 @@ import org.jclouds.concurrent.Timeout; import org.jclouds.javax.annotation.Nullable; import org.jclouds.location.Zone; import org.jclouds.location.functions.ZoneToEndpoint; -import org.jclouds.openstack.nova.v1_1.extensions.*; +import org.jclouds.openstack.nova.v1_1.extensions.AdminActionsClient; +import org.jclouds.openstack.nova.v1_1.extensions.FlavorExtraSpecsClient; +import org.jclouds.openstack.nova.v1_1.extensions.FloatingIPClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAdministrationClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAggregateClient; +import org.jclouds.openstack.nova.v1_1.extensions.KeyPairClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaClassClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaClient; +import org.jclouds.openstack.nova.v1_1.extensions.SecurityGroupClient; +import org.jclouds.openstack.nova.v1_1.extensions.ServerWithSecurityGroupsClient; +import org.jclouds.openstack.nova.v1_1.extensions.SimpleTenantUsageClient; +import org.jclouds.openstack.nova.v1_1.extensions.VirtualInterfaceClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeTypeClient; import org.jclouds.openstack.nova.v1_1.features.ExtensionClient; import org.jclouds.openstack.nova.v1_1.features.FlavorClient; import org.jclouds.openstack.nova.v1_1.features.ImageClient; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java index 231b5be658..b9bfa0ac86 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java @@ -35,7 +35,34 @@ import org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule; import org.jclouds.openstack.nova.v1_1.NovaAsyncClient; import org.jclouds.openstack.nova.v1_1.NovaClient; import org.jclouds.openstack.nova.v1_1.domain.Extension; -import org.jclouds.openstack.nova.v1_1.extensions.*; +import org.jclouds.openstack.nova.v1_1.extensions.AdminActionsAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.AdminActionsClient; +import org.jclouds.openstack.nova.v1_1.extensions.FlavorExtraSpecsAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.FlavorExtraSpecsClient; +import org.jclouds.openstack.nova.v1_1.extensions.FloatingIPAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.FloatingIPClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAdministrationAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAdministrationClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAggregateAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.HostAggregateClient; +import org.jclouds.openstack.nova.v1_1.extensions.KeyPairAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.KeyPairClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaClassAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaClassClient; +import org.jclouds.openstack.nova.v1_1.extensions.QuotaClient; +import org.jclouds.openstack.nova.v1_1.extensions.SecurityGroupAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.SecurityGroupClient; +import org.jclouds.openstack.nova.v1_1.extensions.ServerWithSecurityGroupsAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.ServerWithSecurityGroupsClient; +import org.jclouds.openstack.nova.v1_1.extensions.SimpleTenantUsageAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.SimpleTenantUsageClient; +import org.jclouds.openstack.nova.v1_1.extensions.VirtualInterfaceAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.VirtualInterfaceClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeTypeAsyncClient; +import org.jclouds.openstack.nova.v1_1.extensions.VolumeTypeClient; import org.jclouds.openstack.nova.v1_1.features.ExtensionAsyncClient; import org.jclouds.openstack.nova.v1_1.features.ExtensionClient; import org.jclouds.openstack.nova.v1_1.features.FlavorAsyncClient; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Extension.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Extension.java index 25d2a922d0..7242b5afb5 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Extension.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Extension.java @@ -21,7 +21,7 @@ package org.jclouds.openstack.nova.v1_1.domain; import java.net.URI; import java.util.Date; -import org.jclouds.openstack.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Resource; import com.google.common.base.Objects; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Flavor.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Flavor.java index 9aa94c14cc..1746539803 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Flavor.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Flavor.java @@ -18,7 +18,7 @@ */ package org.jclouds.openstack.nova.v1_1.domain; -import org.jclouds.openstack.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Resource; import com.google.common.base.Objects; import com.google.common.base.Optional; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/HostAggregate.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/HostAggregate.java index b3e018ce52..13e1d176be 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/HostAggregate.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/HostAggregate.java @@ -26,8 +26,8 @@ import java.util.Map; import java.util.Set; import com.google.common.base.Objects; -import com.google.common.base.Objects.ToStringHelper; import com.google.common.base.Optional; +import com.google.common.base.Objects.ToStringHelper; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.gson.annotations.SerializedName; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Image.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Image.java index dc374b8b57..a6292fdf59 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Image.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Image.java @@ -21,7 +21,7 @@ package org.jclouds.openstack.nova.v1_1.domain; import java.util.Date; import java.util.Map; -import org.jclouds.openstack.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Resource; import com.google.common.base.Objects; import com.google.common.base.Predicates; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Server.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Server.java index 376cc5eaea..d973dd2d14 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Server.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/Server.java @@ -25,8 +25,8 @@ import java.util.Map; import java.util.Set; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.extensions.KeyPairClient; +import org.jclouds.openstack.v2_0.domain.Resource; import org.jclouds.util.Multimaps2; import com.google.common.base.Optional; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/ServerCreated.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/ServerCreated.java index 6ca7505385..3ef956913b 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/ServerCreated.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/ServerCreated.java @@ -18,7 +18,7 @@ */ package org.jclouds.openstack.nova.v1_1.domain; -import org.jclouds.openstack.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Resource; import com.google.common.base.Objects.ToStringHelper; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/VolumeType.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/VolumeType.java index 9fe73ef01e..796f3d5087 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/VolumeType.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/domain/VolumeType.java @@ -25,8 +25,8 @@ import java.util.Date; import java.util.Map; import com.google.common.base.Objects; -import com.google.common.base.Objects.ToStringHelper; import com.google.common.base.Optional; +import com.google.common.base.Objects.ToStringHelper; import com.google.common.collect.ImmutableMap; import com.google.gson.annotations.SerializedName; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsAsyncClient.java index 94cf140cf6..3801641704 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsAsyncClient.java @@ -25,12 +25,12 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.BackupType; import org.jclouds.openstack.nova.v1_1.functions.ParseImageIdFromLocationHeader; import org.jclouds.openstack.nova.v1_1.options.CreateBackupOfServerOptions; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.Payload; import org.jclouds.rest.annotations.PayloadParam; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsClient.java index 1c0ae5c3f6..28fd956db5 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/AdminActionsClient.java @@ -23,8 +23,8 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.BackupType; import org.jclouds.openstack.nova.v1_1.options.CreateBackupOfServerOptions; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provide additional actions for servers: diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsAsyncClient.java index 24ea199e4a..d86eec2aac 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsAsyncClient.java @@ -32,9 +32,9 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.MapBinder; import org.jclouds.rest.annotations.Payload; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClient.java index 01f0fb0847..f9c80c0649 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClient.java @@ -22,9 +22,9 @@ import java.util.Map; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.RequestFilters; /** diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPAsyncClient.java index b25517d138..6c96f8a00b 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPAsyncClient.java @@ -29,11 +29,11 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.FloatingIP; import org.jclouds.openstack.nova.v1_1.features.ExtensionAsyncClient; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.Payload; import org.jclouds.rest.annotations.PayloadParam; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPClient.java index caab0d5d1a..768ba9c0d7 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/FloatingIPClient.java @@ -23,8 +23,8 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.FloatingIP; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides synchronous access to Floating IPs. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationAsyncClient.java index 93c9e32eb2..6758c67afd 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationAsyncClient.java @@ -28,7 +28,7 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.Host; import org.jclouds.openstack.nova.v1_1.domain.HostResourceUsage; import org.jclouds.openstack.nova.v1_1.functions.FieldValueResponseParsers.MaintenanceModeDisabledResponseParser; @@ -38,8 +38,8 @@ import org.jclouds.openstack.nova.v1_1.functions.FieldValueResponseParsers.Power import org.jclouds.openstack.nova.v1_1.functions.FieldValueResponseParsers.PowerIsStartupResponseParser; import org.jclouds.openstack.nova.v1_1.functions.FieldValueResponseParsers.StatusDisabledResponseParser; import org.jclouds.openstack.nova.v1_1.functions.FieldValueResponseParsers.StatusEnabledResponseParser; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.Payload; import org.jclouds.rest.annotations.RequestFilters; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationClient.java index 1e43480a97..b216930644 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAdministrationClient.java @@ -24,8 +24,8 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.Host; import org.jclouds.openstack.nova.v1_1.domain.HostResourceUsage; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides asynchronous access to Host Administration features via the REST API. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateAsyncClient.java index d5b492e649..6ebc533ad4 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateAsyncClient.java @@ -32,10 +32,10 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.HostAggregate; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.PayloadParam; import org.jclouds.rest.annotations.RequestFilters; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateClient.java index 2548e2e301..c3f9e3c906 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/HostAggregateClient.java @@ -23,10 +23,10 @@ import java.util.Set; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.HostAggregate; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.RequestFilters; /** diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairAsyncClient.java index 415a1490e9..0900524984 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairAsyncClient.java @@ -30,11 +30,11 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.KeyPair; import org.jclouds.openstack.nova.v1_1.features.ExtensionAsyncClient; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.Payload; import org.jclouds.rest.annotations.PayloadParam; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairClient.java index 73a8c5ea76..5b1c1a4303 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/KeyPairClient.java @@ -24,8 +24,8 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.KeyPair; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides synchronous access to Security Groups. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaAsyncClient.java index f1e042fc80..7047cf5eaf 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaAsyncClient.java @@ -29,10 +29,10 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.Quotas; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.MapBinder; import org.jclouds.rest.annotations.PayloadParam; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassAsyncClient.java index d307044c53..3a0cec28b4 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassAsyncClient.java @@ -29,16 +29,15 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.QuotaClass; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.MapBinder; import org.jclouds.rest.annotations.PayloadParam; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; -import org.jclouds.rest.annotations.WrapWith; import org.jclouds.rest.binders.BindToJsonPayload; import org.jclouds.rest.functions.ReturnNullOnNotFoundOr404; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClient.java index b4c3c8666b..93cb604307 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClient.java @@ -21,11 +21,10 @@ package org.jclouds.openstack.nova.v1_1.extensions; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.QuotaClass; -import org.jclouds.openstack.nova.v1_1.domain.Quotas; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.RequestFilters; /** diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClient.java index e5ab08c73b..d47d8543fc 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClient.java @@ -21,10 +21,10 @@ package org.jclouds.openstack.nova.v1_1.extensions; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.Quotas; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.RequestFilters; /** diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupAsyncClient.java index 718ad18ce9..f001fd8b1a 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupAsyncClient.java @@ -29,13 +29,13 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.binders.BindSecurityGroupRuleToJsonPayload; import org.jclouds.openstack.nova.v1_1.domain.Ingress; import org.jclouds.openstack.nova.v1_1.domain.SecurityGroup; import org.jclouds.openstack.nova.v1_1.domain.SecurityGroupRule; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.MapBinder; import org.jclouds.rest.annotations.Payload; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupClient.java index f209417ce0..678bc246df 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SecurityGroupClient.java @@ -25,8 +25,8 @@ import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.Ingress; import org.jclouds.openstack.nova.v1_1.domain.SecurityGroup; import org.jclouds.openstack.nova.v1_1.domain.SecurityGroupRule; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides synchronous access to Security Groups. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsAsyncClient.java index 423d7ec97c..927ea7c51a 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsAsyncClient.java @@ -24,10 +24,10 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.ServerWithSecurityGroups; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClient.java index 3fab8ec83b..cdf1b049f0 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClient.java @@ -22,8 +22,8 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.ServerWithSecurityGroups; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides synchronous access to Server details including security group, referred to as the CREATESERVEREXT extension diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageAsyncClient.java index 4e2e2b80cf..1eb86ec163 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageAsyncClient.java @@ -26,10 +26,10 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.SimpleTenantUsage; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageClient.java index dcef9aafde..334bc180e2 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/SimpleTenantUsageClient.java @@ -23,8 +23,8 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.SimpleTenantUsage; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides asynchronous access to Simple Tenant Usage via the REST API. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceAsyncClient.java index 4cd07f6737..8a258346b0 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceAsyncClient.java @@ -26,10 +26,10 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.VirtualInterface; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceClient.java index acf7692228..56688df397 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VirtualInterfaceClient.java @@ -23,8 +23,8 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.openstack.nova.v1_1.domain.VirtualInterface; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides synchronous access to Virtual Interface features (VIFs). diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeAsyncClient.java index 33039a0a7b..7e6e0532bc 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeAsyncClient.java @@ -29,17 +29,16 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.Volume; import org.jclouds.openstack.nova.v1_1.domain.VolumeAttachment; import org.jclouds.openstack.nova.v1_1.domain.VolumeSnapshot; import org.jclouds.openstack.nova.v1_1.options.CreateVolumeOptions; import org.jclouds.openstack.nova.v1_1.options.CreateVolumeSnapshotOptions; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.MapBinder; -import org.jclouds.rest.annotations.Payload; import org.jclouds.rest.annotations.PayloadParam; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeClient.java index b4b9c66eee..5b6d72cc99 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeClient.java @@ -27,8 +27,8 @@ import org.jclouds.openstack.nova.v1_1.domain.VolumeAttachment; import org.jclouds.openstack.nova.v1_1.domain.VolumeSnapshot; import org.jclouds.openstack.nova.v1_1.options.CreateVolumeOptions; import org.jclouds.openstack.nova.v1_1.options.CreateVolumeSnapshotOptions; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; /** * Provides synchronous access to Volumes. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeAsyncClient.java index dd7caf5ef7..4f190997a2 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeAsyncClient.java @@ -31,11 +31,11 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.VolumeType; import org.jclouds.openstack.nova.v1_1.options.CreateVolumeTypeOptions; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.MapBinder; import org.jclouds.rest.annotations.Payload; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeClient.java index 39a1695bc3..d8992da616 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/extensions/VolumeTypeClient.java @@ -23,11 +23,11 @@ import java.util.Set; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.VolumeType; import org.jclouds.openstack.nova.v1_1.options.CreateVolumeTypeOptions; -import org.jclouds.openstack.services.Extension; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; +import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.RequestFilters; /** diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ExtensionAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ExtensionAsyncClient.java index 37d099b85a..a051c81a28 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ExtensionAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ExtensionAsyncClient.java @@ -26,7 +26,7 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.Extension; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorAsyncClient.java index 887b7a7d90..00adfc8135 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorAsyncClient.java @@ -26,9 +26,9 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.Flavor; +import org.jclouds.openstack.v2_0.domain.Resource; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorClient.java index 12780ce772..f3d1fa320c 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/FlavorClient.java @@ -22,8 +22,8 @@ import java.util.Set; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.domain.Flavor; +import org.jclouds.openstack.v2_0.domain.Resource; /** * Provides asynchronous access to Flavors via their REST API. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageAsyncClient.java index baa1806fa2..784d08881a 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageAsyncClient.java @@ -27,9 +27,9 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.Image; +import org.jclouds.openstack.v2_0.domain.Resource; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SelectJson; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageClient.java index 9376901d7c..5c91cc24d2 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ImageClient.java @@ -22,8 +22,8 @@ import java.util.Set; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.domain.Image; +import org.jclouds.openstack.v2_0.domain.Resource; /** * Provides synchronous access to Images. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerAsyncClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerAsyncClient.java index 93dbaea18b..0189dbc2b3 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerAsyncClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerAsyncClient.java @@ -30,14 +30,14 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.filters.AuthenticateRequest; -import org.jclouds.openstack.nova.v1_1.domain.ServerCreated; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v1_1.domain.RebootType; import org.jclouds.openstack.nova.v1_1.domain.Server; +import org.jclouds.openstack.nova.v1_1.domain.ServerCreated; import org.jclouds.openstack.nova.v1_1.functions.ParseImageIdFromLocationHeader; import org.jclouds.openstack.nova.v1_1.options.CreateServerOptions; import org.jclouds.openstack.nova.v1_1.options.RebuildServerOptions; +import org.jclouds.openstack.v2_0.domain.Resource; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.MapBinder; import org.jclouds.rest.annotations.Payload; diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerClient.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerClient.java index 064d05eed2..1fb3cb3a96 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerClient.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/features/ServerClient.java @@ -22,12 +22,12 @@ import java.util.Set; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.nova.v1_1.domain.ServerCreated; import org.jclouds.openstack.nova.v1_1.domain.RebootType; import org.jclouds.openstack.nova.v1_1.domain.Server; +import org.jclouds.openstack.nova.v1_1.domain.ServerCreated; import org.jclouds.openstack.nova.v1_1.options.CreateServerOptions; import org.jclouds.openstack.nova.v1_1.options.RebuildServerOptions; +import org.jclouds.openstack.v2_0.domain.Resource; /** * Provides synchronous access to Server. diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.java index c5d3219083..e3dbb2e24c 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.java @@ -94,8 +94,8 @@ public class PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensio @Override public Optional apply(ClassMethodArgsAndReturnVal input) { - Optional ext = Optional.fromNullable(input.getClazz().getAnnotation( - org.jclouds.openstack.services.Extension.class)); + Optional ext = Optional.fromNullable(input.getClazz().getAnnotation( + org.jclouds.openstack.v2_0.services.Extension.class)); if (ext.isPresent()) { checkState(input.getArgs() != null && input.getArgs().length == 1, "expecting an arg %s", input); URI namespace = URI.create(ext.get().namespace()); diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/options/ListOptions.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/options/ListOptions.java index 1f922bbbd2..ca350111dd 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/options/ListOptions.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/options/ListOptions.java @@ -20,7 +20,7 @@ package org.jclouds.openstack.nova.v1_1.options; import java.util.Date; -import org.jclouds.openstack.options.BaseListOptions; +import org.jclouds.openstack.v2_0.options.BaseListOptions; /** * Options used to control the amount of detail in the request. diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/compute/functions/ServerInZoneToNodeMetadataTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/compute/functions/ServerInZoneToNodeMetadataTest.java index 6b9f64b290..2468bb4df8 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/compute/functions/ServerInZoneToNodeMetadataTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/compute/functions/ServerInZoneToNodeMetadataTest.java @@ -37,12 +37,12 @@ import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.domain.Location; import org.jclouds.domain.LocationBuilder; import org.jclouds.domain.LocationScope; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.compute.config.NovaComputeServiceContextModule; import org.jclouds.openstack.nova.v1_1.domain.Server; import org.jclouds.openstack.nova.v1_1.domain.zonescoped.ServerInZone; import org.jclouds.openstack.nova.v1_1.parse.ParseServerTest; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; import org.testng.annotations.Test; import com.google.common.base.Supplier; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClientLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClientLiveTest.java index 1408af82e8..08a999b53c 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClientLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/FlavorExtraSpecsClientLiveTest.java @@ -24,9 +24,9 @@ import static org.testng.Assert.assertTrue; import java.util.Map; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.features.FlavorClient; import org.jclouds.openstack.nova.v1_1.internal.BaseNovaClientLiveTest; +import org.jclouds.openstack.v2_0.domain.Resource; import org.testng.annotations.AfterGroups; import org.testng.annotations.BeforeGroups; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientExpectTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientExpectTest.java index ff08699b0b..360917feda 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientExpectTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientExpectTest.java @@ -29,7 +29,6 @@ import javax.ws.rs.core.MediaType; import org.jclouds.http.HttpRequest; import org.jclouds.http.HttpResponse; import org.jclouds.openstack.nova.v1_1.domain.QuotaClass; -import org.jclouds.openstack.nova.v1_1.domain.Quotas; import org.jclouds.openstack.nova.v1_1.internal.BaseNovaClientExpectTest; import org.jclouds.rest.ResourceNotFoundException; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientLiveTest.java index 0d1df006ee..9fc636e8a3 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/QuotaClassClientLiveTest.java @@ -22,7 +22,6 @@ import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertTrue; import org.jclouds.openstack.nova.v1_1.domain.QuotaClass; -import org.jclouds.openstack.nova.v1_1.domain.Quotas; import org.jclouds.openstack.nova.v1_1.internal.BaseNovaClientLiveTest; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClientLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClientLiveTest.java index 75a4227fdc..f8a69e04d8 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClientLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/extensions/ServerWithSecurityGroupsClientLiveTest.java @@ -21,11 +21,11 @@ package org.jclouds.openstack.nova.v1_1.extensions; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertNotNull; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.domain.Server; import org.jclouds.openstack.nova.v1_1.domain.ServerWithSecurityGroups; import org.jclouds.openstack.nova.v1_1.features.ServerClient; import org.jclouds.openstack.nova.v1_1.internal.BaseNovaClientLiveTest; +import org.jclouds.openstack.v2_0.domain.Resource; import org.testng.annotations.BeforeGroups; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/FlavorClientLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/FlavorClientLiveTest.java index 02974c2849..dcc4b5f6e6 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/FlavorClientLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/FlavorClientLiveTest.java @@ -23,9 +23,9 @@ import static org.testng.Assert.assertTrue; import java.util.Set; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.domain.Flavor; import org.jclouds.openstack.nova.v1_1.internal.BaseNovaClientLiveTest; +import org.jclouds.openstack.v2_0.domain.Resource; import org.testng.annotations.Test; /** diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ImageClientLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ImageClientLiveTest.java index 23744fa8d2..bf532a6d10 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ImageClientLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ImageClientLiveTest.java @@ -24,9 +24,9 @@ import static org.testng.Assert.assertTrue; import java.util.Set; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.domain.Image; import org.jclouds.openstack.nova.v1_1.internal.BaseNovaClientLiveTest; +import org.jclouds.openstack.v2_0.domain.Resource; import org.testng.annotations.Test; /** diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ServerClientLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ServerClientLiveTest.java index 470b4ba54b..81acbdb7b0 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ServerClientLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/features/ServerClientLiveTest.java @@ -23,9 +23,9 @@ import static org.testng.Assert.assertTrue; import java.util.Set; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.domain.Server; import org.jclouds.openstack.nova.v1_1.internal.BaseNovaClientLiveTest; +import org.jclouds.openstack.v2_0.domain.Resource; import org.testng.annotations.Test; /** diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSetTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSetTest.java index 07cb2df6c3..fe0a947e0b 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSetTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/functions/PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSetTest.java @@ -12,7 +12,7 @@ import org.jclouds.internal.ClassMethodArgsAndReturnVal; import org.jclouds.openstack.nova.v1_1.domain.Extension; import org.jclouds.openstack.nova.v1_1.extensions.ExtensionNamespaces; import org.jclouds.openstack.nova.v1_1.extensions.KeyPairAsyncClient; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.rest.annotations.Delegate; import org.testng.annotations.Test; @@ -40,7 +40,7 @@ public class PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensio new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-08-08T00:00:00+00:00")).description( "Keypair Support").build(); - @org.jclouds.openstack.services.Extension(of = ServiceType.COMPUTE, namespace = ExtensionNamespaces.KEYPAIRS) + @org.jclouds.openstack.v2_0.services.Extension(of = ServiceType.COMPUTE, namespace = ExtensionNamespaces.KEYPAIRS) static interface KeyPairIPAsyncClient { } @@ -50,7 +50,7 @@ public class PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensio new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-06-16T00:00:00+00:00")).description( "Floating IPs support").build(); - @org.jclouds.openstack.services.Extension(of = ServiceType.COMPUTE, namespace = ExtensionNamespaces.FLOATING_IPS) + @org.jclouds.openstack.v2_0.services.Extension(of = ServiceType.COMPUTE, namespace = ExtensionNamespaces.FLOATING_IPS) static interface FloatingIPAsyncClient { } diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/internal/BaseNovaClientLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/internal/BaseNovaClientLiveTest.java index fe683e4ea5..546a09ef40 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/internal/BaseNovaClientLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/internal/BaseNovaClientLiveTest.java @@ -26,8 +26,8 @@ import org.jclouds.openstack.nova.v1_1.NovaAsyncClient; import org.jclouds.openstack.nova.v1_1.NovaClient; import org.jclouds.openstack.nova.v1_1.config.NovaProperties; import org.jclouds.openstack.nova.v1_1.domain.Flavor; -import org.jclouds.openstack.nova.v1_1.domain.ServerCreated; import org.jclouds.openstack.nova.v1_1.domain.Server; +import org.jclouds.openstack.nova.v1_1.domain.ServerCreated; import org.jclouds.openstack.nova.v1_1.domain.Server.Status; import org.jclouds.openstack.nova.v1_1.features.FlavorClient; import org.jclouds.openstack.nova.v1_1.features.ImageClient; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseCreatedServerTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseCreatedServerTest.java index f074f84e36..f260fe7aaa 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseCreatedServerTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseCreatedServerTest.java @@ -25,10 +25,10 @@ import javax.ws.rs.core.MediaType; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.ServerCreated; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionListTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionListTest.java index 437f1b1c0a..f46f65c120 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionListTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionListTest.java @@ -27,10 +27,10 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseSetParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Extension; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionTest.java index 02c2dd1026..1b06d895c2 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseExtensionTest.java @@ -26,10 +26,10 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Extension; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorListTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorListTest.java index eb78746d73..d5c50ee7f6 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorListTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorListTest.java @@ -26,10 +26,10 @@ import javax.ws.rs.core.MediaType; import org.jclouds.json.BaseSetParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorTest.java index 68713e6b9b..031d8d2b32 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseFlavorTest.java @@ -25,10 +25,10 @@ import javax.ws.rs.core.MediaType; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Flavor; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageListTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageListTest.java index da4a4c63bd..16b63e6da3 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageListTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageListTest.java @@ -26,10 +26,10 @@ import javax.ws.rs.core.MediaType; import org.jclouds.json.BaseSetParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageTest.java index c7579ee71d..e996565243 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseImageTest.java @@ -26,12 +26,12 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Image; import org.jclouds.openstack.nova.v1_1.domain.Image.Status; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerDetailsEssexTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerDetailsEssexTest.java index 95f8a2ca7f..161ac73cae 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerDetailsEssexTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerDetailsEssexTest.java @@ -27,14 +27,14 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseSetParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Address; import org.jclouds.openstack.nova.v1_1.domain.Server; -import org.jclouds.openstack.nova.v1_1.domain.Server.Status; import org.jclouds.openstack.nova.v1_1.domain.ServerExtendedStatus; +import org.jclouds.openstack.nova.v1_1.domain.Server.Status; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerListTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerListTest.java index 7ad940b6a9..8c2f23c4ba 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerListTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerListTest.java @@ -26,10 +26,10 @@ import javax.ws.rs.core.MediaType; import org.jclouds.json.BaseSetParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerTest.java index 7e54bd06c8..cddd00decd 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerTest.java @@ -26,13 +26,13 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Address; import org.jclouds.openstack.nova.v1_1.domain.Server; import org.jclouds.openstack.nova.v1_1.domain.Server.Status; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithAllExtensionsTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithAllExtensionsTest.java index 52139fabac..2bbe63ea12 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithAllExtensionsTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithAllExtensionsTest.java @@ -26,15 +26,15 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Link.Relation; -import org.jclouds.openstack.domain.Resource; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Address; import org.jclouds.openstack.nova.v1_1.domain.Server; -import org.jclouds.openstack.nova.v1_1.domain.Server.Status; import org.jclouds.openstack.nova.v1_1.domain.ServerExtendedAttributes; import org.jclouds.openstack.nova.v1_1.domain.ServerExtendedStatus; +import org.jclouds.openstack.nova.v1_1.domain.Server.Status; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithInternetAddressesTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithInternetAddressesTest.java index 15a0dae5bc..3f59844319 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithInternetAddressesTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/ParseServerWithInternetAddressesTest.java @@ -26,13 +26,13 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Address; import org.jclouds.openstack.nova.v1_1.domain.Server; import org.jclouds.openstack.nova.v1_1.domain.Server.Status; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/PublicIpsInPrivateAddressBlockExpectTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/PublicIpsInPrivateAddressBlockExpectTest.java index 1d2513097b..d609554ea2 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/PublicIpsInPrivateAddressBlockExpectTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v1_1/parse/PublicIpsInPrivateAddressBlockExpectTest.java @@ -26,13 +26,13 @@ import javax.ws.rs.core.MediaType; import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.json.BaseItemParserTest; import org.jclouds.json.config.GsonModule; -import org.jclouds.openstack.domain.Link; -import org.jclouds.openstack.domain.Resource; -import org.jclouds.openstack.domain.Link.Relation; import org.jclouds.openstack.nova.v1_1.config.NovaParserModule; import org.jclouds.openstack.nova.v1_1.domain.Address; import org.jclouds.openstack.nova.v1_1.domain.Server; import org.jclouds.openstack.nova.v1_1.domain.Server.Status; +import org.jclouds.openstack.v2_0.domain.Link; +import org.jclouds.openstack.v2_0.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Link.Relation; import org.jclouds.rest.annotations.SelectJson; import org.testng.annotations.Test; diff --git a/apis/pom.xml b/apis/pom.xml index b45bd1ac1d..c8aa8f1e3e 100644 --- a/apis/pom.xml +++ b/apis/pom.xml @@ -47,6 +47,7 @@ elasticstack atmos nova + openstack-keystone openstack-nova openstack-nova-ec2 cloudwatch diff --git a/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftApiMetadata.java b/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftApiMetadata.java index 2dae10ea7c..a261b8b395 100644 --- a/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftApiMetadata.java +++ b/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftApiMetadata.java @@ -26,7 +26,6 @@ import java.util.Properties; import org.jclouds.apis.ApiMetadata; import org.jclouds.blobstore.BlobStoreContext; -import org.jclouds.openstack.OpenStackAuthAsyncClient; import org.jclouds.openstack.swift.blobstore.config.SwiftBlobStoreContextModule; import org.jclouds.openstack.swift.config.SwiftRestClientModule; import org.jclouds.rest.RestContext; @@ -81,7 +80,7 @@ public class SwiftApiMetadata extends BaseRestApiMetadata { .identityName("tenantId:user") .credentialName("password") .documentation(URI.create("http://api.openstack.org/")) - .version(OpenStackAuthAsyncClient.VERSION) + .version("1.0") .defaultProperties(SwiftApiMetadata.defaultProperties()) .view(TypeToken.of(BlobStoreContext.class)) .defaultModules(ImmutableSet.>of(SwiftRestClientModule.class, SwiftBlobStoreContextModule.class)); diff --git a/apis/swift/src/test/java/org/jclouds/openstack/swift/CommonSwiftClientTest.java b/apis/swift/src/test/java/org/jclouds/openstack/swift/CommonSwiftClientTest.java index cc74c180c1..cefb4ee76f 100644 --- a/apis/swift/src/test/java/org/jclouds/openstack/swift/CommonSwiftClientTest.java +++ b/apis/swift/src/test/java/org/jclouds/openstack/swift/CommonSwiftClientTest.java @@ -28,7 +28,7 @@ import javax.inject.Singleton; import org.jclouds.apis.ApiMetadata; import org.jclouds.http.HttpRequest; -import org.jclouds.openstack.TestOpenStackAuthenticationModule; +import org.jclouds.openstack.internal.TestOpenStackAuthenticationModule; import org.jclouds.openstack.swift.config.BaseSwiftRestClientModule; import org.jclouds.rest.ConfiguresRestClient; import org.jclouds.rest.internal.BaseAsyncClientTest; diff --git a/common/openstack/pom.xml b/common/openstack/pom.xml index 1a0859f32d..af29166945 100644 --- a/common/openstack/pom.xml +++ b/common/openstack/pom.xml @@ -35,7 +35,18 @@ bundle - org.jclouds.openstack*;version="${project.version}" + org.jclouds.openstack.config*;version="${project.version}", + org.jclouds.openstack.domain*;version="${project.version}" + org.jclouds.openstack.filters*;version="${project.version}" + org.jclouds.openstack.functions*;version="${project.version}" + org.jclouds.openstack.handlers*;version="${project.version}" + org.jclouds.openstack.internal*;version="${project.version}" + org.jclouds.openstack.keystone.v1_1*;version="${project.version}" + org.jclouds.openstack.options*;version="${project.version}" + org.jclouds.openstack.predicates*;version="${project.version}" + org.jclouds.openstack.reference*;version="${project.version}" + org.jclouds.openstack.services*;version="${project.version}" + org.jclouds*;version="${project.version}",* diff --git a/common/openstack/src/main/java/org/jclouds/openstack/config/OpenStackAuthenticationModule.java b/common/openstack/src/main/java/org/jclouds/openstack/config/OpenStackAuthenticationModule.java index eca6fe8678..c9c27465c3 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/config/OpenStackAuthenticationModule.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/config/OpenStackAuthenticationModule.java @@ -35,12 +35,12 @@ import org.jclouds.domain.Credentials; import org.jclouds.http.HttpRetryHandler; import org.jclouds.http.annotation.ClientError; import org.jclouds.location.Provider; -import org.jclouds.openstack.Authentication; -import org.jclouds.openstack.OpenStackAuthAsyncClient; -import org.jclouds.openstack.OpenStackAuthClient; import org.jclouds.openstack.domain.AuthenticationResponse; import org.jclouds.openstack.functions.URIFromAuthenticationResponseForService; import org.jclouds.openstack.handlers.RetryOnRenew; +import org.jclouds.openstack.internal.Authentication; +import org.jclouds.openstack.internal.OpenStackAuthAsyncClient; +import org.jclouds.openstack.internal.OpenStackAuthClient; import com.google.common.base.Function; import com.google.common.base.Supplier; diff --git a/common/openstack/src/main/java/org/jclouds/openstack/filters/AuthenticateRequest.java b/common/openstack/src/main/java/org/jclouds/openstack/filters/AuthenticateRequest.java index 216853f17e..8d2c5ab7d6 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/filters/AuthenticateRequest.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/filters/AuthenticateRequest.java @@ -25,7 +25,7 @@ import org.jclouds.http.HttpException; import org.jclouds.http.HttpRequest; import org.jclouds.http.HttpRequestFilter; import org.jclouds.http.utils.ModifyRequest; -import org.jclouds.openstack.Authentication; +import org.jclouds.openstack.internal.Authentication; import org.jclouds.openstack.reference.AuthHeaders; import com.google.common.base.Supplier; diff --git a/common/openstack/src/main/java/org/jclouds/openstack/Authentication.java b/common/openstack/src/main/java/org/jclouds/openstack/internal/Authentication.java similarity index 97% rename from common/openstack/src/main/java/org/jclouds/openstack/Authentication.java rename to common/openstack/src/main/java/org/jclouds/openstack/internal/Authentication.java index 4dde744be5..8e1503c7b4 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/Authentication.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/internal/Authentication.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack; +package org.jclouds.openstack.internal; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/common/openstack/src/main/java/org/jclouds/openstack/OpenStackAuthAsyncClient.java b/common/openstack/src/main/java/org/jclouds/openstack/internal/OpenStackAuthAsyncClient.java similarity index 96% rename from common/openstack/src/main/java/org/jclouds/openstack/OpenStackAuthAsyncClient.java rename to common/openstack/src/main/java/org/jclouds/openstack/internal/OpenStackAuthAsyncClient.java index 9292bb0946..93c30d676a 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/OpenStackAuthAsyncClient.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/internal/OpenStackAuthAsyncClient.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack; +package org.jclouds.openstack.internal; import javax.ws.rs.Consumes; import javax.ws.rs.GET; @@ -42,7 +42,6 @@ import com.google.common.util.concurrent.ListenableFuture; @Path("/v{" + Constants.PROPERTY_API_VERSION + "}") @VirtualHost public interface OpenStackAuthAsyncClient { - public static final String VERSION = "1.0"; @GET @Consumes diff --git a/common/openstack/src/main/java/org/jclouds/openstack/OpenStackAuthClient.java b/common/openstack/src/main/java/org/jclouds/openstack/internal/OpenStackAuthClient.java similarity index 97% rename from common/openstack/src/main/java/org/jclouds/openstack/OpenStackAuthClient.java rename to common/openstack/src/main/java/org/jclouds/openstack/internal/OpenStackAuthClient.java index 8bdfd9482c..0f8cd5e48c 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/OpenStackAuthClient.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/internal/OpenStackAuthClient.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack; +package org.jclouds.openstack.internal; import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v1_1/config/AuthenticationServiceModule.java b/common/openstack/src/main/java/org/jclouds/openstack/keystone/v1_1/config/AuthenticationServiceModule.java index 4f70bc4c0f..a96f524eec 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v1_1/config/AuthenticationServiceModule.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/keystone/v1_1/config/AuthenticationServiceModule.java @@ -34,7 +34,7 @@ import org.jclouds.http.HttpRetryHandler; import org.jclouds.http.annotation.ClientError; import org.jclouds.location.Provider; import org.jclouds.location.suppliers.RegionIdToURISupplier; -import org.jclouds.openstack.Authentication; +import org.jclouds.openstack.internal.Authentication; import org.jclouds.openstack.keystone.v1_1.AuthenticationAsyncClient; import org.jclouds.openstack.keystone.v1_1.AuthenticationClient; import org.jclouds.openstack.keystone.v1_1.domain.Auth; diff --git a/common/openstack/src/test/java/org/jclouds/openstack/OpenStackAuthAsyncClientTest.java b/common/openstack/src/test/java/org/jclouds/openstack/internal/OpenStackAuthAsyncClientTest.java similarity index 97% rename from common/openstack/src/test/java/org/jclouds/openstack/OpenStackAuthAsyncClientTest.java rename to common/openstack/src/test/java/org/jclouds/openstack/internal/OpenStackAuthAsyncClientTest.java index 1779fd979f..8e4ef7264c 100644 --- a/common/openstack/src/test/java/org/jclouds/openstack/OpenStackAuthAsyncClientTest.java +++ b/common/openstack/src/test/java/org/jclouds/openstack/internal/OpenStackAuthAsyncClientTest.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack; +package org.jclouds.openstack.internal; import java.io.IOException; import java.lang.reflect.Method; @@ -26,6 +26,7 @@ import org.jclouds.http.HttpRequest; import org.jclouds.http.IntegrationTestAsyncClient; import org.jclouds.http.IntegrationTestClient; import org.jclouds.openstack.functions.ParseAuthenticationResponseFromHeaders; +import org.jclouds.openstack.internal.OpenStackAuthAsyncClient; import org.jclouds.rest.AnonymousRestApiMetadata; import org.jclouds.rest.functions.MapHttp4xxCodesToExceptions; import org.jclouds.rest.internal.BaseAsyncClientTest; diff --git a/common/openstack/src/test/java/org/jclouds/openstack/TestOpenStackAuthenticationModule.java b/common/openstack/src/test/java/org/jclouds/openstack/internal/TestOpenStackAuthenticationModule.java similarity index 98% rename from common/openstack/src/test/java/org/jclouds/openstack/TestOpenStackAuthenticationModule.java rename to common/openstack/src/test/java/org/jclouds/openstack/internal/TestOpenStackAuthenticationModule.java index 3835119c3b..8ee4ddc249 100644 --- a/common/openstack/src/test/java/org/jclouds/openstack/TestOpenStackAuthenticationModule.java +++ b/common/openstack/src/test/java/org/jclouds/openstack/internal/TestOpenStackAuthenticationModule.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.jclouds.openstack; +package org.jclouds.openstack.internal; import java.net.URI; import java.util.Date; diff --git a/labs/openstack-glance/pom.xml b/labs/openstack-glance/pom.xml index 40633f5182..aa172d80bb 100644 --- a/labs/openstack-glance/pom.xml +++ b/labs/openstack-glance/pom.xml @@ -53,8 +53,8 @@ - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} @@ -70,8 +70,8 @@ test - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} test-jar test diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/GlanceApiMetadata.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/GlanceApiMetadata.java index cdb817696f..5d52819197 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/GlanceApiMetadata.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/GlanceApiMetadata.java @@ -26,7 +26,7 @@ import java.util.Properties; import org.jclouds.apis.ApiMetadata; import org.jclouds.openstack.glance.v1_0.config.GlanceRestClientModule; import org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/domain/Image.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/domain/Image.java index 91b4db43f8..7b1d41388e 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/domain/Image.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/domain/Image.java @@ -18,7 +18,7 @@ */ package org.jclouds.openstack.glance.v1_0.domain; -import org.jclouds.openstack.domain.Resource; +import org.jclouds.openstack.v2_0.domain.Resource; import com.google.common.base.Objects; import com.google.common.base.Optional; diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageAsyncClient.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageAsyncClient.java index da64dfceb6..2ba647ca65 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageAsyncClient.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageAsyncClient.java @@ -21,17 +21,26 @@ package org.jclouds.openstack.glance.v1_0.features; import java.io.InputStream; import java.util.Set; -import javax.ws.rs.*; +import javax.ws.rs.Consumes; +import javax.ws.rs.DELETE; +import javax.ws.rs.GET; +import javax.ws.rs.HEAD; +import javax.ws.rs.HeaderParam; +import javax.ws.rs.POST; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.io.Payload; -import org.jclouds.openstack.filters.AuthenticateRequest; import org.jclouds.openstack.glance.v1_0.domain.Image; import org.jclouds.openstack.glance.v1_0.domain.ImageDetails; import org.jclouds.openstack.glance.v1_0.functions.ParseImageDetailsFromHeaders; import org.jclouds.openstack.glance.v1_0.options.CreateImageOptions; import org.jclouds.openstack.glance.v1_0.options.ListImageOptions; import org.jclouds.openstack.glance.v1_0.options.UpdateImageOptions; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.ResponseParser; diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageClient.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageClient.java index 3e318e3fa9..017d624a34 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageClient.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/features/ImageClient.java @@ -25,12 +25,11 @@ import java.util.concurrent.TimeUnit; import org.jclouds.concurrent.Timeout; import org.jclouds.io.Payload; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.glance.v1_0.domain.DiskFormat; import org.jclouds.openstack.glance.v1_0.domain.Image; import org.jclouds.openstack.glance.v1_0.domain.ImageDetails; import org.jclouds.openstack.glance.v1_0.options.CreateImageOptions; -import org.jclouds.openstack.glance.v1_0.options.UpdateImageOptions; import org.jclouds.openstack.glance.v1_0.options.ListImageOptions; +import org.jclouds.openstack.glance.v1_0.options.UpdateImageOptions; /** * Image Services diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/functions/ParseImageDetailsFromHeaders.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/functions/ParseImageDetailsFromHeaders.java index 7c8ecbe890..b2c374e5ec 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/functions/ParseImageDetailsFromHeaders.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/functions/ParseImageDetailsFromHeaders.java @@ -18,7 +18,21 @@ */ package org.jclouds.openstack.glance.v1_0.functions; -import static org.jclouds.openstack.glance.v1_0.options.ImageField.*; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.CHECKSUM; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.CONTAINER_FORMAT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.CREATED_AT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.DELETED_AT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.DISK_FORMAT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.ID; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.IS_PUBLIC; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.LOCATION; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.MIN_DISK; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.MIN_RAM; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.NAME; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.OWNER; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.SIZE; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.STATUS; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.UPDATED_AT; import javax.inject.Inject; diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ImageField.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ImageField.java index fd67d2c355..5efd3a8fb8 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ImageField.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ImageField.java @@ -18,13 +18,6 @@ */ package org.jclouds.openstack.glance.v1_0.options; -import static com.google.common.base.CaseFormat.LOWER_UNDERSCORE; -import static com.google.common.base.CaseFormat.UPPER_UNDERSCORE; - -import org.jclouds.util.Strings2; - -import com.google.common.base.CaseFormat; -import com.google.common.base.Strings; /** * Fields used in Glance options diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ListImageOptions.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ListImageOptions.java index b81c07c9bc..34bae7e019 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ListImageOptions.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/ListImageOptions.java @@ -20,7 +20,16 @@ package org.jclouds.openstack.glance.v1_0.options; import static com.google.common.base.Preconditions.checkNotNull; import static com.google.common.base.Preconditions.checkState; -import static org.jclouds.openstack.glance.v1_0.options.ImageField.*; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.CONTAINER_FORMAT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.DISK_FORMAT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.IS_PUBLIC; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.MIN_DISK; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.MIN_RAM; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.NAME; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.PROTECTED; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.SIZE_MAX; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.SIZE_MIN; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.STATUS; import org.jclouds.http.options.BaseHttpRequestOptions; import org.jclouds.openstack.glance.v1_0.domain.ContainerFormat; diff --git a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/UpdateImageOptions.java b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/UpdateImageOptions.java index da0e4e9fb8..dc02986ac8 100644 --- a/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/UpdateImageOptions.java +++ b/labs/openstack-glance/src/main/java/org/jclouds/openstack/glance/v1_0/options/UpdateImageOptions.java @@ -18,7 +18,19 @@ */ package org.jclouds.openstack.glance.v1_0.options; -import static org.jclouds.openstack.glance.v1_0.options.ImageField.*; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.CHECKSUM; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.CONTAINER_FORMAT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.DISK_FORMAT; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.IS_PUBLIC; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.LOCATION; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.MIN_DISK; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.MIN_RAM; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.NAME; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.OWNER; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.PROPERTY; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.PROTECTED; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.SIZE; +import static org.jclouds.openstack.glance.v1_0.options.ImageField.STORE; import org.jclouds.http.options.BaseHttpRequestOptions; import org.jclouds.openstack.glance.v1_0.domain.ContainerFormat; diff --git a/labs/openstack-glance/src/test/java/org/jclouds/openstack/glance/v1_0/features/ImageClientExpectTest.java b/labs/openstack-glance/src/test/java/org/jclouds/openstack/glance/v1_0/features/ImageClientExpectTest.java index 415803bd5c..9ed94a1b2a 100644 --- a/labs/openstack-glance/src/test/java/org/jclouds/openstack/glance/v1_0/features/ImageClientExpectTest.java +++ b/labs/openstack-glance/src/test/java/org/jclouds/openstack/glance/v1_0/features/ImageClientExpectTest.java @@ -20,7 +20,6 @@ package org.jclouds.openstack.glance.v1_0.features; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertFalse; -import static org.testng.Assert.assertNotNull; import static org.testng.Assert.assertNull; import static org.testng.Assert.assertTrue; diff --git a/labs/openstack-quantum/pom.xml b/labs/openstack-quantum/pom.xml index 9c3511b67f..951c56517e 100644 --- a/labs/openstack-quantum/pom.xml +++ b/labs/openstack-quantum/pom.xml @@ -52,8 +52,8 @@ - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} @@ -69,8 +69,8 @@ test - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} test-jar test diff --git a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/QuantumApiMetadata.java b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/QuantumApiMetadata.java index 6511ee029e..4ca0706e4f 100644 --- a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/QuantumApiMetadata.java +++ b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/QuantumApiMetadata.java @@ -26,7 +26,7 @@ import java.util.Properties; import org.jclouds.apis.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties; import org.jclouds.openstack.quantum.v1_0.config.QuantumRestClientModule; -import org.jclouds.openstack.services.ServiceType; +import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; diff --git a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/domain/Network.java b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/domain/Network.java index fd3e3cf850..6ad19f7879 100644 --- a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/domain/Network.java +++ b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/domain/Network.java @@ -18,11 +18,11 @@ */ package org.jclouds.openstack.quantum.v1_0.domain; +import static com.google.common.base.Preconditions.checkNotNull; + import com.google.common.base.Objects; import com.google.common.base.Objects.ToStringHelper; -import static com.google.common.base.Preconditions.checkNotNull; - /** * A Quantum network * diff --git a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/NetworkAsyncClient.java b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/NetworkAsyncClient.java index b0d114e0c8..060af7b59c 100644 --- a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/NetworkAsyncClient.java +++ b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/NetworkAsyncClient.java @@ -30,7 +30,7 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.quantum.v1_0.domain.Network; import org.jclouds.openstack.quantum.v1_0.domain.NetworkDetails; import org.jclouds.openstack.quantum.v1_0.domain.Reference; diff --git a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/PortAsyncClient.java b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/PortAsyncClient.java index 9535bc6bf5..562270eb70 100644 --- a/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/PortAsyncClient.java +++ b/labs/openstack-quantum/src/main/java/org/jclouds/openstack/quantum/v1_0/features/PortAsyncClient.java @@ -29,7 +29,7 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.quantum.v1_0.domain.Attachment; import org.jclouds.openstack.quantum.v1_0.domain.Port; import org.jclouds.openstack.quantum.v1_0.domain.PortDetails; diff --git a/labs/openstack-swift/pom.xml b/labs/openstack-swift/pom.xml index f4a546af8d..1412f5bc6f 100644 --- a/labs/openstack-swift/pom.xml +++ b/labs/openstack-swift/pom.xml @@ -56,8 +56,8 @@ - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} @@ -73,8 +73,8 @@ test - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} test-jar test diff --git a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java index 60a20eea8b..7c0188069f 100644 --- a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java +++ b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java @@ -25,8 +25,8 @@ import java.util.Properties; import org.jclouds.apis.ApiMetadata; import org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties; -import org.jclouds.openstack.services.ServiceType; import org.jclouds.openstack.swift.v1.config.SwiftRestClientModule; +import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.rest.RestContext; import org.jclouds.rest.internal.BaseRestApiMetadata; diff --git a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/AccountAsyncClient.java b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/AccountAsyncClient.java index c159b221cd..d4b5169a7a 100644 --- a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/AccountAsyncClient.java +++ b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/AccountAsyncClient.java @@ -26,7 +26,7 @@ import javax.ws.rs.HEAD; import javax.ws.rs.Path; import javax.ws.rs.core.MediaType; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.swift.v1.domain.AccountMetadata; import org.jclouds.openstack.swift.v1.domain.ContainerMetadata; import org.jclouds.openstack.swift.v1.functions.ParseAccountMetadataResponseFromHeaders; diff --git a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerAsyncClient.java b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerAsyncClient.java index 68fda93deb..3ac2a996a9 100644 --- a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerAsyncClient.java +++ b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerAsyncClient.java @@ -18,7 +18,7 @@ */ package org.jclouds.openstack.swift.v1.features; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SkipEncoding; diff --git a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ObjectAsyncClient.java b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ObjectAsyncClient.java index 597a5e2e17..0067c9edfd 100644 --- a/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ObjectAsyncClient.java +++ b/labs/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ObjectAsyncClient.java @@ -18,7 +18,7 @@ */ package org.jclouds.openstack.swift.v1.features; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.SkipEncoding; diff --git a/labs/pom.xml b/labs/pom.xml index a976fc93d1..bde7affc9e 100644 --- a/labs/pom.xml +++ b/labs/pom.xml @@ -46,7 +46,6 @@ cdmi openstack-glance joyent-sdc - openstack-keystone openstack-quantum diff --git a/providers/hpcloud-objectstorage/pom.xml b/providers/hpcloud-objectstorage/pom.xml index e2c664f951..4b6534de2f 100644 --- a/providers/hpcloud-objectstorage/pom.xml +++ b/providers/hpcloud-objectstorage/pom.xml @@ -50,6 +50,11 @@ swift ${project.version} + + org.jclouds.api + openstack-keystone + ${project.version} + org.jclouds jclouds-core @@ -58,8 +63,8 @@ test - org.jclouds.common - openstack-common + org.jclouds.api + openstack-keystone ${project.version} test-jar test diff --git a/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/HPCloudObjectStorageAsyncClient.java b/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/HPCloudObjectStorageAsyncClient.java index 24087f6e56..49309e677a 100644 --- a/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/HPCloudObjectStorageAsyncClient.java +++ b/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/HPCloudObjectStorageAsyncClient.java @@ -33,7 +33,7 @@ import org.jclouds.blobstore.functions.ReturnNullOnContainerNotFound; import org.jclouds.hpcloud.objectstorage.extensions.HPCloudCDNAsyncClient; import org.jclouds.hpcloud.objectstorage.functions.ParseContainerMetadataFromHeaders; import org.jclouds.hpcloud.objectstorage.options.CreateContainerOptions; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.swift.CommonSwiftAsyncClient; import org.jclouds.openstack.swift.Storage; import org.jclouds.openstack.swift.domain.ContainerMetadata; diff --git a/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/extensions/HPCloudCDNAsyncClient.java b/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/extensions/HPCloudCDNAsyncClient.java index 9d231dbe5c..c61019d5b0 100644 --- a/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/extensions/HPCloudCDNAsyncClient.java +++ b/providers/hpcloud-objectstorage/src/main/java/org/jclouds/hpcloud/objectstorage/extensions/HPCloudCDNAsyncClient.java @@ -39,7 +39,7 @@ import org.jclouds.hpcloud.objectstorage.functions.ParseContainerCDNMetadataFrom import org.jclouds.hpcloud.objectstorage.options.ListCDNContainerOptions; import org.jclouds.hpcloud.objectstorage.reference.HPCloudObjectStorageHeaders; import org.jclouds.hpcloud.services.HPExtensionCDN; -import org.jclouds.openstack.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.rest.annotations.Endpoint; import org.jclouds.rest.annotations.ExceptionParser; import org.jclouds.rest.annotations.Headers;