http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/NullSafeCopies.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/NullSafeCopies.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/NullSafeCopies.java deleted file mode 100644 index 3e5c961..0000000 --- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/NullSafeCopies.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * 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.googlecomputeengine.internal; - -import java.util.List; -import java.util.Map; - -import org.jclouds.javax.annotation.Nullable; - -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableMap; - -public final class NullSafeCopies { - - public static <K, V> Map<K, V> copyOf(@Nullable Map<K, V> map) { - return map != null ? ImmutableMap.copyOf(map) : ImmutableMap.<K, V>of(); - } - - public static <E> List<E> copyOf(@Nullable List<E> list) { - return list != null ? ImmutableList.copyOf(list) : ImmutableList.<E>of(); - } - - private NullSafeCopies() { - } -}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/PATCH.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/PATCH.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/PATCH.java deleted file mode 100644 index 4efeee2..0000000 --- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/internal/PATCH.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * 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.googlecomputeengine.internal; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -import javax.ws.rs.HttpMethod; - -/** - * Indicates that the annotated method responds to HTTP PATCH requests - * - * @see javax.ws.rs.HttpMethod - */ -@Target({ElementType.METHOD}) -@Retention(RetentionPolicy.RUNTIME) -@HttpMethod("PATCH") -public @interface PATCH { -} http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/ListOptions.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/ListOptions.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/ListOptions.java index 0c46000..314f157 100644 --- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/ListOptions.java +++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/ListOptions.java @@ -18,12 +18,10 @@ package org.jclouds.googlecomputeengine.options; import static com.google.common.base.Preconditions.checkNotNull; -import org.jclouds.http.options.BaseHttpRequestOptions; - /** - * Allows to optionally specify a filter, max results and a page token for <code>listFirstPage()</code> REST methods. + * Allows to optionally specify a filter, max results and a page token for <code>listPage</code> REST methods. */ -public final class ListOptions extends BaseHttpRequestOptions { +public final class ListOptions extends org.jclouds.googlecloud.options.ListOptions { /** * Optional. Filter expression for filtering listed resources, in the form filter={expression}. Your {expression} @@ -65,9 +63,8 @@ public final class ListOptions extends BaseHttpRequestOptions { * Sets Maximum count of results to be returned. Maximum and default value is 100. Acceptable items are 0 to * 100, inclusive. (Default: 100) */ - public ListOptions maxResults(Integer maxResults) { - this.queryParameters.put("maxResults", checkNotNull(maxResults, "maxResults") + ""); - return this; + @Override public ListOptions maxResults(Integer maxResults) { + return (ListOptions) super.maxResults(maxResults); } public static final class Builder { http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineAuthenticatedRestContextLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineAuthenticatedRestContextLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineAuthenticatedRestContextLiveTest.java deleted file mode 100644 index b6ceeee..0000000 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineAuthenticatedRestContextLiveTest.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * 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.googlecomputeengine; - -import java.util.Properties; - -import org.jclouds.googlecomputeengine.internal.TestProperties; -import org.jclouds.oauth.v2.internal.BaseOAuthAuthenticatedApiLiveTest; -import org.testng.annotations.Test; - -@Test(groups = "live") -public class GoogleComputeEngineAuthenticatedRestContextLiveTest extends BaseOAuthAuthenticatedApiLiveTest<GoogleComputeEngineApi> { - - public GoogleComputeEngineAuthenticatedRestContextLiveTest() { - provider = "google-compute-engine"; - } - - @Override - public String getScopes() { - return "https://www.googleapis.com/auth/compute"; - } - - @Override protected Properties setupProperties() { - return TestProperties.apply(super.setupProperties()); - } -} http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineProviderMetadataTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineProviderMetadataTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineProviderMetadataTest.java index d7d52eb..6204f64 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineProviderMetadataTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/GoogleComputeEngineProviderMetadataTest.java @@ -26,7 +26,7 @@ import org.testng.annotations.Test; * META-INF/services/org.jclouds.providers.ProviderMetadata * </pre> */ -@Test(groups = "unit", testName = "GoogleComputeProviderMetadataTest") +@Test(groups = "unit", testName = "GoogleComputeEngineProviderMetadataTest") public class GoogleComputeEngineProviderMetadataTest extends BaseProviderMetadataTest { public GoogleComputeEngineProviderMetadataTest() { super(new GoogleComputeEngineProviderMetadata(), new GoogleComputeEngineApiMetadata()); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/GoogleComputeEngineServiceLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/GoogleComputeEngineServiceLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/GoogleComputeEngineServiceLiveTest.java index b27944c..9d528cc 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/GoogleComputeEngineServiceLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/GoogleComputeEngineServiceLiveTest.java @@ -25,9 +25,9 @@ import java.util.Properties; import org.jclouds.compute.domain.Hardware; import org.jclouds.compute.domain.NodeMetadata; import org.jclouds.compute.internal.BaseComputeServiceLiveTest; +import org.jclouds.googlecloud.internal.TestProperties; import org.jclouds.googlecomputeengine.GoogleComputeEngineApi; import org.jclouds.googlecomputeengine.domain.MachineType; -import org.jclouds.googlecomputeengine.internal.TestProperties; import org.jclouds.sshj.config.SshjSshClientModule; import org.testng.annotations.Test; @@ -45,7 +45,7 @@ public class GoogleComputeEngineServiceLiveTest extends BaseComputeServiceLiveTe } @Override protected Properties setupProperties() { - return TestProperties.apply(super.setupProperties()); + return TestProperties.apply(provider, super.setupProperties()); } public void testListHardwareProfiles() throws Exception { http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtensionLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtensionLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtensionLiveTest.java index a50de5a..1cc00b0 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtensionLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtensionLiveTest.java @@ -19,7 +19,7 @@ package org.jclouds.googlecomputeengine.compute.extensions; import java.util.Properties; import org.jclouds.compute.extensions.internal.BaseSecurityGroupExtensionLiveTest; -import org.jclouds.googlecomputeengine.internal.TestProperties; +import org.jclouds.googlecloud.internal.TestProperties; import org.testng.annotations.Test; @Test(groups = "live", singleThreaded = true, testName = "GoogleComputeEngineSecurityGroupExtensionLiveTest") @@ -30,6 +30,6 @@ public class GoogleComputeEngineSecurityGroupExtensionLiveTest extends BaseSecur } @Override protected Properties setupProperties() { - return TestProperties.apply(super.setupProperties()); + return TestProperties.apply(provider, super.setupProperties()); } } http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/NetworkToSecurityGroupTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/NetworkToSecurityGroupTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/NetworkToSecurityGroupTest.java index 55bbf2d..d42cab5 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/NetworkToSecurityGroupTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/NetworkToSecurityGroupTest.java @@ -29,8 +29,8 @@ import static org.testng.Assert.assertTrue; import java.net.URI; import org.jclouds.compute.domain.SecurityGroup; +import org.jclouds.googlecloud.domain.ForwardingListPage; import org.jclouds.googlecomputeengine.GoogleComputeEngineApi; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Network; import org.jclouds.googlecomputeengine.features.FirewallApi; import org.jclouds.googlecomputeengine.options.ListOptions; @@ -53,7 +53,7 @@ public class NetworkToSecurityGroupTest { ListOptions options = filter("network eq .*/party-test"); expect(api.firewalls()).andReturn(fwApi); expect(fwApi.list(options)).andReturn( - singletonIterator(ListPage.create(ImmutableList.of(FirewallToIpPermissionTest.fwForTest()), null))); + singletonIterator(ForwardingListPage.create(ImmutableList.of(FirewallToIpPermissionTest.fwForTest()), null))); replay(api, fwApi); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/config/UseApiToResolveProjectNameMockTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/config/UseApiToResolveProjectNameMockTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/config/UseApiToResolveProjectNameMockTest.java index 512f70e..25f3431 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/config/UseApiToResolveProjectNameMockTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/config/UseApiToResolveProjectNameMockTest.java @@ -63,7 +63,7 @@ public class UseApiToResolveProjectNameMockTest extends BaseGoogleComputeEngineA fn().apply(new Credentials(projectNumber, credential)); fail(); } catch (IllegalArgumentException e) { - assertEquals(e.getMessage(), String.format("Identity %s is malformed. Should be %s", projectNumber, + assertEquals(e.getMessage(), String.format("Client email %s is malformed. Should be %s", projectNumber, new GoogleComputeEngineApiMetadata().getIdentityName())); } http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AddressApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AddressApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AddressApiLiveTest.java index e5feef5..cee41f6 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AddressApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AddressApiLiveTest.java @@ -22,8 +22,8 @@ import static org.testng.Assert.assertNotNull; import java.util.Iterator; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Address; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AggregatedListApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AggregatedListApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AggregatedListApiLiveTest.java index 9c34ad7..436fea0 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AggregatedListApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AggregatedListApiLiveTest.java @@ -23,7 +23,7 @@ import static org.testng.Assert.assertTrue; import java.util.Iterator; import java.util.List; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.MachineType; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskApiLiveTest.java index 32a1943..b53761a 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskApiLiveTest.java @@ -24,8 +24,8 @@ import java.net.URI; import java.util.Iterator; import java.util.List; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Disk; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.jclouds.googlecomputeengine.options.DiskCreationOptions; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskTypeApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskTypeApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskTypeApiLiveTest.java index e776a20..6d43913 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskTypeApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskTypeApiLiveTest.java @@ -23,8 +23,8 @@ import static org.testng.Assert.assertTrue; import java.util.Iterator; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.DiskType; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/FirewallApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/FirewallApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/FirewallApiLiveTest.java index a4098c2..a56cc3e 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/FirewallApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/FirewallApiLiveTest.java @@ -23,8 +23,8 @@ import static org.testng.Assert.assertNotNull; import java.util.Iterator; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Firewall; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.jclouds.googlecomputeengine.options.FirewallOptions; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ForwardingRuleApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ForwardingRuleApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ForwardingRuleApiLiveTest.java index 5a1b6a0..1beb95c 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ForwardingRuleApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ForwardingRuleApiLiveTest.java @@ -20,9 +20,9 @@ import static org.jclouds.googlecomputeengine.options.ListOptions.Builder.filter import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertNotNull; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Address; import org.jclouds.googlecomputeengine.domain.ForwardingRule; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.domain.TargetPool; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.jclouds.googlecomputeengine.options.ForwardingRuleCreationOptions; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/HttpHealthCheckApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/HttpHealthCheckApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/HttpHealthCheckApiLiveTest.java index 989fe25..e8863da 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/HttpHealthCheckApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/HttpHealthCheckApiLiveTest.java @@ -21,8 +21,8 @@ import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertNotEquals; import static org.testng.Assert.assertNotNull; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.HttpHealthCheck; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.jclouds.googlecomputeengine.options.HttpHealthCheckCreationOptions; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ImageApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ImageApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ImageApiLiveTest.java index bbe2e4c..5699edb 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ImageApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ImageApiLiveTest.java @@ -23,9 +23,9 @@ import java.net.URI; import java.util.Iterator; import java.util.List; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Disk; import org.jclouds.googlecomputeengine.domain.Image; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java index 5f6f8dc..2c3e832 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java @@ -27,11 +27,11 @@ import java.util.Iterator; import java.util.List; import java.util.Properties; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.GoogleComputeEngineApi; import org.jclouds.googlecomputeengine.domain.Image; import org.jclouds.googlecomputeengine.domain.Instance; import org.jclouds.googlecomputeengine.domain.Instance.AttachedDisk; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Metadata; import org.jclouds.googlecomputeengine.domain.NewInstance; import org.jclouds.googlecomputeengine.domain.NewInstance.Disk; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java index ba90d44..e286971 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java @@ -24,7 +24,7 @@ import static org.testng.Assert.assertTrue; import java.util.Iterator; import java.util.List; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.MachineType; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java index 5daf174..5fac64c 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java @@ -23,7 +23,7 @@ import static org.testng.Assert.assertNotNull; import java.util.Iterator; import java.util.List; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Network; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiExpectTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiExpectTest.java index 5d3474e..5b5f4e1 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiExpectTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiExpectTest.java @@ -21,8 +21,9 @@ import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertFalse; import static org.testng.Assert.assertNull; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.GoogleComputeEngineApi; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Operation; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineExpectTest; import org.jclouds.googlecomputeengine.parse.ParseGlobalOperationListTest; @@ -156,7 +157,7 @@ public class OperationApiExpectTest extends BaseGoogleComputeEngineExpectTest<Go } private ListPage<Operation> regionList() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseRegionOperationTest().expected()), // items null // nextPageToken ); @@ -214,7 +215,7 @@ public class OperationApiExpectTest extends BaseGoogleComputeEngineExpectTest<Go } private ListPage<Operation> zoneList() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseZoneOperationTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiLiveTest.java index a9e15e4..1ba2aee 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/OperationApiLiveTest.java @@ -22,7 +22,7 @@ import static org.testng.Assert.assertNotNull; import java.util.Iterator; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Operation; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.SkipException; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java index 2afeb97..7ddefe9 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java @@ -24,7 +24,7 @@ import static org.testng.Assert.assertTrue; import java.util.Iterator; import java.util.List; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Region; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java index 71ccc59..8e87712 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java @@ -22,7 +22,7 @@ import static org.testng.Assert.assertNotNull; import java.util.Iterator; import java.util.List; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Route; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.jclouds.googlecomputeengine.options.ListOptions; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java index bd61b5c..ec1f17a 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java @@ -22,8 +22,8 @@ import static org.testng.Assert.assertEquals; import java.util.Iterator; import java.util.List; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Disk; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Snapshot; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiLiveTest.java index 1683b88..1744076 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiLiveTest.java @@ -25,10 +25,10 @@ import java.net.URI; import java.util.ArrayList; import java.util.List; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.HttpHealthCheck; import org.jclouds.googlecomputeengine.domain.Image; import org.jclouds.googlecomputeengine.domain.Instance; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.domain.NewInstance; import org.jclouds.googlecomputeengine.domain.TargetPool; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ZoneApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ZoneApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ZoneApiLiveTest.java index fb5a4cb..91c9ea1 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ZoneApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ZoneApiLiveTest.java @@ -24,7 +24,7 @@ import static org.testng.Assert.assertTrue; import java.util.Iterator; import java.util.List; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Zone; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; import org.testng.annotations.Test; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiLiveTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiLiveTest.java index 17f1405..cdf9be9 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiLiveTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiLiveTest.java @@ -19,7 +19,7 @@ package org.jclouds.googlecomputeengine.internal; import static com.google.common.base.Preconditions.checkNotNull; import static com.google.common.base.Preconditions.checkState; import static org.testng.Assert.assertEquals; -import static org.testng.AssertJUnit.assertTrue; +import static org.testng.Assert.assertTrue; import java.net.URI; import java.util.Properties; @@ -27,8 +27,9 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.logging.Logger; import org.jclouds.apis.BaseApiLiveTest; +import org.jclouds.googlecloud.config.CurrentProject; +import org.jclouds.googlecloud.internal.TestProperties; import org.jclouds.googlecomputeengine.GoogleComputeEngineApi; -import org.jclouds.googlecomputeengine.config.CurrentProject; import org.jclouds.googlecomputeengine.domain.Operation; import org.jclouds.javax.annotation.Nullable; @@ -40,7 +41,6 @@ import com.google.inject.Key; import com.google.inject.Module; import com.google.inject.TypeLiteral; - public class BaseGoogleComputeEngineApiLiveTest extends BaseApiLiveTest<GoogleComputeEngineApi> { protected static final String ZONE_API_URL_SUFFIX = "/zones/"; @@ -62,7 +62,7 @@ public class BaseGoogleComputeEngineApiLiveTest extends BaseApiLiveTest<GoogleCo } @Override protected Properties setupProperties() { - return TestProperties.apply(super.setupProperties()); + return TestProperties.apply(provider, super.setupProperties()); } @Override protected GoogleComputeEngineApi create(Properties props, Iterable<Module> modules) { http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiMockTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiMockTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiMockTest.java index 0f53fba..d0c8dee 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiMockTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiMockTest.java @@ -20,9 +20,9 @@ import static com.google.common.base.Charsets.UTF_8; import static com.google.common.base.Throwables.propagate; import static com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor; import static javax.ws.rs.core.MediaType.APPLICATION_JSON; -import static org.jclouds.googlecomputeengine.config.GoogleComputeEngineProperties.CREDENTIAL_TYPE; +import static org.jclouds.googlecloud.config.GoogleCloudProperties.CREDENTIAL_TYPE; +import static org.jclouds.googlecloud.config.GoogleCloudProperties.PROJECT_NAME; import static org.jclouds.googlecomputeengine.config.GoogleComputeEngineProperties.IMAGE_PROJECTS; -import static org.jclouds.googlecomputeengine.config.GoogleComputeEngineProperties.PROJECT_NAME; import static org.jclouds.oauth.v2.config.CredentialType.BEARER_TOKEN_CREDENTIALS; import static org.jclouds.util.Strings2.toStringAndClose; import static org.testng.Assert.assertEquals; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineExpectTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineExpectTest.java index 3deb22a..593da14 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineExpectTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineExpectTest.java @@ -20,7 +20,7 @@ import static com.google.common.base.Charsets.UTF_8; import static com.google.common.base.Throwables.propagate; import static com.google.common.io.BaseEncoding.base64Url; import static javax.ws.rs.core.MediaType.APPLICATION_JSON; -import static org.jclouds.googlecomputeengine.config.GoogleComputeEngineProperties.PROJECT_NAME; +import static org.jclouds.googlecloud.config.GoogleCloudProperties.PROJECT_NAME; import static org.jclouds.oauth.v2.JWSAlgorithms.NONE; import static org.jclouds.oauth.v2.config.OAuthProperties.JWS_ALG; import static org.jclouds.util.Strings2.toStringAndClose; http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/TestProperties.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/TestProperties.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/TestProperties.java deleted file mode 100644 index 7c43910..0000000 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/TestProperties.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * 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.googlecomputeengine.internal; - -import static org.jclouds.googlecomputeengine.config.GoogleComputeEngineProperties.CREDENTIAL_TYPE; -import static org.jclouds.googlecomputeengine.config.GoogleComputeEngineProperties.PROJECT_NAME; -import static org.jclouds.oauth.v2.OAuthTestUtils.setCredential; -import static org.jclouds.oauth.v2.config.CredentialType.P12_PRIVATE_KEY_CREDENTIALS; - -import java.util.Properties; - -import org.jclouds.oauth.v2.config.CredentialType; - -/** Changes to this mandate changes to pom.xml and README.md */ -public final class TestProperties { - - public static Properties apply(Properties props) { - setIfTestSystemPropertyPresent(props, PROJECT_NAME); - setIfTestSystemPropertyPresent(props, CREDENTIAL_TYPE); - if (props.containsKey(CREDENTIAL_TYPE) - && CredentialType.fromValue(props.getProperty(CREDENTIAL_TYPE)) == P12_PRIVATE_KEY_CREDENTIALS) { - setCredential(props, "google-compute-engine.credential"); - } - return props; - } - - // TODO: make BaseApiLiveTest.setIfTestSystemPropertyPresent static - private static String setIfTestSystemPropertyPresent(Properties overrides, String key) { - if (System.getProperties().containsKey("test." + key)) { - String val = System.getProperty("test." + key); - overrides.setProperty(key, val); - return val; - } - return null; - } - - private TestProperties() { - } -} http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/ToIteratorOfListPageExpectTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/ToIteratorOfListPageExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/ToIteratorOfListPageExpectTest.java index 2e0aa87..1bad3b3 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/ToIteratorOfListPageExpectTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/ToIteratorOfListPageExpectTest.java @@ -22,12 +22,13 @@ import static org.testng.Assert.assertEquals; import java.util.Iterator; import java.util.List; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.GoogleComputeEngineApi; import org.jclouds.googlecomputeengine.config.GoogleComputeEngineParserModule; import org.jclouds.googlecomputeengine.domain.Address; import org.jclouds.googlecomputeengine.domain.Image; import org.jclouds.googlecomputeengine.domain.Instance; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.features.AddressApi; import org.jclouds.googlecomputeengine.features.ImageApi; import org.jclouds.googlecomputeengine.features.InstanceApi; @@ -85,13 +86,13 @@ public class ToIteratorOfListPageExpectTest extends BaseGoogleComputeEngineExpec List<Image> items = ImmutableList.of(new ParseImageTest().expected()); HttpResponse list1Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, "token1"))).build(); + .payload(json.toJson(ForwardingListPage.create(items, "token1"))).build(); HttpResponse list2Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, "token2"))).build(); + .payload(json.toJson(ForwardingListPage.create(items, "token2"))).build(); HttpResponse list3Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, null))).build(); + .payload(json.toJson(ForwardingListPage.create(items, null))).build(); ImageApi imageApi = orderedRequestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), TOKEN_RESPONSE, list1, list1Response, list2, list2Response, list3, list3Response).images(); @@ -122,13 +123,13 @@ public class ToIteratorOfListPageExpectTest extends BaseGoogleComputeEngineExpec List<Address> items = ImmutableList.of(new ParseAddressTest().expected()); HttpResponse list1Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, "token1"))).build(); + .payload(json.toJson(ForwardingListPage.create(items, "token1"))).build(); HttpResponse list2Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, "token2"))).build(); + .payload(json.toJson(ForwardingListPage.create(items, "token2"))).build(); HttpResponse list3Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, null))).build(); + .payload(json.toJson(ForwardingListPage.create(items, null))).build(); AddressApi addressApi = orderedRequestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), TOKEN_RESPONSE, list1, list1Response, list2, list2Response, list3, list3Response) @@ -160,13 +161,13 @@ public class ToIteratorOfListPageExpectTest extends BaseGoogleComputeEngineExpec List<Instance> items = ImmutableList.of(new ParseInstanceTest().expected()); HttpResponse list1Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, "token1"))).build(); + .payload(json.toJson(ForwardingListPage.create(items, "token1"))).build(); HttpResponse list2Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, "token2"))).build(); + .payload(json.toJson(ForwardingListPage.create(items, "token2"))).build(); HttpResponse list3Response = HttpResponse.builder().statusCode(200) - .payload(json.toJson(ListPage.create(items, null))).build(); + .payload(json.toJson(ForwardingListPage.create(items, null))).build(); InstanceApi instanceApi = orderedRequestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), TOKEN_RESPONSE, list1, list1Response, list2, list2Response, list3, list3Response) http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseAddressListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseAddressListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseAddressListTest.java index 5a21279..1908914 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseAddressListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseAddressListTest.java @@ -22,8 +22,9 @@ import java.net.URI; import javax.ws.rs.Consumes; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Address; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -50,7 +51,7 @@ public class ParseAddressListTest extends BaseGoogleComputeEngineParseTest<ListP URI.create(BASE_URL + "/party/regions/us-central1"), // region "173.255.118.115" // address ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(address1, address2), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskListTest.java index 6909f23..ab76aca 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskListTest.java @@ -20,8 +20,9 @@ import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import javax.ws.rs.Consumes; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Disk; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -37,7 +38,7 @@ public class ParseDiskListTest extends BaseGoogleComputeEngineParseTest<ListPage @Override @Consumes(APPLICATION_JSON) public ListPage<Disk> expected() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseDiskTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTypeListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTypeListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTypeListTest.java index e7f0488..edf1c73 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTypeListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTypeListTest.java @@ -22,8 +22,9 @@ import java.net.URI; import javax.ws.rs.Consumes; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.DiskType; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -50,7 +51,7 @@ public class ParseDiskTypeListTest extends BaseGoogleComputeEngineParseTest<List 500 // defaultDiskSizeGb ); DiskType diskType2 = new ParseDiskTypeTest().expected(); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(diskType1, diskType2), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseFirewallListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseFirewallListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseFirewallListTest.java index 1b0e13b..8b02a82 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseFirewallListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseFirewallListTest.java @@ -22,8 +22,9 @@ import java.net.URI; import javax.ws.rs.Consumes; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Firewall; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -51,7 +52,7 @@ public class ParseFirewallListTest extends BaseGoogleComputeEngineParseTest<List null, // targetTags ImmutableList.of(Firewall.Rule.create("tcp", ImmutableList.of("22"))) // allowed ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(firewall1, firewall2), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseForwardingRuleListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseForwardingRuleListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseForwardingRuleListTest.java index 551c06e..2cc546f 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseForwardingRuleListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseForwardingRuleListTest.java @@ -20,8 +20,9 @@ import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import javax.ws.rs.Consumes; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.ForwardingRule; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -37,7 +38,7 @@ public class ParseForwardingRuleListTest extends BaseGoogleComputeEngineParseTes @Override @Consumes(APPLICATION_JSON) public ListPage<ForwardingRule> expected() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseForwardingRuleTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseGlobalOperationListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseGlobalOperationListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseGlobalOperationListTest.java index 3ebd1a3..d071a48 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseGlobalOperationListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseGlobalOperationListTest.java @@ -20,7 +20,8 @@ import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import javax.ws.rs.Consumes; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Operation; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -37,7 +38,7 @@ public class ParseGlobalOperationListTest extends BaseGoogleComputeEngineParseTe @Override @Consumes(APPLICATION_JSON) public ListPage<Operation> expected() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseGlobalOperationTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseHttpHealthCheckListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseHttpHealthCheckListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseHttpHealthCheckListTest.java index d52e3f5..9d9c269 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseHttpHealthCheckListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseHttpHealthCheckListTest.java @@ -22,8 +22,9 @@ import java.net.URI; import javax.ws.rs.Consumes; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.HttpHealthCheck; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -68,7 +69,7 @@ public class ParseHttpHealthCheckListTest extends BaseGoogleComputeEngineParseTe 2, // unhealthyThreshold null // healthyThreshold ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(healthCheck1, healthCheck2, healthCheck3), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseImageListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseImageListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseImageListTest.java index dadc1f0..c128875 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseImageListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseImageListTest.java @@ -19,8 +19,9 @@ package org.jclouds.googlecomputeengine.parse; import javax.ws.rs.Consumes; import javax.ws.rs.core.MediaType; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Image; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -36,7 +37,7 @@ public class ParseImageListTest extends BaseGoogleComputeEngineParseTest<ListPag @Override @Consumes(MediaType.APPLICATION_JSON) public ListPage<Image> expected() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseImageTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseInstanceListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseInstanceListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseInstanceListTest.java index 49ebe26..762de45 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseInstanceListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseInstanceListTest.java @@ -20,8 +20,9 @@ import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import javax.ws.rs.Consumes; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Instance; -import org.jclouds.googlecomputeengine.domain.ListPage; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -37,7 +38,7 @@ public class ParseInstanceListTest extends BaseGoogleComputeEngineParseTest<List @Override @Consumes(APPLICATION_JSON) public ListPage<Instance> expected() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseInstanceTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeListTest.java index 082e989..7bd42d7 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeListTest.java @@ -22,7 +22,8 @@ import java.net.URI; import javax.ws.rs.Consumes; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.MachineType; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -78,7 +79,7 @@ public class ParseMachineTypeListTest extends BaseGoogleComputeEngineParseTest<L "us-central1-a", // zone null // deprecated ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(machineType1, machineType2, machineType3), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkListTest.java index 2f0bd11..fdb8e9f 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkListTest.java @@ -20,7 +20,8 @@ import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import javax.ws.rs.Consumes; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Network; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -37,7 +38,7 @@ public class ParseNetworkListTest extends BaseGoogleComputeEngineParseTest<ListP @Override @Consumes(APPLICATION_JSON) public ListPage<Network> expected() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseNetworkTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionListTest.java index 6cebdff..846410a 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionListTest.java @@ -22,7 +22,8 @@ import java.net.URI; import javax.ws.rs.Consumes; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Quota; import org.jclouds.googlecomputeengine.domain.Region; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; @@ -59,7 +60,7 @@ public class ParseRegionListTest extends BaseGoogleComputeEngineParseTest<ListPa Quota.create("FIREWALLS", 2, 100), // Quota.create("IMAGES", 0, 100)) // quotas ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(region1, region2), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteListTest.java index f6c23a5..9eb18f9 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteListTest.java @@ -21,7 +21,8 @@ import java.net.URI; import javax.ws.rs.Consumes; import javax.ws.rs.core.MediaType; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Route; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -54,7 +55,7 @@ public class ParseRouteListTest extends BaseGoogleComputeEngineParseTest<ListPag URI.create(BASE_URL + "/party/global/gateways/default-internet-gateway"), // nextHopGateway null // warnings ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(route1, route2), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotListTest.java index 27d28ba..76e32e3 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotListTest.java @@ -22,7 +22,8 @@ import java.net.URI; import javax.ws.rs.Consumes; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Snapshot; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -50,7 +51,7 @@ public class ParseSnapshotListTest extends BaseGoogleComputeEngineParseTest<List URI.create(BASE_URL + "/party/zones/us-central1-a/disks/testimage1"), // sourceDisk "8243603669926824540"// sourceDiskId ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(snapshot1, snapshot2), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetPoolListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetPoolListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetPoolListTest.java index d900f90..c4071e2 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetPoolListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetPoolListTest.java @@ -20,7 +20,8 @@ import static javax.ws.rs.core.MediaType.APPLICATION_JSON; import javax.ws.rs.Consumes; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.TargetPool; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -37,7 +38,7 @@ public class ParseTargetPoolListTest extends BaseGoogleComputeEngineParseTest<Li @Override @Consumes(APPLICATION_JSON) public ListPage<TargetPool> expected() { - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(new ParseTargetPoolTest().expected()), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneListTest.java ---------------------------------------------------------------------- diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneListTest.java index 47019b4..06b8808 100644 --- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneListTest.java +++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneListTest.java @@ -22,7 +22,8 @@ import java.net.URI; import javax.ws.rs.Consumes; -import org.jclouds.googlecomputeengine.domain.ListPage; +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; import org.jclouds.googlecomputeengine.domain.Zone; import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest; import org.testng.annotations.Test; @@ -55,7 +56,7 @@ public class ParseZoneListTest extends BaseGoogleComputeEngineParseTest<ListPage )), // null // availableMachineTypes ); - return ListPage.create( // + return ForwardingListPage.create( // ImmutableList.of(zone1, zone2), // items null // nextPageToken ); http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/googlecloud/pom.xml ---------------------------------------------------------------------- diff --git a/googlecloud/pom.xml b/googlecloud/pom.xml new file mode 100644 index 0000000..8e06883 --- /dev/null +++ b/googlecloud/pom.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + + 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. + +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.jclouds.labs</groupId> + <artifactId>jclouds-labs-google</artifactId> + <version>2.0.0-SNAPSHOT</version> + </parent> + + <!-- TODO: when out of labs, switch to org.jclouds.provider --> + <groupId>org.apache.jclouds.labs</groupId> + <artifactId>googlecloud</artifactId> + <name>jclouds Google Cloud Core</name> + <description>jclouds components common to Google Cloud products</description> + + <dependencies> + <dependency> + <groupId>org.apache.jclouds.labs</groupId> + <artifactId>oauth</artifactId> + <version>${project.version}</version> + <type>jar</type> + </dependency> + <dependency> + <groupId>org.apache.jclouds.labs</groupId> + <artifactId>oauth</artifactId> + <version>${project.version}</version> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> + <groupId>com.google.auto.value</groupId> + <artifactId>auto-value</artifactId> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>org.apache.jclouds</groupId> + <artifactId>jclouds-core</artifactId> + <version>${jclouds.version}</version> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> +</project> http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/googlecloud/src/main/java/org/jclouds/googlecloud/config/CurrentProject.java ---------------------------------------------------------------------- diff --git a/googlecloud/src/main/java/org/jclouds/googlecloud/config/CurrentProject.java b/googlecloud/src/main/java/org/jclouds/googlecloud/config/CurrentProject.java new file mode 100644 index 0000000..d60b2d0 --- /dev/null +++ b/googlecloud/src/main/java/org/jclouds/googlecloud/config/CurrentProject.java @@ -0,0 +1,50 @@ +/* + * 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.googlecloud.config; + +import static com.google.common.base.Preconditions.checkArgument; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import javax.inject.Qualifier; + +/** Associated bindings with the current <a href="https://cloud.google.com/compute/docs/projects">project</a>. */ +@Retention(value = RetentionPolicy.RUNTIME) +@Target(value = {ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD}) +@Qualifier +public @interface CurrentProject { + + /** Utilities related to the email associated with the service account of a project. */ + public static final class ClientEmail { + public static final String DESCRIPTION = "" // + + "client_email which usually looks like [email protected] or " // + + "[email protected]"; + private static final Pattern PROJECT_NUMBER_PATTERN = Pattern.compile("^([0-9]+)[@-].*"); + + /** Parses the project number from the client email or throws an {@linkplain IllegalArgumentException}. */ + public static String toProjectNumber(String email) { + Matcher matcher = PROJECT_NUMBER_PATTERN.matcher(email); + checkArgument(matcher.find(), "Client email %s is malformed. Should be %s", email, DESCRIPTION); + return matcher.group(1); + } + } +} http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/googlecloud/src/main/java/org/jclouds/googlecloud/config/GoogleCloudProperties.java ---------------------------------------------------------------------- diff --git a/googlecloud/src/main/java/org/jclouds/googlecloud/config/GoogleCloudProperties.java b/googlecloud/src/main/java/org/jclouds/googlecloud/config/GoogleCloudProperties.java new file mode 100644 index 0000000..baa6f8a --- /dev/null +++ b/googlecloud/src/main/java/org/jclouds/googlecloud/config/GoogleCloudProperties.java @@ -0,0 +1,40 @@ +/* + * 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.googlecloud.config; + +import org.jclouds.oauth.v2.config.OAuthProperties; + +/** Configuration properties keys used in {@link org.jclouds.ContextBuilder#overrides(java.util.Properties)}. */ +public final class GoogleCloudProperties { + + /** + * How requests are authorized using OAuth. Defaults to {@link org.jclouds.oauth.v2.config.CredentialType#P12_PRIVATE_KEY_CREDENTIALS}. + * + * @see org.jclouds.oauth.v2.config.CredentialType + */ + public static final String CREDENTIAL_TYPE = OAuthProperties.CREDENTIAL_TYPE; + + /** + * Set this property to specify the <a href="https://cloud.google.com/compute/docs/projects">project name</a> this + * context applies to. + * <p/> This is an alternative to looking up the project name at runtime. + */ + public static final String PROJECT_NAME = "jclouds.googlecloud.project-name"; + + private GoogleCloudProperties() { + } +} http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/f191c8fb/googlecloud/src/main/java/org/jclouds/googlecloud/config/ListPageAdapterFactory.java ---------------------------------------------------------------------- diff --git a/googlecloud/src/main/java/org/jclouds/googlecloud/config/ListPageAdapterFactory.java b/googlecloud/src/main/java/org/jclouds/googlecloud/config/ListPageAdapterFactory.java new file mode 100644 index 0000000..5f8618f --- /dev/null +++ b/googlecloud/src/main/java/org/jclouds/googlecloud/config/ListPageAdapterFactory.java @@ -0,0 +1,109 @@ +/* + * 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.googlecloud.config; + +import java.io.IOException; +import java.lang.reflect.ParameterizedType; +import java.lang.reflect.Type; + +import org.jclouds.googlecloud.domain.ForwardingListPage; +import org.jclouds.googlecloud.domain.ListPage; + +import com.google.common.collect.ImmutableList; +import com.google.gson.Gson; +import com.google.gson.TypeAdapter; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonToken; +import com.google.gson.stream.JsonWriter; + +public final class ListPageAdapterFactory implements TypeAdapterFactory { + static final class ListPageAdapter extends TypeAdapter<ListPage<?>> { + private final TypeAdapter<?> itemAdapter; + + ListPageAdapter(TypeAdapter<?> itemAdapter) { + this.itemAdapter = itemAdapter; + nullSafe(); + } + + public void write(JsonWriter out, ListPage<?> value) throws IOException { + throw new UnsupportedOperationException("We only read ListPages!"); + } + + public ListPage<?> read(JsonReader in) throws IOException { + ImmutableList.Builder<Object> items = ImmutableList.builder(); + String nextPageToken = null; + in.beginObject(); + while (in.hasNext()) { + String name = in.nextName(); + if (name.equals("items")) { + if (in.peek() == JsonToken.BEGIN_ARRAY) { + readItems(in, items); + } else { // aggregated + readAggregate(in, items); + } + } else if (name.equals("nextPageToken")) { + nextPageToken = in.nextString(); + } else { + in.skipValue(); + } + } + in.endObject(); + return ForwardingListPage.create(items.build(), nextPageToken); + } + + private void readItems(JsonReader in, ImmutableList.Builder<Object> items) throws IOException { + in.beginArray(); + while (in.hasNext()) { + Object item = itemAdapter.read(in); + if (item != null) { + items.add(item); + } + } + in.endArray(); + } + + private void readAggregate(JsonReader in, ImmutableList.Builder<Object> items) throws IOException { + in.beginObject(); // enter zone name -> type -> items map + while (in.hasNext()) { + String scope = in.nextName(); // skip zone name + in.beginObject(); // enter zone map + while (in.hasNext()) { + String resourceTypeOrWarning = in.nextName(); + if (!resourceTypeOrWarning.equals("warning")) { + readItems(in, items); + } else { + in.skipValue(); + } + } + in.endObject(); // end zone map + } + in.endObject(); // end item wrapper + } + } + + @SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { + Type type = ownerType.getType(); + if (ownerType.getRawType() != ListPage.class || !(type instanceof ParameterizedType)) { + return null; + } + Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; + TypeAdapter<?> itemAdapter = gson.getAdapter(TypeToken.get(elementType)); + return (TypeAdapter<T>) new ListPageAdapter(itemAdapter); + } +}
