http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v3/internal/BaseV3KeystoneApiMockTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v3/internal/BaseV3KeystoneApiMockTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v3/internal/BaseV3KeystoneApiMockTest.java new file mode 100644 index 0000000..ec3f7ba --- /dev/null +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v3/internal/BaseV3KeystoneApiMockTest.java @@ -0,0 +1,189 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF 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.v3.internal; + +import static com.google.common.base.Preconditions.checkArgument; +import static com.google.common.collect.Iterables.getOnlyElement; +import static com.google.common.util.concurrent.MoreExecutors.newDirectExecutorService; +import static org.testng.Assert.assertEquals; + +import java.io.IOException; +import java.util.Map; +import java.util.Properties; +import java.util.Set; +import java.util.UUID; + +import org.jclouds.ContextBuilder; +import org.jclouds.concurrent.config.ExecutorServiceModule; +import org.jclouds.http.okhttp.config.OkHttpCommandExecutorServiceModule; +import org.jclouds.json.Json; +import org.jclouds.logging.slf4j.config.SLF4JLoggingModule; +import org.jclouds.openstack.keystone.auth.AuthenticationApi; +import org.jclouds.openstack.keystone.config.KeystoneProperties; +import org.jclouds.openstack.keystone.v3.KeystoneApi; +import org.jclouds.openstack.keystone.v3.KeystoneApiMetadata; +import org.jclouds.openstack.keystone.v3.domain.Token; +import org.jclouds.rest.ApiContext; +import org.testng.annotations.AfterMethod; +import org.testng.annotations.BeforeMethod; + +import com.google.common.base.Charsets; +import com.google.common.base.Throwables; +import com.google.common.collect.ImmutableSet; +import com.google.common.io.Resources; +import com.google.common.reflect.TypeToken; +import com.google.gson.JsonParser; +import com.google.inject.Module; +import com.squareup.okhttp.mockwebserver.MockResponse; +import com.squareup.okhttp.mockwebserver.MockWebServer; +import com.squareup.okhttp.mockwebserver.RecordedRequest; + +public class BaseV3KeystoneApiMockTest { + + private static final String DEFAULT_ENDPOINT = new KeystoneApiMetadata().getDefaultEndpoint().orNull(); + + protected MockWebServer server; + protected KeystoneApi api; + protected AuthenticationApi authenticationApi; + protected String authToken; + private Json json; + + // So that we can ignore formatting. + private final JsonParser parser = new JsonParser(); + + @BeforeMethod + public void start() throws IOException { + server = new MockWebServer(); + server.play(); + + ApiContext<KeystoneApi> ctx = ContextBuilder.newBuilder("openstack-keystone-3") + .credentials("domain:identity", "credential") + .endpoint(url("")) + .modules(modules()) + .overrides(overrides()) + .build(); + json = ctx.utils().injector().getInstance(Json.class); + authenticationApi = ctx.utils().injector().getInstance(AuthenticationApi.class); + api = ctx.getApi(); + } + + @AfterMethod(alwaysRun = true) + public void stop() throws IOException { + server.shutdown(); + api.close(); + } + + protected Properties overrides() { + Properties overrides = new Properties(); + overrides.setProperty(KeystoneProperties.SCOPE, "projectId:1234567890"); + overrides.setProperty(KeystoneProperties.SERVICE_TYPE, "identityv3"); + return overrides; + } + + protected Set<Module> modules() { + ImmutableSet.Builder<Module> modules = ImmutableSet.builder(); + modules.add(new ExecutorServiceModule(newDirectExecutorService())); + modules.add(new OkHttpCommandExecutorServiceModule()); + modules.add(new SLF4JLoggingModule()); + return modules.build(); + } + + protected String url(String path) { + return server.getUrl(path).toString(); + } + + protected void enqueueAuthentication(MockWebServer server) { + authToken = UUID.randomUUID().toString(); + server.enqueue(jsonResponse("/v3/token.json").addHeader("X-Subject-Token", authToken)); + } + + protected MockResponse jsonResponse(String resource) { + return new MockResponse().addHeader("Content-Type", "application/json").setBody(stringFromResource(resource)); + } + + protected MockResponse response404() { + return new MockResponse().setStatus("HTTP/1.1 404 Not Found"); + } + + protected MockResponse response201() { + return new MockResponse().setStatus("HTTP/1.1 201 Created"); + } + + protected MockResponse response204() { + return new MockResponse().setStatus("HTTP/1.1 204 No Content"); + } + + protected String stringFromResource(String resourceName) { + try { + return Resources.toString(getClass().getResource(resourceName), Charsets.UTF_8) + .replace(DEFAULT_ENDPOINT, url("")); + } catch (IOException e) { + throw Throwables.propagate(e); + } + } + + protected <T> T onlyObjectFromResource(String resourceName, TypeToken<Map<String, T>> type) { + // Assume JSON objects passed here will be in the form: { "entity": { ... } } + String text = stringFromResource(resourceName); + Map<String, T> object = json.fromJson(text, type.getType()); + checkArgument(!object.isEmpty(), "The given json does not contain any object: %s", text); + checkArgument(object.keySet().size() == 1, "The given json does not contain more than one object: %s", text); + return object.get(getOnlyElement(object.keySet())); + } + + protected <T> T objectFromResource(String resourceName, Class<T> type) { + String text = stringFromResource(resourceName); + return json.fromJson(text, type); + } + + protected void assertAuthentication(MockWebServer server) throws InterruptedException { + RecordedRequest request = assertSentNoAuth(server, "POST", "/auth/tokens"); + assertBody(request, stringFromResource("/v3/auth-password-scoped.json")); + } + + private RecordedRequest assertSentNoAuth(MockWebServer server, String method, String path) throws InterruptedException { + RecordedRequest request = server.takeRequest(); + assertEquals(request.getMethod(), method); + assertEquals(request.getPath(), path); + assertEquals(request.getHeader("Accept"), "application/json"); + return request; + } + + protected RecordedRequest assertSent(MockWebServer server, String method, String path) throws InterruptedException { + RecordedRequest request = assertSentNoAuth(server, method, path); + assertEquals(request.getHeader("X-Auth-Token"), authToken); + return request; + } + + protected RecordedRequest assertSent(MockWebServer server, String method, String path, String json) + throws InterruptedException { + RecordedRequest request = assertSent(server, method, path); + assertBody(request, json); + return request; + } + + private void assertBody(RecordedRequest request, String body) { + assertEquals(request.getHeader("Content-Type"), "application/json"); + assertEquals(parser.parse(new String(request.getBody(), Charsets.UTF_8)), parser.parse(body)); + } + + protected Token tokenFromResource(String resource) { + return onlyObjectFromResource(resource, new TypeToken<Map<String, Token>>() { + private static final long serialVersionUID = 1L; + }); + } +}
http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/logback.xml ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/logback.xml b/apis/openstack-keystone/src/test/resources/logback.xml index 98b1ea9..5c37355 100644 --- a/apis/openstack-keystone/src/test/resources/logback.xml +++ b/apis/openstack-keystone/src/test/resources/logback.xml @@ -2,63 +2,41 @@ <configuration scan="false"> <appender name="FILE" class="ch.qos.logback.core.FileAppender"> <file>target/test-data/jclouds.log</file> - <encoder> <Pattern>%d %-5p [%c] [%thread] %m%n</Pattern> </encoder> </appender> - <appender name="WIREFILE" class="ch.qos.logback.core.FileAppender"> <file>target/test-data/jclouds-wire.log</file> - <encoder> <Pattern>%d %-5p [%c] [%thread] %m%n</Pattern> </encoder> </appender> - <appender name="COMPUTEFILE" class="ch.qos.logback.core.FileAppender"> <file>target/test-data/jclouds-compute.log</file> - - <encoder> - <Pattern>%d %-5p [%c] [%thread] %m%n</Pattern> - </encoder> - </appender> - - <appender name="SSHFILE" class="ch.qos.logback.core.FileAppender"> - <file>target/test-data/jclouds-ssh.log</file> - <encoder> <Pattern>%d %-5p [%c] [%thread] %m%n</Pattern> </encoder> </appender> - <root> - <level value="warn" /> - </root> - <logger name="org.jclouds"> <level value="DEBUG" /> <appender-ref ref="FILE" /> </logger> - + <logger name="jclouds.compute"> + <level value="DEBUG" /> + <appender-ref ref="COMPUTEFILE" /> + </logger> <logger name="jclouds.wire"> <level value="DEBUG" /> <appender-ref ref="WIREFILE" /> </logger> - <logger name="jclouds.headers"> <level value="DEBUG" /> <appender-ref ref="WIREFILE" /> </logger> - <logger name="jclouds.compute"> - <level value="DEBUG" /> - <appender-ref ref="COMPUTEFILE" /> - </logger> - - <logger name="jclouds.ssh"> - <level value="DEBUG" /> - <appender-ref ref="SSHFILE" /> - </logger> - -</configuration> + <root> + <level value="INFO" /> + </root> +</configuration> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/auth-password-scoped.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/auth-password-scoped.json b/apis/openstack-keystone/src/test/resources/v3/auth-password-scoped.json new file mode 100644 index 0000000..993e036 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/auth-password-scoped.json @@ -0,0 +1,23 @@ +{ + "auth": { + "identity": { + "methods": [ + "password" + ], + "password": { + "user": { + "name": "identity", + "domain": { + "name": "domain" + }, + "password": "credential" + } + } + }, + "scope": { + "project": { + "id": "1234567890" + } + } + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/auth-password.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/auth-password.json b/apis/openstack-keystone/src/test/resources/v3/auth-password.json new file mode 100644 index 0000000..2c2e8bd --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/auth-password.json @@ -0,0 +1,19 @@ +{ + "auth": { + "identity": { + "methods": [ + "password" + ], + "password": { + "user": { + "name": "identity", + "domain": { + "name": "domain" + }, + "password": "credential" + } + } + }, + "scope": "unscoped" + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/auth-token-scoped.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/auth-token-scoped.json b/apis/openstack-keystone/src/test/resources/v3/auth-token-scoped.json new file mode 100644 index 0000000..a1938a7 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/auth-token-scoped.json @@ -0,0 +1,17 @@ +{ + "auth": { + "identity": { + "methods": [ + "token" + ], + "token": { + "id": "token" + } + }, + "scope": { + "domain": { + "name": "mydomain" + } + } + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/auth-token.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/auth-token.json b/apis/openstack-keystone/src/test/resources/v3/auth-token.json new file mode 100644 index 0000000..9ddd70f --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/auth-token.json @@ -0,0 +1,13 @@ +{ + "auth": { + "identity": { + "methods": [ + "token" + ], + "token": { + "id": "token" + } + }, + "scope": "unscoped" + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/endpoints.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/endpoints.json b/apis/openstack-keystone/src/test/resources/v3/endpoints.json new file mode 100644 index 0000000..0a097e0 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/endpoints.json @@ -0,0 +1,153 @@ +{ + "endpoints": [ + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/151d1dd2c86b4af783143ab1aa9d9a39" + }, + "url": "http://localhost/compute/v2/$(project_id)s", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "a14c47dc13194bf2a2195e861db9f906", + "id": "151d1dd2c86b4af783143ab1aa9d9a39" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/1a9f6c6bea0e4ff5bb8b17e3647a706e" + }, + "url": "http://localhost/volume/v2/$(project_id)s", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "238841bcff5f4f2b9ee2f7973c19e22a", + "id": "1a9f6c6bea0e4ff5bb8b17e3647a706e" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/206d6d831dbf44ccad854ffb419b4f02" + }, + "url": "http://localhost/volume/v1/$(project_id)s", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "a222e99e3d24476baa7762858dc34006", + "id": "206d6d831dbf44ccad854ffb419b4f02" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/23f60684390f4376aca5d828f2381e6e" + }, + "url": "http://localhost:8080", + "region": "RegionOne", + "enabled": true, + "interface": "admin", + "service_id": "2774503aa5354d70a801df09a813db46", + "id": "23f60684390f4376aca5d828f2381e6e" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/572671cba1d34bd29fdd160eac891971" + }, + "url": "http://localhost/volume/v3/$(project_id)s", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "be984bfb8b5f447d8a0ea3fa075054fc", + "id": "572671cba1d34bd29fdd160eac891971" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/882c0c04727744ee8d20839f5f9eec9a" + }, + "url": "http://localhost/compute/v2.1", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "fcc6a934957545bbb5fee29a217530ef", + "id": "882c0c04727744ee8d20839f5f9eec9a" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/9f1b314e3bc5403a8dcdef14c9eb044c" + }, + "url": "http://localhost/identity/v3", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "6b73ec12f7754a8696d758561a1cf5f1", + "id": "9f1b314e3bc5403a8dcdef14c9eb044c" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/bb2aa713d1154809aeb414e6fd71ba95" + }, + "url": "http://localhost/image", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "5dbcb1098b2e41e083c05c9006bd9830", + "id": "bb2aa713d1154809aeb414e6fd71ba95" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/dcf25870430f468d8f8dfd9d3acb95cc" + }, + "url": "http://localhost:9696/", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "d12688144a6e4d9db17ead14f4670d5b", + "id": "dcf25870430f468d8f8dfd9d3acb95cc" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/eb1517fb194a4df09109aa4606c245b9" + }, + "url": "http://localhost/identity/v3", + "region": "RegionOne", + "enabled": true, + "interface": "admin", + "service_id": "6b73ec12f7754a8696d758561a1cf5f1", + "id": "eb1517fb194a4df09109aa4606c245b9" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/edd066392b3549508739e18d5e69dbb7" + }, + "url": "http://localhost/placement", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "74efa863cb264dcbba922ff254a19876", + "id": "edd066392b3549508739e18d5e69dbb7" + }, + { + "region_id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/endpoints/ef84daa849894b8ebda274615a083139" + }, + "url": "http://localhost:8080/v1/AUTH_$(project_id)s", + "region": "RegionOne", + "enabled": true, + "interface": "public", + "service_id": "2774503aa5354d70a801df09a813db46", + "id": "ef84daa849894b8ebda274615a083139" + } + ], + "links": { + "self": "http://localhost/identity/v3/endpoints", + "previous": null, + "next": null + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/groups.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/groups.json b/apis/openstack-keystone/src/test/resources/v3/groups.json new file mode 100644 index 0000000..17f061c --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/groups.json @@ -0,0 +1,27 @@ +{ + "groups": [ + { + "description": "Developers cleared for work on all general projects", + "domain_id": "1789d1", + "id": "ea167b", + "links": { + "self": "https://example.com/identity/v3/groups/ea167b" + }, + "name": "Developers" + }, + { + "description": "Developers cleared for work on secret projects", + "domain_id": "1789d1", + "id": "a62db1", + "links": { + "self": "https://example.com/identity/v3/groups/a62db1" + }, + "name": "Secure Developers" + } + ], + "links": { + "self": "http://example.com/identity/v3/users/9fe1d3/groups", + "previous": null, + "next": null + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/project.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/project.json b/apis/openstack-keystone/src/test/resources/v3/project.json new file mode 100644 index 0000000..0a47ffa --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/project.json @@ -0,0 +1,15 @@ +{ + "project": { + "is_domain": false, + "description": "Updated", + "links": { + "self": "http://localhost/identity/v3/projects/2f9b30f706bc45d7923e055567be2e98" + }, + "tags": [], + "enabled": true, + "id": "2f9b30f706bc45d7923e055567be2e98", + "parent_id": "default", + "domain_id": "default", + "name": "ProjectApiLiveTest" + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/projects.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/projects.json b/apis/openstack-keystone/src/test/resources/v3/projects.json new file mode 100644 index 0000000..2f9faa0 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/projects.json @@ -0,0 +1,74 @@ +{ + "links": { + "self": "http://localhost/identity/v3/projects", + "previous": null, + "next": null + }, + "projects": [ + { + "is_domain": false, + "description": "Updated", + "links": { + "self": "http://localhost/identity/v3/projects/2f9b30f706bc45d7923e055567be2e98" + }, + "tags": [], + "enabled": true, + "id": "2f9b30f706bc45d7923e055567be2e98", + "parent_id": "default", + "domain_id": "default", + "name": "ProjectApiLiveTest" + }, + { + "is_domain": false, + "description": "", + "links": { + "self": "http://localhost/identity/v3/projects/2fa489f9b84541b8a614c8c9df0d7596" + }, + "tags": [], + "enabled": true, + "id": "2fa489f9b84541b8a614c8c9df0d7596", + "parent_id": "default", + "domain_id": "default", + "name": "service" + }, + { + "is_domain": false, + "description": "", + "links": { + "self": "http://localhost/identity/v3/projects/43de288ea0ce4d2b8b811055b10f156b" + }, + "tags": [], + "enabled": true, + "id": "43de288ea0ce4d2b8b811055b10f156b", + "parent_id": "default", + "domain_id": "default", + "name": "jclouds" + }, + { + "is_domain": false, + "description": "Bootstrap project for initializing the cloud.", + "links": { + "self": "http://localhost/identity/v3/projects/90131053e7384f8a9e970544e0845913" + }, + "tags": [], + "enabled": true, + "id": "90131053e7384f8a9e970544e0845913", + "parent_id": "default", + "domain_id": "default", + "name": "admin" + }, + { + "is_domain": false, + "description": "", + "links": { + "self": "http://localhost/identity/v3/projects/d91b807dc87d477381500e8c920b10c7" + }, + "tags": [], + "enabled": true, + "id": "d91b807dc87d477381500e8c920b10c7", + "parent_id": "default", + "domain_id": "default", + "name": "demo" + } + ] +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/region.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/region.json b/apis/openstack-keystone/src/test/resources/v3/region.json new file mode 100644 index 0000000..ee5eee8 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/region.json @@ -0,0 +1,10 @@ +{ + "region": { + "parent_region_id": null, + "id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/regions/RegionApiLiveTest" + }, + "description": "Updated" + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/regions.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/regions.json b/apis/openstack-keystone/src/test/resources/v3/regions.json new file mode 100644 index 0000000..326a6fe --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/regions.json @@ -0,0 +1,18 @@ +{ + "regions": [ + { + "parent_region_id": null, + "id": "RegionOne", + "links": { + "self": "http://localhost/identity/v3/regions/RegionOne" + }, + "description": "" + } + ], + "links": { + "self": "http://localhost/identity/v3/regions", + "previous": null, + "next": null + } +} + http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/token.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/token.json b/apis/openstack-keystone/src/test/resources/v3/token.json new file mode 100644 index 0000000..b7fa677 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/token.json @@ -0,0 +1,518 @@ +{ + "token": { + "methods": [ + "password" + ], + "roles": [ + { + "id": "9fe2ff9ee4384b1894a90878d3e92bab", + "name": "_member_" + }, + { + "id": "df7d043a09d34a7c9e2bad15926ee097", + "name": "cpf_org_manager" + }, + { + "id": "3af119c426a742999e7890f6d1f70b36", + "name": "cpf_admin" + } + ], + "expires_at": "2017-12-10T11:48:46.546830Z", + "project": { + "domain": { + "id": "2347b158dcaf488496b44cc4edfd2bd8", + "name": "0kjFQF29" + }, + "id": "2233c4d7d5c044b1b48e1bef25c1f305", + "name": "0kjFQF29-prj" + }, + "catalog": [ + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://objectstorage.myprovider.com/v1/AUTH_2233c4d7d5c044b1b48e1bef25c1f305", + "region": "uk-1", + "interface": "public", + "id": "b506af0e016a4b5fb592f196da569a41", + "name": "objectstorage" + } + ], + "type": "object-store", + "id": "024329e4fde148e58ecd90b7d9872438", + "name": "objectstorage" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://keymanagement.myprovider.com/v1", + "region": "uk-1", + "interface": "public", + "id": "0419c448001845af8f6828cf49745e72", + "name": "keymanagement" + } + ], + "type": "keystore", + "id": "07f309b0ef9d42758ea4de47bdca9c32", + "name": "keymanagement" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://certificate.myprovider.com/v1", + "region": "uk-1", + "interface": "public", + "id": "e1cc93936fb94cdbadc20f17c4ad3140", + "name": "certificate" + } + ], + "type": "certificate", + "id": "0bd9a971e97d4c15af6b94311e4e9c15", + "name": "certificate" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://orchestration.myprovider.com/v1/2233c4d7d5c044b1b48e1bef25c1f305", + "region": "uk-1", + "interface": "public", + "id": "c3ee708a6ae24ddf92c078526c36a446", + "name": "orchestration" + } + ], + "type": "orchestration", + "id": "0dafa2a9240c41268c37818979769c88", + "name": "orchestration" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://blockstorage.myprovider.com/v1/2233c4d7d5c044b1b48e1bef25c1f305", + "region": "uk-1", + "interface": "public", + "id": "ba9061d324954b1a9f6b1c1f5d4a5c5e", + "name": "blockstorage" + } + ], + "type": "volume", + "id": "0ec640e57e4d4374841d2ab7b292f2c2", + "name": "blockstorage" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://loadbalancing.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "169bcb3f92384f709232864f4d5304eb", + "name": "loadbalancing" + } + ], + "type": "loadbalancing", + "id": "15ef761fa00a438985213aec7b6fb18a", + "name": "loadbalancing" + }, + { + "endpoints": [], + "type": "dwh", + "id": "1a53a2e82370422d90174c4acf585ea9", + "name": "dwh" + }, + { + "endpoints": [], + "type": "contract", + "id": "1b35fa74ae0e46ebbc2014f976fec0e1", + "name": "contract" + }, + { + "endpoints": [], + "type": "appplatform", + "id": "253096ed430c49c48c9f3549e867b538", + "name": "appplatform" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://compute-w.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "e26ad89a682d4c8f8a71c9e76cd785b4", + "name": "compute-w" + } + ], + "type": "compute-w", + "id": "327c11710f184555b43bc6fdfc47626b", + "name": "compute-w" + }, + { + "endpoints": [], + "type": "notification", + "id": "3435ad7a1da04b1cb2e249665529eb51", + "name": "notification" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://compute.myprovider.com/v2/2233c4d7d5c044b1b48e1bef25c1f305", + "region": "uk-1", + "interface": "public", + "id": "f70e51b9a6a74a87a4c7055b8df8bedf", + "name": "compute" + } + ], + "type": "compute", + "id": "3e19093f50cc4590973c8953e2c327f9", + "name": "compute" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://queue.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "c46b5ec51ab04402a9ffd8177743ba6f", + "name": "queue" + } + ], + "type": "queue", + "id": "4a9ab69b74ec4948a0a6958177d30387", + "name": "queue" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://autoscale.myprovider.com/autoscale_schedulers", + "region": "uk-1", + "interface": "public", + "id": "071ee50be4b341558e37f84abac47d02", + "name": "autoscale" + } + ], + "type": "autoscale", + "id": "4f158b2836434c7ca6ee47e40a3ee56c", + "name": "autoscale" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://telemetry.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "6ac15657fbc548d7ab2ed986b8d94192", + "name": "telemetry" + } + ], + "type": "metering", + "id": "54ee7596f0e1433cb8db6201be2cf772", + "name": "telemetry" + }, + { + "endpoints": [], + "type": "cdn", + "id": "5954129d136e4a76b7cd6f3d1f3808b5", + "name": "cdn" + }, + { + "endpoints": [], + "type": "oss", + "id": "5a252878ffd7402498b6b74b575a899a", + "name": "oss" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://rolemanagement.myprovider.com/v1", + "region": "uk-1", + "interface": "public", + "id": "2d600a5de6ec42c6a5eab7b519832d87", + "name": "rolemanagement" + } + ], + "type": "rolemanagement", + "id": "5bc90099f0ad490c811239a6a3a8f853", + "name": "rolemanagement" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://compute-b.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "768450282d5546409395d2cb35502dad", + "name": "compute-b" + } + ], + "type": "compute-b", + "id": "65f754202b6049578e9a292a801e28f7", + "name": "compute-b" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://networking.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "675910513a7e466c84c39c5ca9445b81", + "name": "networking" + } + ], + "type": "network", + "id": "6cf37e33dc7140b9b032faabfa53a53e", + "name": "networking" + }, + { + "endpoints": [], + "type": "dns", + "id": "7426c97af5174c1abdb8b84ba02227ce", + "name": "dns" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://database.myprovider.com/v1.0/2233c4d7d5c044b1b48e1bef25c1f305", + "region": "uk-1", + "interface": "public", + "id": "6976cbeed14c464da15c13e949b41607", + "name": "database" + } + ], + "type": "database", + "id": "75c0280f15844d7a9eb22b1ad5a978e8", + "name": "database" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "http://localhost/identity/v3", + "region": "uk-1", + "interface": "admin", + "id": "db15a7126d4a4f1f81903bb4d56be32b", + "name": "identity" + } + ], + "type": "identity", + "id": "79066fe949064550930a61b33a49eb53", + "name": "identity" + }, + { + "endpoints": [], + "type": "intdns", + "id": "804190a423804019aab8fd934db0086e", + "name": "intdns" + }, + { + "endpoints": [], + "type": "invoicing", + "id": "8d364df08cbc4d7188f0cf83744b0336", + "name": "invoicing" + }, + { + "endpoints": [], + "type": "catalog", + "id": "9674ae5917af401397071c028ff33b68", + "name": "catalog" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://software.myprovider.com/v1.0", + "region": "uk-1", + "interface": "public", + "id": "fd6g35fgknrzumut7bx6p6bwzehkfhrz", + "name": "software" + } + ], + "type": "software", + "id": "9760973e49b04b00b41e60c180a80562", + "name": "software" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://blockstorage.myprovider.com/v2/2233c4d7d5c044b1b48e1bef25c1f305", + "region": "uk-1", + "interface": "public", + "id": "8c4ace3bbbd44883b5762a9ad8432a46", + "name": "blockstoragev2" + } + ], + "type": "volumev2", + "id": "9bf82d0466714eee86e304ab3301aec9", + "name": "blockstorage" + }, + { + "endpoints": [], + "type": "dnsadmin", + "id": "a2b90094346c48deabb9ca645bacf588", + "name": "dnsadmin" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://vmimport.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "225257ec50ef47668185587cc6edb95d", + "name": "vmimport" + } + ], + "type": "vmimport", + "id": "c73fa07c3b604b4f89d5a2b9c4621cf2", + "name": "vmimport" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "http://localhost/identity/v3", + "region": "uk-1", + "interface": "public", + "id": "27dc2bba1c5d4a14b68657fc8fdd4e3e", + "name": "identityv3" + }, + { + "region_id": "uk-1", + "url": "http://localhost/identity/v3", + "region": "uk-1", + "interface": "admin", + "id": "27dc2bba1c5d4a14b68657fc8fdd4e3e", + "name": "identityv3" + } + ], + "type": "identityv3", + "id": "cc6f50d496884ef0a751acb2e1eceedd", + "name": "identityv3" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://applicationmanagement.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "06fbcf8235434f23a08faed03b4af9ac", + "name": "appmanagement" + } + ], + "type": "appmanagement", + "id": "ce2f6bbe7a9f446b82d63725bd7bb484", + "name": "appmanagement" + }, + { + "endpoints": [], + "type": "nosql", + "id": "d07aa581c0734b6bb85cd496115b5110", + "name": "nosql" + }, + { + "endpoints": [], + "type": "baremetal", + "id": "d2f57dcae4c84466ac357220ff3d8900", + "name": "baremetal" + }, + { + "endpoints": [], + "type": "mail", + "id": "d4601f51af8f43f3b0e3409e4cbac690", + "name": "mail" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://networking-ex.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "bf356065e45349a5bde5e043c95a1923", + "name": "networking-ex" + } + ], + "type": "networking-ex", + "id": "d4937aa1275c41378bf2ae1dbe829c68", + "name": "networking-ex" + }, + { + "endpoints": [ + { + "region_id": "jp-east-1", + "url": "https://identity.gls.cloud.global.fujitsu.com/v3", + "region": "jp-east-1", + "interface": "public", + "id": "dc2ebf9d6fc04f1facc263a733cf754d", + "name": "global-identity" + } + ], + "type": "global-identity", + "id": "e74b9c29d6504f10a8fb8e1495f3f5c6", + "name": "global-identity" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://image.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "a832d640886b4ef89027339a2edf8fcd", + "name": "image" + } + ], + "type": "image", + "id": "ea850dab0e964e12a9f66787ee8623ae", + "name": "image" + }, + { + "endpoints": [], + "type": "billing", + "id": "f1302a2477bf492bb3e867952175974a", + "name": "billing" + }, + { + "endpoints": [ + { + "region_id": "uk-1", + "url": "https://import-export.myprovider.com", + "region": "uk-1", + "interface": "public", + "id": "e8bde8fe61a14a88b414e5568fc17201", + "name": "import-export" + } + ], + "type": "import-export", + "id": "fc302725919645199373077fa299fc6e", + "name": "import-export" + } + ], + "extras": {}, + "user": { + "domain": { + "id": "2347b158dcaf488496b44cc4edfd2bd8", + "name": "0kjFQF29" + }, + "id": "f1f24aea666542eeb58dc129c29734f0", + "name": "cloudsoft" + }, + "audit_ids": [ + "kr9Qqe-1QFOOlrt2XP6AqA" + ], + "issued_at": "2017-12-10T08:48:46.546877Z" + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/user.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/user.json b/apis/openstack-keystone/src/test/resources/v3/user.json new file mode 100644 index 0000000..1c64db9 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/user.json @@ -0,0 +1,13 @@ +{ + "user": { + "password_expires_at": null, + "links": { + "self": "http://localhost/identity/v3/users/0bedc61110fd4e94a251260a47f18f29" + }, + "enabled": true, + "id": "0bedc61110fd4e94a251260a47f18f29", + "options": {}, + "domain_id": "default", + "name": "User" + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-keystone/src/test/resources/v3/users.json ---------------------------------------------------------------------- diff --git a/apis/openstack-keystone/src/test/resources/v3/users.json b/apis/openstack-keystone/src/test/resources/v3/users.json new file mode 100644 index 0000000..4830220 --- /dev/null +++ b/apis/openstack-keystone/src/test/resources/v3/users.json @@ -0,0 +1,132 @@ +{ + "users": [ + { + "password_expires_at": null, + "name": "UserApiLiveTest", + "links": { + "self": "http://localhost/identity/v3/users/0bedc61110fd4e94a251260a47f18f29" + }, + "domain_id": "default", + "enabled": true, + "id": "0bedc61110fd4e94a251260a47f18f29", + "options": {} + }, + { + "password_expires_at": null, + "name": "glance-swift", + "links": { + "self": "http://localhost/identity/v3/users/1194933d3f1147a3b0824848bb7ec5e2" + }, + "domain_id": "default", + "enabled": true, + "id": "1194933d3f1147a3b0824848bb7ec5e2", + "options": {} + }, + { + "password_expires_at": null, + "name": "nova", + "links": { + "self": "http://localhost/identity/v3/users/290999fc41fb48e397feef465d014fb6" + }, + "domain_id": "default", + "enabled": true, + "id": "290999fc41fb48e397feef465d014fb6", + "options": {} + }, + { + "password_expires_at": null, + "name": "placement", + "links": { + "self": "http://localhost/identity/v3/users/34e6ac0dd9bb4601bac4971785abd7f5" + }, + "domain_id": "default", + "enabled": true, + "id": "34e6ac0dd9bb4601bac4971785abd7f5", + "options": {} + }, + { + "name": "jclouds", + "links": { + "self": "http://localhost/identity/v3/users/6c3b325a28264f00865b38442429fd77" + }, + "domain_id": "default", + "enabled": true, + "options": {}, + "default_project_id": "43de288ea0ce4d2b8b811055b10f156b", + "id": "6c3b325a28264f00865b38442429fd77", + "password_expires_at": null + }, + { + "password_expires_at": null, + "name": "cinder", + "links": { + "self": "http://localhost/identity/v3/users/6e705bff20794de5955acf0936f02b3f" + }, + "domain_id": "default", + "enabled": true, + "id": "6e705bff20794de5955acf0936f02b3f", + "options": {} + }, + { + "name": "demo", + "links": { + "self": "http://localhost/identity/v3/users/84910c7070144530a6b9627fe0e1743f" + }, + "domain_id": "default", + "enabled": true, + "options": {}, + "id": "84910c7070144530a6b9627fe0e1743f", + "email": "[email protected]", + "password_expires_at": null + }, + { + "password_expires_at": null, + "name": "swift", + "links": { + "self": "http://localhost/identity/v3/users/87306cb2f0954ca8919f0fbaf29a780f" + }, + "domain_id": "default", + "enabled": true, + "id": "87306cb2f0954ca8919f0fbaf29a780f", + "options": {} + }, + { + "password_expires_at": null, + "name": "glance", + "links": { + "self": "http://localhost/identity/v3/users/94c9f0f5e056489ebfef25870e8944fe" + }, + "domain_id": "default", + "enabled": true, + "id": "94c9f0f5e056489ebfef25870e8944fe", + "options": {} + }, + { + "password_expires_at": null, + "name": "admin", + "links": { + "self": "http://localhost/identity/v3/users/ab7bd6c2dd394fce8318e7562115d3f8" + }, + "domain_id": "default", + "enabled": true, + "id": "ab7bd6c2dd394fce8318e7562115d3f8", + "options": {} + }, + { + "password_expires_at": null, + "name": "neutron", + "links": { + "self": "http://localhost/identity/v3/users/d3607e141e334823978eec2e1ccca8de" + }, + "domain_id": "default", + "enabled": true, + "id": "d3607e141e334823978eec2e1ccca8de", + "options": {} + } + ], + "links": { + "self": "http://localhost/identity/v3/users", + "previous": null, + "next": null + } +} http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/NovaApiMetadata.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/NovaApiMetadata.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/NovaApiMetadata.java index d73a1da..a330afa 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/NovaApiMetadata.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/NovaApiMetadata.java @@ -17,8 +17,9 @@ package org.jclouds.openstack.nova.v2_0; import static org.jclouds.Constants.PROPERTY_SESSION_INTERVAL; -import static org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.CREDENTIAL_TYPE; -import static org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.SERVICE_TYPE; +import static org.jclouds.openstack.keystone.config.KeystoneProperties.CREDENTIAL_TYPE; +import static org.jclouds.openstack.keystone.config.KeystoneProperties.KEYSTONE_VERSION; +import static org.jclouds.openstack.keystone.config.KeystoneProperties.SERVICE_TYPE; import static org.jclouds.openstack.nova.v2_0.config.NovaProperties.AUTO_ALLOCATE_FLOATING_IPS; import static org.jclouds.openstack.nova.v2_0.config.NovaProperties.AUTO_GENERATE_KEYPAIRS; import static org.jclouds.openstack.nova.v2_0.config.NovaProperties.TIMEOUT_SECURITYGROUP_PRESENT; @@ -29,10 +30,10 @@ import java.util.Properties; import org.jclouds.apis.ApiMetadata; import org.jclouds.compute.ComputeServiceContext; -import org.jclouds.openstack.keystone.v2_0.config.AuthenticationApiModule; -import org.jclouds.openstack.keystone.v2_0.config.CredentialTypes; -import org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule; -import org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule.RegionModule; +import org.jclouds.openstack.keystone.auth.config.AuthenticationModule; +import org.jclouds.openstack.keystone.auth.config.CredentialTypes; +import org.jclouds.openstack.keystone.catalog.config.ServiceCatalogModule; +import org.jclouds.openstack.keystone.catalog.config.ServiceCatalogModule.RegionModule; import org.jclouds.openstack.nova.v2_0.compute.config.NovaComputeServiceContextModule; import org.jclouds.openstack.nova.v2_0.config.NovaHttpApiModule; import org.jclouds.openstack.nova.v2_0.config.NovaParserModule; @@ -69,6 +70,7 @@ public class NovaApiMetadata extends BaseHttpApiMetadata<NovaApi> { properties.setProperty("jclouds.ssh.retry-auth", "true"); properties.setProperty(SERVICE_TYPE, ServiceType.COMPUTE); properties.setProperty(CREDENTIAL_TYPE, CredentialTypes.PASSWORD_CREDENTIALS); + properties.setProperty(KEYSTONE_VERSION, "2"); properties.setProperty(AUTO_ALLOCATE_FLOATING_IPS, "false"); properties.setProperty(AUTO_GENERATE_KEYPAIRS, "false"); properties.setProperty(TIMEOUT_SECURITYGROUP_PRESENT, "500"); @@ -93,8 +95,8 @@ public class NovaApiMetadata extends BaseHttpApiMetadata<NovaApi> { .defaultProperties(NovaApiMetadata.defaultProperties()) .view(typeToken(ComputeServiceContext.class)) .defaultModules(ImmutableSet.<Class<? extends Module>>builder() - .add(AuthenticationApiModule.class) - .add(KeystoneAuthenticationModule.class) + .add(AuthenticationModule.class) + .add(ServiceCatalogModule.class) .add(RegionModule.class) .add(NovaParserModule.class) .add(NovaHttpApiModule.class) http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AttachInterfaceApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AttachInterfaceApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AttachInterfaceApi.java index 65bd198..119b08a 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AttachInterfaceApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AttachInterfaceApi.java @@ -29,7 +29,7 @@ import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.InterfaceAttachment; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AvailabilityZoneApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AvailabilityZoneApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AvailabilityZoneApi.java index 9aa9b21..e3abe74 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AvailabilityZoneApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/AvailabilityZoneApi.java @@ -23,7 +23,7 @@ import javax.ws.rs.Path; import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.regionscoped.AvailabilityZone; import org.jclouds.openstack.nova.v2_0.domain.regionscoped.AvailabilityZoneDetails; import org.jclouds.openstack.v2_0.ServiceType; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ConsolesApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ConsolesApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ConsolesApi.java index 7aa1f60..a4d4127 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ConsolesApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ConsolesApi.java @@ -25,7 +25,7 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.fallbacks.MapHttp4xxCodesToExceptions; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.binders.BindConsoleToJsonPayload; import org.jclouds.openstack.nova.v2_0.domain.Console; import org.jclouds.openstack.v2_0.ServiceType; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FlavorExtraSpecsApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FlavorExtraSpecsApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FlavorExtraSpecsApi.java index 0db8cee..d935763 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FlavorExtraSpecsApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FlavorExtraSpecsApi.java @@ -33,7 +33,7 @@ import org.jclouds.Fallbacks.EmptyMapOnNotFoundOr404; import org.jclouds.Fallbacks.FalseOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; import org.jclouds.rest.annotations.Fallback; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPApi.java index 626ee2d..003e66b 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPApi.java @@ -29,7 +29,7 @@ import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.FloatingIP; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPPoolApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPPoolApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPPoolApi.java index ead37ab..5bf5625 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPPoolApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/FloatingIPPoolApi.java @@ -22,7 +22,7 @@ import javax.ws.rs.Path; import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.FloatingIPPool; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAdministrationApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAdministrationApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAdministrationApi.java index 8a07d3f..5eadc48 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAdministrationApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAdministrationApi.java @@ -26,7 +26,7 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.Host; import org.jclouds.openstack.nova.v2_0.domain.HostResourceUsage; import org.jclouds.openstack.nova.v2_0.functions.FieldValueResponseParsers.MaintenanceModeDisabledResponseParser; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAggregateApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAggregateApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAggregateApi.java index 889bb4f..18ad082 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAggregateApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HostAggregateApi.java @@ -32,7 +32,7 @@ import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; import org.jclouds.Fallbacks.FalseOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.HostAggregate; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HypervisorApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HypervisorApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HypervisorApi.java index 8da914c..9e443f6 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HypervisorApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/HypervisorApi.java @@ -23,7 +23,7 @@ import javax.ws.rs.Path; import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.regionscoped.Hypervisor; import org.jclouds.openstack.nova.v2_0.domain.regionscoped.HypervisorDetails; import org.jclouds.openstack.v2_0.ServiceType; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/KeyPairApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/KeyPairApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/KeyPairApi.java index d9f87d3..34074d1 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/KeyPairApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/KeyPairApi.java @@ -30,7 +30,7 @@ import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; import org.jclouds.Fallbacks.FalseOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.binders.BindKeyPairToJsonPayload; import org.jclouds.openstack.nova.v2_0.domain.KeyPair; import org.jclouds.openstack.nova.v2_0.functions.internal.ParseKeyPairs; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/QuotaApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/QuotaApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/QuotaApi.java index 5790620..59a5dd5 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/QuotaApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/QuotaApi.java @@ -27,7 +27,7 @@ import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.Quota; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SecurityGroupApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SecurityGroupApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SecurityGroupApi.java index 7e2b503..9d3ed0f 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SecurityGroupApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SecurityGroupApi.java @@ -30,7 +30,7 @@ import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; import org.jclouds.Fallbacks.FalseOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.binders.BindSecurityGroupRuleToJsonPayload; import org.jclouds.openstack.nova.v2_0.domain.Ingress; import org.jclouds.openstack.nova.v2_0.domain.SecurityGroup; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerAdminApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerAdminApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerAdminApi.java index e054bd9..b489b2a 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerAdminApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerAdminApi.java @@ -25,7 +25,7 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import org.jclouds.fallbacks.MapHttp4xxCodesToExceptions; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.BackupType; import org.jclouds.openstack.nova.v2_0.functions.ParseImageIdFromLocationHeader; import org.jclouds.openstack.nova.v2_0.options.CreateBackupOfServerOptions; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerWithSecurityGroupsApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerWithSecurityGroupsApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerWithSecurityGroupsApi.java index 3d1ecba..e17ca69 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerWithSecurityGroupsApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/ServerWithSecurityGroupsApi.java @@ -25,7 +25,7 @@ import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.ServerWithSecurityGroups; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SimpleTenantUsageApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SimpleTenantUsageApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SimpleTenantUsageApi.java index 269059b..f88b480 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SimpleTenantUsageApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/SimpleTenantUsageApi.java @@ -26,7 +26,7 @@ import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.SimpleTenantUsage; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VirtualInterfaceApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VirtualInterfaceApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VirtualInterfaceApi.java index eff19a0..f484cff 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VirtualInterfaceApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VirtualInterfaceApi.java @@ -24,7 +24,7 @@ import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.VirtualInterface; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeApi.java index eeaa992..185c807 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeApi.java @@ -30,7 +30,7 @@ import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; import org.jclouds.Fallbacks.FalseOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.Volume; import org.jclouds.openstack.nova.v2_0.domain.VolumeSnapshot; import org.jclouds.openstack.nova.v2_0.options.CreateVolumeOptions; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeAttachmentApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeAttachmentApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeAttachmentApi.java index 4445b3e..8d329f1 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeAttachmentApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeAttachmentApi.java @@ -30,7 +30,7 @@ import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404; import org.jclouds.Fallbacks.FalseOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.VolumeAttachment; import org.jclouds.openstack.v2_0.ServiceType; import org.jclouds.openstack.v2_0.services.Extension; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeTypeApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeTypeApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeTypeApi.java index 1204066..05dafac 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeTypeApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions/VolumeTypeApi.java @@ -34,7 +34,7 @@ import org.jclouds.Fallbacks.EmptyMapOnNotFoundOr404; import org.jclouds.Fallbacks.FalseOnNotFoundOr404; import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.VolumeType; import org.jclouds.openstack.nova.v2_0.options.CreateVolumeTypeOptions; import org.jclouds.openstack.v2_0.ServiceType; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/FlavorApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/FlavorApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/FlavorApi.java index d9e1498..98d1d9f 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/FlavorApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/FlavorApi.java @@ -31,8 +31,8 @@ import org.jclouds.Fallbacks.NullOnNotFoundOr404; import org.jclouds.Fallbacks.VoidOnNotFoundOr404; import org.jclouds.collect.PagedIterable; import org.jclouds.javax.annotation.Nullable; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.keystone.v2_0.KeystoneFallbacks.EmptyPaginatedCollectionOnNotFoundOr404; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.domain.Flavor; import org.jclouds.openstack.nova.v2_0.functions.internal.ParseFlavorDetails; import org.jclouds.openstack.nova.v2_0.functions.internal.ParseFlavors; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ImageApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ImageApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ImageApi.java index 1258c79..3dc9907 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ImageApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ImageApi.java @@ -36,8 +36,8 @@ import org.jclouds.Fallbacks.VoidOnNotFoundOr404; import org.jclouds.collect.PagedIterable; import org.jclouds.javax.annotation.Nullable; import org.jclouds.openstack.v2_0.domain.PaginatedCollection; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.keystone.v2_0.KeystoneFallbacks.EmptyPaginatedCollectionOnNotFoundOr404; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.binders.BindMetadataToJsonPayload; import org.jclouds.openstack.nova.v2_0.domain.Image; import org.jclouds.openstack.nova.v2_0.functions.internal.OnlyMetadataValueOrNull; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ServerApi.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ServerApi.java b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ServerApi.java index 42ab1c7..33bf09a 100644 --- a/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ServerApi.java +++ b/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/features/ServerApi.java @@ -41,8 +41,8 @@ import org.jclouds.collect.PagedIterable; import org.jclouds.fallbacks.MapHttp4xxCodesToExceptions; import org.jclouds.javax.annotation.Nullable; import org.jclouds.openstack.v2_0.domain.PaginatedCollection; +import org.jclouds.openstack.keystone.auth.filters.AuthenticateRequest; import org.jclouds.openstack.keystone.v2_0.KeystoneFallbacks.EmptyPaginatedCollectionOnNotFoundOr404; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; import org.jclouds.openstack.nova.v2_0.binders.BindMetadataToJsonPayload; import org.jclouds.openstack.nova.v2_0.domain.RebootType; import org.jclouds.openstack.nova.v2_0.domain.Server; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAndTenantIdAuthenticationExpectTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAndTenantIdAuthenticationExpectTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAndTenantIdAuthenticationExpectTest.java index a19dc75..8c18292 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAndTenantIdAuthenticationExpectTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAndTenantIdAuthenticationExpectTest.java @@ -31,7 +31,7 @@ import com.google.common.collect.ImmutableSet; /** * - * @see org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties#CREDENTIAL_TYPE + * @see org.jclouds.openstack.keystone.config.KeystoneProperties#CREDENTIAL_TYPE */ @Test(groups = "unit", testName = "AccessKeyAndSecretKeyAndTenantIdAuthenticationExpectTest") public class AccessKeyAndSecretKeyAndTenantIdAuthenticationExpectTest extends BaseNovaApiExpectTest { http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAuthenticationExpectTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAuthenticationExpectTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAuthenticationExpectTest.java index bd3f714..54aba76 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAuthenticationExpectTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/AccessKeyAndSecretKeyAuthenticationExpectTest.java @@ -30,7 +30,7 @@ import com.google.common.collect.ImmutableSet; /** * - * @see org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties#CREDENTIAL_TYPE + * @see org.jclouds.openstack.keystone.config.KeystoneProperties#CREDENTIAL_TYPE */ @Test(groups = "unit", testName = "AccessKeyAndSecretKeyAuthenticationExpectTest") public class AccessKeyAndSecretKeyAuthenticationExpectTest extends BaseNovaApiExpectTest { http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationExpectTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationExpectTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationExpectTest.java index 55f1a21..dac895e 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationExpectTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationExpectTest.java @@ -28,7 +28,7 @@ import com.google.common.collect.ImmutableSet; /** * - * @see org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties#CREDENTIAL_TYPE + * @see org.jclouds.openstack.keystone.config.KeystoneProperties#CREDENTIAL_TYPE */ @Test(groups = "unit", testName = "PasswordAuthenticationExpectTest") public class PasswordAuthenticationExpectTest extends BaseNovaApiExpectTest { http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationWithTenantNameExpectTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationWithTenantNameExpectTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationWithTenantNameExpectTest.java index 87d3f37..4761a6e 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationWithTenantNameExpectTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/PasswordAuthenticationWithTenantNameExpectTest.java @@ -30,7 +30,7 @@ import com.google.common.collect.ImmutableSet; /** * - * @see org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties#CREDENTIAL_TYPE + * @see org.jclouds.openstack.keystone.config.KeystoneProperties#CREDENTIAL_TYPE */ @Test(groups = "unit", testName = "PasswordAuthenticationWithTenantNameExpectTest") public class PasswordAuthenticationWithTenantNameExpectTest extends BaseNovaApiExpectTest { http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceLiveTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceLiveTest.java index f5e33dd..d4aac07 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceLiveTest.java @@ -21,7 +21,7 @@ import static java.util.logging.Logger.getAnonymousLogger; import java.util.Properties; import org.jclouds.compute.internal.BaseComputeServiceLiveTest; -import org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties; +import org.jclouds.openstack.keystone.config.KeystoneProperties; import org.jclouds.openstack.nova.v2_0.config.NovaProperties; import org.jclouds.rest.AuthorizationException; import org.jclouds.sshj.config.SshjSshClientModule; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/functions/InternalURLLiveTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/functions/InternalURLLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/functions/InternalURLLiveTest.java index 602831c..713c1b9 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/functions/InternalURLLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/functions/InternalURLLiveTest.java @@ -21,8 +21,8 @@ import static org.testng.Assert.assertNotNull; import java.util.Properties; +import org.jclouds.openstack.keystone.catalog.config.InternalUrlModule; import org.jclouds.openstack.nova.v2_0.internal.BaseNovaApiLiveTest; -import org.jclouds.openstack.v2_0.config.InternalUrlModule; import org.testng.Assert; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/internal/BaseNovaApiLiveTest.java ---------------------------------------------------------------------- diff --git a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/internal/BaseNovaApiLiveTest.java b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/internal/BaseNovaApiLiveTest.java index 614fad2..13b34d1 100644 --- a/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/internal/BaseNovaApiLiveTest.java +++ b/apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/internal/BaseNovaApiLiveTest.java @@ -20,7 +20,7 @@ import java.util.Properties; import java.util.Set; import org.jclouds.apis.BaseApiLiveTest; -import org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties; +import org.jclouds.openstack.keystone.config.KeystoneProperties; import org.jclouds.openstack.nova.v2_0.NovaApi; import org.jclouds.openstack.nova.v2_0.config.NovaProperties; import org.jclouds.openstack.nova.v2_0.domain.Flavor; http://git-wip-us.apache.org/repos/asf/jclouds/blob/dd73410d/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java ---------------------------------------------------------------------- diff --git a/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java b/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java index 7351f68..3de0853 100644 --- a/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java +++ b/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApiMetadata.java @@ -17,21 +17,22 @@ package org.jclouds.openstack.swift.v1; import static org.jclouds.Constants.PROPERTY_IDEMPOTENT_METHODS; -import static org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.CREDENTIAL_TYPE; -import static org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.SERVICE_TYPE; -import static org.jclouds.openstack.swift.v1.reference.TempAuthHeaders.TEMP_AUTH_HEADER_USER; -import static org.jclouds.openstack.swift.v1.reference.TempAuthHeaders.TEMP_AUTH_HEADER_PASS; -import static org.jclouds.openstack.swift.v1.reference.TempAuthHeaders.DEFAULT_HEADER_USER; +import static org.jclouds.openstack.keystone.config.KeystoneProperties.CREDENTIAL_TYPE; +import static org.jclouds.openstack.keystone.config.KeystoneProperties.KEYSTONE_VERSION; +import static org.jclouds.openstack.keystone.config.KeystoneProperties.SERVICE_TYPE; import static org.jclouds.openstack.swift.v1.reference.TempAuthHeaders.DEFAULT_HEADER_PASS; +import static org.jclouds.openstack.swift.v1.reference.TempAuthHeaders.DEFAULT_HEADER_USER; +import static org.jclouds.openstack.swift.v1.reference.TempAuthHeaders.TEMP_AUTH_HEADER_PASS; +import static org.jclouds.openstack.swift.v1.reference.TempAuthHeaders.TEMP_AUTH_HEADER_USER; import static org.jclouds.reflect.Reflection2.typeToken; - import java.net.URI; import java.util.Properties; import org.jclouds.apis.ApiMetadata; -import org.jclouds.openstack.keystone.v2_0.config.CredentialTypes; -import org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule.RegionModule; +import org.jclouds.openstack.keystone.auth.config.CredentialTypes; +import org.jclouds.openstack.keystone.catalog.config.ServiceCatalogModule; +import org.jclouds.openstack.keystone.catalog.config.ServiceCatalogModule.RegionModule; import org.jclouds.openstack.swift.v1.blobstore.RegionScopedBlobStoreContext; import org.jclouds.openstack.swift.v1.blobstore.config.SignUsingTemporaryUrls; import org.jclouds.openstack.swift.v1.blobstore.config.SwiftBlobStoreContextModule; @@ -64,6 +65,7 @@ public class SwiftApiMetadata extends BaseHttpApiMetadata<SwiftApi> { public static Properties defaultProperties() { Properties properties = BaseHttpApiMetadata.defaultProperties(); properties.setProperty(SERVICE_TYPE, ServiceType.OBJECT_STORE); + properties.setProperty(KEYSTONE_VERSION, "2"); properties.setProperty(PROPERTY_IDEMPOTENT_METHODS, "DELETE,GET,HEAD,OPTIONS,POST,PUT"); // Can alternatively be set to "tempAuthCredentials" properties.setProperty(CREDENTIAL_TYPE, CredentialTypes.PASSWORD_CREDENTIALS); @@ -87,6 +89,7 @@ public class SwiftApiMetadata extends BaseHttpApiMetadata<SwiftApi> { .view(typeToken(RegionScopedBlobStoreContext.class)) .defaultModules(ImmutableSet.<Class<? extends Module>>builder() .add(SwiftAuthenticationModule.class) + .add(ServiceCatalogModule.class) .add(RegionModule.class) .add(SwiftTypeAdapters.class) .add(SwiftHttpApiModule.class)
