You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by na...@apache.org on 2014/12/08 23:52:20 UTC
jclouds-labs-google git commit: Updated Network, MachineType, Region,
Route, Snapshot, TargetInstance, and Zone
Repository: jclouds-labs-google
Updated Branches:
refs/heads/master 70af04770 -> d3205b1b2
Updated Network, MachineType, Region, Route, Snapshot, TargetInstance, and Zone
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/commit/d3205b1b
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/tree/d3205b1b
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/diff/d3205b1b
Branch: refs/heads/master
Commit: d3205b1b2bb36322d06c9d5fe09779413f70cd1a
Parents: 70af047
Author: Daniel Broudy <br...@google.com>
Authored: Fri Dec 5 14:53:49 2014 -0800
Committer: Ignasi Barrera <na...@apache.org>
Committed: Mon Dec 8 23:50:31 2014 +0100
----------------------------------------------------------------------
.../functions/CreateNetworkIfNeeded.java | 5 +-
.../googlecomputeengine/domain/MachineType.java | 13 ++-
.../googlecomputeengine/domain/Metadata.java | 4 +-
.../googlecomputeengine/domain/Network.java | 9 ++-
.../googlecomputeengine/domain/Region.java | 9 ++-
.../googlecomputeengine/domain/Route.java | 15 ++--
.../googlecomputeengine/domain/Snapshot.java | 20 ++++-
.../domain/TargetInstance.java | 7 +-
.../googlecomputeengine/domain/Zone.java | 14 +++-
.../features/NetworkApi.java | 7 +-
.../options/NetworkCreationOptions.java | 85 ++++++++++++++++++++
.../functions/CreateNetworkIfNeededTest.java | 7 +-
.../functions/FindNetworkOrCreateTest.java | 2 +
.../functions/NetworkToSecurityGroupTest.java | 2 +
.../parse/ParseMachineTypeListTest.java | 6 ++
.../parse/ParseMachineTypeTest.java | 2 +
.../parse/ParseNetworkTest.java | 1 +
.../parse/ParseRegionListTest.java | 1 +
.../parse/ParseRegionTest.java | 1 +
.../parse/ParseRouteListTest.java | 1 +
.../parse/ParseRouteTest.java | 6 +-
.../parse/ParseSnapshotListTest.java | 6 +-
.../parse/ParseSnapshotTest.java | 6 +-
.../parse/ParseTargetInstanceListTest.java | 4 +-
.../parse/ParseTargetInstanceTest.java | 4 +-
.../parse/ParseZoneListTest.java | 3 +
.../parse/ParseZoneTest.java | 3 +
.../src/test/resources/route_get.json | 38 ++++++---
.../src/test/resources/route_list.json | 73 ++++++++++-------
.../src/test/resources/target_instance_get.json | 2 +-
.../src/test/resources/zone_get.json | 1 +
.../src/test/resources/zone_list.json | 2 +
.../src/test/resources/zone_list_short.json | 1 +
33 files changed, 277 insertions(+), 83 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeeded.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeeded.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeeded.java
index 7030c75..3923ad7 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeeded.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeeded.java
@@ -27,6 +27,7 @@ import org.jclouds.googlecomputeengine.GoogleComputeEngineApi;
import org.jclouds.googlecomputeengine.compute.domain.NetworkAndAddressRange;
import org.jclouds.googlecomputeengine.domain.Network;
import org.jclouds.googlecomputeengine.domain.Operation;
+import org.jclouds.googlecomputeengine.options.NetworkCreationOptions;
import com.google.common.base.Function;
import com.google.common.base.Predicate;
@@ -51,8 +52,10 @@ public final class CreateNetworkIfNeeded implements Function<NetworkAndAddressRa
}
if (input.gateway() != null) {
+ NetworkCreationOptions options = new NetworkCreationOptions.Builder(input.name(), input.rangeIPv4())
+ .gatewayIPv4(input.gateway()).build();
AtomicReference<Operation> operation = Atomics.newReference(api.networks()
- .createInIPv4RangeWithGateway(input.name(), input.rangeIPv4(), input.gateway()));
+ .createInIPv4Range(options));
operationDone.apply(operation);
checkState(operation.get().httpErrorStatusCode() == null,
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/MachineType.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/MachineType.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/MachineType.java
index 973a4b1..cc3389d 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/MachineType.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/MachineType.java
@@ -19,6 +19,7 @@ package org.jclouds.googlecomputeengine.domain;
import static org.jclouds.googlecloud.internal.NullSafeCopies.copyOf;
import java.net.URI;
+import java.util.Date;
import java.util.List;
import org.jclouds.javax.annotation.Nullable;
@@ -46,6 +47,8 @@ public abstract class MachineType {
public abstract String id();
+ public abstract Date creationTimestamp();
+
public abstract URI selfLink();
public abstract String name();
@@ -56,6 +59,8 @@ public abstract class MachineType {
public abstract int memoryMb();
+ @Nullable public abstract Integer imageSpaceGb();
+
public abstract List<ScratchDisk> scratchDisks();
public abstract int maximumPersistentDisks();
@@ -68,12 +73,12 @@ public abstract class MachineType {
@Nullable public abstract Deprecated deprecated();
@SerializedNames(
- { "id", "selfLink", "name", "description", "guestCpus", "memoryMb", "scratchDisks", "maximumPersistentDisks",
+ { "id", "creationTimestamp", "selfLink", "name", "description", "guestCpus", "memoryMb", "imageSpaceGb", "scratchDisks", "maximumPersistentDisks",
"maximumPersistentDisksSizeGb", "zone", "deprecated" })
- public static MachineType create(String id, URI selfLink, String name, String description, int guestCpus,
- int memoryMb, List<ScratchDisk> scratchDisks, int maximumPersistentDisks, long maximumPersistentDisksSizeGb,
+ public static MachineType create(String id, Date creationTimestamp, URI selfLink, String name, String description, int guestCpus,
+ int memoryMb, Integer imageSpaceGb, List<ScratchDisk> scratchDisks, int maximumPersistentDisks, long maximumPersistentDisksSizeGb,
String zone, Deprecated deprecated) {
- return new AutoValue_MachineType(id, selfLink, name, description, guestCpus, memoryMb, copyOf(scratchDisks),
+ return new AutoValue_MachineType(id, creationTimestamp, selfLink, name, description, guestCpus, memoryMb, imageSpaceGb, copyOf(scratchDisks),
maximumPersistentDisks, maximumPersistentDisksSizeGb, zone, deprecated);
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Metadata.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Metadata.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Metadata.java
index 25f39f0..60b8abd 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Metadata.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Metadata.java
@@ -34,13 +34,13 @@ import com.google.auto.value.AutoValue;
public abstract class Metadata implements Cloneable {
@AutoValue
- abstract static class Entry {
+ public abstract static class Entry {
abstract String key();
abstract String value();
@SerializedNames({ "key", "value" })
- static Entry create(String key, String value) {
+ public static Entry create(String key, String value) {
return new AutoValue_Metadata_Entry(key, value);
}
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Network.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Network.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Network.java
index 3b7eef9..7b30cff 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Network.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Network.java
@@ -17,6 +17,7 @@
package org.jclouds.googlecomputeengine.domain;
import java.net.URI;
+import java.util.Date;
import org.jclouds.javax.annotation.Nullable;
import org.jclouds.json.SerializedNames;
@@ -31,6 +32,8 @@ public abstract class Network {
public abstract String id();
+ public abstract Date creationTimestamp();
+
public abstract URI selfLink();
public abstract String name();
@@ -49,10 +52,10 @@ public abstract class Network {
*/
@Nullable public abstract String gatewayIPv4();
- @SerializedNames({ "id", "selfLink", "name", "description", "IPv4Range", "gatewayIPv4" })
- public static Network create(String id, URI selfLink, String name, String description, String rangeIPv4,
+ @SerializedNames({ "id", "creationTimestamp", "selfLink", "name", "description", "IPv4Range", "gatewayIPv4" })
+ public static Network create(String id, Date creationTimestamp, URI selfLink, String name, String description, String rangeIPv4,
String gatewayIPv4) {
- return new AutoValue_Network(id, selfLink, name, description, rangeIPv4, gatewayIPv4);
+ return new AutoValue_Network(id, creationTimestamp, selfLink, name, description, rangeIPv4, gatewayIPv4);
}
Network() {
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Region.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Region.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Region.java
index f055091..91d4cf1 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Region.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Region.java
@@ -19,6 +19,7 @@ package org.jclouds.googlecomputeengine.domain;
import static org.jclouds.googlecloud.internal.NullSafeCopies.copyOf;
import java.net.URI;
+import java.util.Date;
import java.util.List;
import org.jclouds.javax.annotation.Nullable;
@@ -36,6 +37,8 @@ public abstract class Region {
public abstract String id();
+ public abstract Date creationTimestamp();
+
public abstract URI selfLink();
public abstract String name();
@@ -48,10 +51,10 @@ public abstract class Region {
public abstract List<Quota> quotas();
- @SerializedNames({ "id", "selfLink", "name", "description", "status", "zones", "quotas" })
- public static Region create(String id, URI selfLink, String name, String description, Status status, List<URI> zones,
+ @SerializedNames({ "id", "creationTimestamp", "selfLink", "name", "description", "status", "zones", "quotas" })
+ public static Region create(String id, Date creationTimestamp, URI selfLink, String name, String description, Status status, List<URI> zones,
List<Quota> quotas) {
- return new AutoValue_Region(id, selfLink, name, description, status, copyOf(zones), copyOf(quotas));
+ return new AutoValue_Region(id, creationTimestamp, selfLink, name, description, status, copyOf(zones), copyOf(quotas));
}
Region() {
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Route.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Route.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Route.java
index ac8774f..ed0737e 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Route.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Route.java
@@ -19,8 +19,8 @@ package org.jclouds.googlecomputeengine.domain;
import static org.jclouds.googlecloud.internal.NullSafeCopies.copyOf;
import java.net.URI;
+import java.util.Date;
import java.util.List;
-import java.util.Map;
import org.jclouds.javax.annotation.Nullable;
import org.jclouds.json.SerializedNames;
@@ -34,12 +34,13 @@ public abstract class Route {
public abstract static class Warning {
public abstract String code(); // TODO: enum
+ // TODO: create common Warning resource.
@Nullable public abstract String message();
- public abstract Map<String, String> data();
+ public abstract List<Metadata.Entry> data();
@SerializedNames({ "code", "message", "data" })
- public static Warning create(String code, String message, Map<String, String> data) {
+ public static Warning create(String code, String message, List<Metadata.Entry> data) {
return new AutoValue_Route_Warning(code, message, copyOf(data));
}
@@ -49,6 +50,8 @@ public abstract class Route {
public abstract String id();
+ public abstract Date creationTimestamp();
+
public abstract URI selfLink();
public abstract String name();
@@ -86,12 +89,12 @@ public abstract class Route {
public abstract List<Warning> warnings();
@SerializedNames(
- { "id", "selfLink", "name", "description", "network", "tags", "destRange", "priority", "nextHopInstance",
+ { "id", "creationTimestamp", "selfLink", "name", "description", "network", "tags", "destRange", "priority", "nextHopInstance",
"nextHopIp", "nextHopNetwork", "nextHopGateway", "warnings" })
- public static Route create(String id, URI selfLink, String name, String description, URI network, List<String> tags,
+ public static Route create(String id, Date creationTimestamp, URI selfLink, String name, String description, URI network, List<String> tags,
String destRange, int priority, URI nextHopInstance, String nextHopIp, URI nextHopNetwork, URI nextHopGateway,
List<Warning> warnings) {
- return new AutoValue_Route(id, selfLink, name, description, network, copyOf(tags), destRange, priority,
+ return new AutoValue_Route(id, creationTimestamp, selfLink, name, description, network, copyOf(tags), destRange, priority,
nextHopInstance, nextHopIp, nextHopNetwork, nextHopGateway, copyOf(warnings));
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Snapshot.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Snapshot.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Snapshot.java
index 22838ce..50b7356 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Snapshot.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Snapshot.java
@@ -17,6 +17,8 @@
package org.jclouds.googlecomputeengine.domain;
import java.net.URI;
+import java.util.Date;
+import java.util.List;
import org.jclouds.javax.annotation.Nullable;
import org.jclouds.json.SerializedNames;
@@ -30,6 +32,8 @@ public abstract class Snapshot {
public abstract URI selfLink();
+ public abstract Date creationTimestamp();
+
public abstract String name();
@Nullable public abstract String description();
@@ -52,10 +56,18 @@ public abstract class Snapshot {
*/
public abstract String sourceDiskId();
- @SerializedNames({ "id", "selfLink", "name", "description", "diskSizeGb", "status", "sourceDisk", "sourceDiskId" })
- public static Snapshot create(String id, URI selfLink, String name, String description, int diskSizeGb, String status,
- URI sourceDisk, String sourceDiskId) {
- return new AutoValue_Snapshot(id, selfLink, name, description, diskSizeGb, status, sourceDisk, sourceDiskId);
+ @Nullable public abstract Long storageBytes();
+
+ @Nullable public abstract String storageByteStatus();
+
+ @Nullable public abstract List<String> licenses();
+
+ @SerializedNames({ "id", "selfLink", "creationTimestamp", "name", "description", "diskSizeGb", "status",
+ "sourceDisk", "sourceDiskId", "storageBytes", "storageByteStatus", "licenses" })
+ public static Snapshot create(String id, URI selfLink, Date creationTimestamp, String name, String description,
+ int diskSizeGb, String status, URI sourceDisk, String sourceDiskId, Long storageBytes, String storageByteStatus, List<String> licenses) {
+ return new AutoValue_Snapshot(id, selfLink, creationTimestamp, name, description, diskSizeGb, status,
+ sourceDisk, sourceDiskId, storageBytes, storageByteStatus, licenses);
}
Snapshot() {
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/TargetInstance.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/TargetInstance.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/TargetInstance.java
index 656bc8f..f477572 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/TargetInstance.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/TargetInstance.java
@@ -27,6 +27,7 @@ import com.google.auto.value.AutoValue;
@AutoValue
public abstract class TargetInstance {
+ public abstract String id();
public abstract String creationTimestamp();
public abstract String name();
@Nullable public abstract String description();
@@ -35,11 +36,11 @@ public abstract class TargetInstance {
@Nullable public abstract URI instance();
public abstract URI selfLink();
- @SerializedNames({"creationTimestamp", "name", "description", "zone",
+ @SerializedNames({"id", "creationTimestamp", "name", "description", "zone",
"natPolicy", "instance", "selfLink"})
- public static TargetInstance create(String creationTimestamp, String name,
+ public static TargetInstance create(String id, String creationTimestamp, String name,
String description, URI zone, String natPolicy, URI instance, URI selfLink){
- return new AutoValue_TargetInstance(creationTimestamp, name, description, zone,
+ return new AutoValue_TargetInstance(id, creationTimestamp, name, description, zone,
natPolicy, instance, selfLink);
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Zone.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Zone.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Zone.java
index 68b9a31..70f9fb6 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Zone.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Zone.java
@@ -61,6 +61,8 @@ public abstract class Zone {
public abstract String id();
+ public abstract Date creationTimestamp();
+
public abstract URI selfLink();
public abstract String name();
@@ -75,14 +77,18 @@ public abstract class Zone {
*/
public abstract List<MaintenanceWindow> maintenanceWindows();
+ @Nullable public abstract Deprecated deprecated();
+
+ public abstract String region();
+
/** The machine types that can be used in this zone. */
public abstract List<String> availableMachineTypes();
@SerializedNames(
- { "id", "selfLink", "name", "description", "status", "maintenanceWindows", "availableMachineTypes" })
- public static Zone create(String id, URI selfLink, String name, String description, Status status,
- List<MaintenanceWindow> maintenanceWindows, List<String> availableMachineTypes) {
- return new AutoValue_Zone(id, selfLink, name, description, status, copyOf(maintenanceWindows),
+ { "id", "creationTimestamp", "selfLink", "name", "description", "status", "maintenanceWindows", "deprecated", "region", "availableMachineTypes" })
+ public static Zone create(String id, Date creationTimestamp, URI selfLink, String name, String description, Status status,
+ List<MaintenanceWindow> maintenanceWindows, Deprecated deprecated, String region, List<String> availableMachineTypes) {
+ return new AutoValue_Zone(id, creationTimestamp, selfLink, name, description, status, copyOf(maintenanceWindows), deprecated, region,
copyOf(availableMachineTypes));
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/NetworkApi.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/NetworkApi.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/NetworkApi.java
index 4cdd8b9..c975784 100644
--- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/NetworkApi.java
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/NetworkApi.java
@@ -38,8 +38,10 @@ import org.jclouds.googlecomputeengine.domain.Network;
import org.jclouds.googlecomputeengine.domain.Operation;
import org.jclouds.googlecomputeengine.internal.BaseToIteratorOfListPage;
import org.jclouds.googlecomputeengine.options.ListOptions;
+import org.jclouds.googlecomputeengine.options.NetworkCreationOptions;
import org.jclouds.javax.annotation.Nullable;
import org.jclouds.oauth.v2.filters.OAuthFilter;
+import org.jclouds.rest.annotations.BinderParam;
import org.jclouds.rest.annotations.Fallback;
import org.jclouds.rest.annotations.MapBinder;
import org.jclouds.rest.annotations.PayloadParam;
@@ -90,10 +92,7 @@ public interface NetworkApi {
@Named("Networks:insert")
@POST
@Produces(APPLICATION_JSON)
- @MapBinder(BindToJsonPayload.class)
- Operation createInIPv4RangeWithGateway(@PayloadParam("name") String networkName,
- @PayloadParam("IPv4Range") String IPv4Range,
- @PayloadParam("gatewayIPv4") String gatewayIPv4);
+ Operation createInIPv4Range(@BinderParam(BindToJsonPayload.class) NetworkCreationOptions options);
/** Deletes a network by name and returns the operation in progress, or null if not found. */
@Named("Networks:delete")
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/NetworkCreationOptions.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/NetworkCreationOptions.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/NetworkCreationOptions.java
new file mode 100644
index 0000000..3003322
--- /dev/null
+++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/NetworkCreationOptions.java
@@ -0,0 +1,85 @@
+/*
+ * 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.options;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+
+import org.jclouds.javax.annotation.Nullable;
+import org.jclouds.json.SerializedNames;
+
+import com.google.auto.value.AutoValue;
+
+/**
+ * Represents a network used to enable instance communication.
+ */
+@AutoValue
+public abstract class NetworkCreationOptions {
+
+ public abstract String name();
+
+ @Nullable public abstract String description();
+
+ /**
+ * The range of internal addresses that are legal on this network. This range is a CIDR
+ * specification, for example: {@code 192.168.0.0/16}.
+ */
+ public abstract String rangeIPv4();
+
+ /**
+ * This must be within the range specified by IPv4Range, and is typically the first usable address in that range.
+ * If not specified, the default value is the first usable address in IPv4Range.
+ */
+ @Nullable public abstract String gatewayIPv4();
+
+ @SerializedNames({ "name", "description", "IPv4Range", "gatewayIPv4" })
+ public static NetworkCreationOptions create(String name, String description, String rangeIPv4,
+ String gatewayIPv4) {
+ return new AutoValue_NetworkCreationOptions(name, description, rangeIPv4, gatewayIPv4);
+ }
+
+ NetworkCreationOptions() {
+ }
+
+ public static class Builder {
+ private String name;
+ private String description;
+ private String rangeIPv4;
+ private String gatewayIPv4;
+
+ public Builder(String name, String rangeIPv4){
+ this.name = name;
+ this.rangeIPv4 = rangeIPv4;
+ }
+
+ public Builder description(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public Builder gatewayIPv4(String gatewayIPv4) {
+ this.gatewayIPv4 = gatewayIPv4;
+ return this;
+ }
+
+ public NetworkCreationOptions build() {
+ checkNotNull(name, "NetworkCreationOptions name cannot be null");
+ checkNotNull(rangeIPv4, "NetworkCreationOptions rangeIPv4 cannot be null");
+ return create(name, description, rangeIPv4, gatewayIPv4);
+ }
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeededTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeededTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeededTest.java
index 75e8bd7..8a5dd8f 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeededTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/CreateNetworkIfNeededTest.java
@@ -24,12 +24,14 @@ import static org.testng.Assert.assertEquals;
import java.net.URI;
+import org.jclouds.date.internal.SimpleDateFormatDateService;
import org.jclouds.googlecomputeengine.GoogleComputeEngineApi;
import org.jclouds.googlecomputeengine.compute.domain.NetworkAndAddressRange;
import org.jclouds.googlecomputeengine.compute.predicates.AtomicOperationDone;
import org.jclouds.googlecomputeengine.domain.Network;
import org.jclouds.googlecomputeengine.domain.Operation;
import org.jclouds.googlecomputeengine.features.NetworkApi;
+import org.jclouds.googlecomputeengine.options.NetworkCreationOptions;
import org.jclouds.googlecomputeengine.parse.ParseGlobalOperationTest;
import org.testng.annotations.Test;
@@ -48,6 +50,7 @@ public class CreateNetworkIfNeededTest {
Network network = Network.create( //
"abcd", // id
+ new SimpleDateFormatDateService().iso8601DateParse("2014-07-18T09:47:30.826-07:00"), // creationTimestamp
URI.create(BASE_URL + "/party/global/networks/this-network"), // selfLink
"this-network", // name
null, // description
@@ -84,6 +87,7 @@ public class CreateNetworkIfNeededTest {
Network network = Network.create( //
"abcd", // id
+ new SimpleDateFormatDateService().iso8601DateParse("2014-07-18T09:47:30.826-07:00"), // creationTimestamp
URI.create(BASE_URL + "/party/global/networks/this-network"), // selfLink
"this-network", // name
null, // description
@@ -95,7 +99,8 @@ public class CreateNetworkIfNeededTest {
expect(api.networks()).andReturn(nwApi).atLeastOnce();
- expect(nwApi.createInIPv4RangeWithGateway("this-network", "0.0.0.0/0", "1.2.3.4")).andReturn(createOp);
+ expect(nwApi.createInIPv4Range(new NetworkCreationOptions.Builder("this-network", "0.0.0.0/0")
+ .gatewayIPv4("1.2.3.4").build())).andReturn(createOp);
expect(resources.operation(createOp.selfLink())).andReturn(createOp);
expect(nwApi.get("this-network")).andReturn(null);
expect(nwApi.get("this-network")).andReturn(network);
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/FindNetworkOrCreateTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/FindNetworkOrCreateTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/FindNetworkOrCreateTest.java
index dfe4036..137f004 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/FindNetworkOrCreateTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/FindNetworkOrCreateTest.java
@@ -25,6 +25,7 @@ import static org.testng.Assert.assertEquals;
import java.net.URI;
import java.util.concurrent.atomic.AtomicReference;
+import org.jclouds.date.internal.SimpleDateFormatDateService;
import org.jclouds.googlecomputeengine.GoogleComputeEngineApi;
import org.jclouds.googlecomputeengine.compute.domain.NetworkAndAddressRange;
import org.jclouds.googlecomputeengine.compute.predicates.AtomicOperationDone;
@@ -46,6 +47,7 @@ public class FindNetworkOrCreateTest {
private static final String BASE_URL = "https://www.googleapis.com/compute/v1/projects";
private static final Network NETWORK = Network.create( //
"abcd", // id
+ new SimpleDateFormatDateService().iso8601DateParse("2014-07-18T09:47:30.826-07:00"), // creationTimestamp
URI.create(BASE_URL + "/party/global/networks/this-network"), // selfLink
"this-network", // name
null, // description
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/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 d42cab5..97b730b 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,6 +29,7 @@ import static org.testng.Assert.assertTrue;
import java.net.URI;
import org.jclouds.compute.domain.SecurityGroup;
+import org.jclouds.date.internal.SimpleDateFormatDateService;
import org.jclouds.googlecloud.domain.ForwardingListPage;
import org.jclouds.googlecomputeengine.GoogleComputeEngineApi;
import org.jclouds.googlecomputeengine.domain.Network;
@@ -59,6 +60,7 @@ public class NetworkToSecurityGroupTest {
Network network = Network.create( //
"abcd", // id
+ new SimpleDateFormatDateService().iso8601DateParse("2014-07-18T09:47:30.826-07:00"), // creationTimestamp
URI.create("https://www.googleapis.com/compute/v1/projects/party/global/networks/party-test"),
"party-test", // name
"some description", // description
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/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 c563789..2d5977e 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
@@ -47,11 +47,13 @@ public class ParseMachineTypeListTest extends BaseGoogleComputeEngineParseTest<L
public ListPage<MachineType> expected(String baseUrl) {
MachineType machineType1 = MachineType.create( //
"4618642685664990776", // id
+ parse("2013-04-25T13:32:49.088-07:00"), // creationTimestamp
URI.create(baseUrl + "/party/zones/us-central1-a/machineTypes/f1-micro"), // selfLink
"f1-micro", // name
"1 vCPU (shared physical core) and 0.6 GB RAM", // description
1, // guestCpus
614, // memoryMb
+ null, // imageSpaceGb
null, // scratchDisks
4, // maximumPersistentDisks
3072, // maximumPersistentDisksSizeGb
@@ -60,11 +62,13 @@ public class ParseMachineTypeListTest extends BaseGoogleComputeEngineParseTest<L
);
MachineType machineType2 = MachineType.create( //
"12907738072351752276", // id
+ parse("2012-06-07T20:48:14.670"), // creationTimestamp
URI.create(baseUrl + "/party/zones/us-central1-a/machineTypes/n1-standard-1"), // selfLink
"n1-standard-1", // name
"1 vCPU, 3.75 GB RAM, and a 10 GB ephemeral root disk", // description
1, // guestCpus
3840, // memoryMb
+ null, // imageSpaceGb
null, // scratchDisks
16, // maximumPersistentDisks
128, // maximumPersistentDisksSizeGb
@@ -73,11 +77,13 @@ public class ParseMachineTypeListTest extends BaseGoogleComputeEngineParseTest<L
);
MachineType machineType3 = MachineType.create( //
"12908560709887590691", // id
+ parse("2012-06-07T20:51:19.936"), // creationTimestamp
URI.create(baseUrl + "/party/zones/us-central1-a/machineTypes/n1-standard-8-d"), // selfLink
"n1-standard-8-d", // name
"8 vCPUs, 30 GB RAM, a 10 GB ephemeral root disk, and 2 extra 1770 GB ephemeral disks", // description
8, // guestCpus
30720, // memoryMb
+ null, // imageSpaceGb
ImmutableList.of(MachineType.ScratchDisk.create(1770), MachineType.ScratchDisk.create(1770)), // scratchDisks
16, // maximumPersistentDisks
1024, // maximumPersistentDisksSizeGb
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeTest.java
index 490ed5b..893dcab 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseMachineTypeTest.java
@@ -46,11 +46,13 @@ public class ParseMachineTypeTest extends BaseGoogleComputeEngineParseTest<Machi
public MachineType expected(String baseUrl) {
return MachineType.create( //
"12907738072351752276", // id
+ parse("2012-06-07T20:48:14.670"), // creationTimestamp
URI.create(baseUrl + "/party/zones/us-central1-a/machineTypes/n1-standard-1"), // selfLink
"n1-standard-1", // name
"1 vCPU, 3.75 GB RAM, and a 10 GB ephemeral root disk", // description
1, // guestCpus
3840, // memoryMb
+ null, // imageSpaceGb
ImmutableList.of(ScratchDisk.create(1770), ScratchDisk.create(1770)), // scratchDisks
16, // maximumPersistentDisks
128, // maximumPersistentDisksSizeGb
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkTest.java
index 5b92ed3..fc29125 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseNetworkTest.java
@@ -43,6 +43,7 @@ public class ParseNetworkTest extends BaseGoogleComputeEngineParseTest<Network>
public Network expected(String baseUrl) {
return Network.create( //
"13024414170909937976", // id
+ parse("2012-10-24T20:13:19.967"), // creationTimestamp
URI.create(baseUrl + "/party/networks/jclouds-test"), // selfLink
"default", // name
"Default network for the project", // description
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/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 5f83a5b..61f96b3 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
@@ -49,6 +49,7 @@ public class ParseRegionListTest extends BaseGoogleComputeEngineParseTest<ListPa
Region region1 = new ParseRegionTest().expected(baseUrl);
Region region2 = Region.create( //
"6396763663251190992", // id
+ parse("2013-07-08T14:40:37.939-07:00"), // creationTimestamp
URI.create(baseUrl + "/party/regions/us-central2"), // selfLink
"us-central2", // name
"us-central2", // description
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionTest.java
index 6a81a90..611c794 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionTest.java
@@ -46,6 +46,7 @@ public class ParseRegionTest extends BaseGoogleComputeEngineParseTest<Region> {
public Region expected(String baseUrl) {
return Region.create( //
"12912210600542709766", // id
+ parse("2013-07-08T14:40:37.939-07:00"), // creationTimestamp
URI.create(baseUrl + "/party/regions/us-central1"), // selfLink
"us-central1", // name
"us-central1", // description
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/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 8235ec7..5aac869 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
@@ -47,6 +47,7 @@ public class ParseRouteListTest extends BaseGoogleComputeEngineParseTest<ListPag
Route route1 = new ParseRouteTest().expected(baseUrl);
Route route2 = Route.create( //
"507025480040058551", // id
+ parse("2013-07-08T14:40:38.502-07:00"), // creationTimestamp
URI.create(baseUrl + "/party/global/routes/default-route-fc92a41ecb5a8d17"), // selfLink
"default-route-fc92a41ecb5a8d17", // name
"Default route to the Internet.", // description
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteTest.java
index 0dd5ba4..22ab3a5 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRouteTest.java
@@ -22,7 +22,9 @@ import java.net.URI;
import javax.ws.rs.Consumes;
+import org.jclouds.googlecomputeengine.domain.Metadata;
import org.jclouds.googlecomputeengine.domain.Route;
+import org.jclouds.googlecomputeengine.domain.Route.Warning;
import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineParseTest;
import org.testng.annotations.Test;
@@ -45,6 +47,7 @@ public class ParseRouteTest extends BaseGoogleComputeEngineParseTest<Route> {
public Route expected(String baseUrl) {
return Route.create( //
"7241926205630356071", // id
+ parse("2013-07-08T14:40:38.502-07:00"), // creationTimestamp
URI.create(baseUrl + "/party/global/routes/default-route-c99ebfbed0e1f375"), // selfLink
"default-route-c99ebfbed0e1f375", // name
"Default route to the virtual network.", // description
@@ -56,7 +59,8 @@ public class ParseRouteTest extends BaseGoogleComputeEngineParseTest<Route> {
null, // nextHopIp
URI.create(baseUrl + "/party/global/networks/default"), // nextHopNetwork
null, // nextHopGateway
- null // warnings
+ ImmutableList.of(Warning.create("NO_RESULTS_ON_PAGE", "This is an example warning", ImmutableList.of(
+ Metadata.Entry.create("scope", "There are no results for scope 'zones/asia-east1-b' on this page.")))) // warnings
);
}
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/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 6cd691a..b3c0f66 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
@@ -49,12 +49,16 @@ public class ParseSnapshotListTest extends BaseGoogleComputeEngineParseTest<List
Snapshot snapshot2 = Snapshot.create( //
"13895715048576107883", // id
URI.create(baseUrl + "/party/global/snapshots/test-snap2"), // selfLink
+ parse("2013-07-26T12:57:01.927-07:00"), // creationTimestamp
"test-snap2", // name
"", // description
10, // sizeGb
"READY", // status
URI.create(baseUrl + "/party/zones/us-central1-a/disks/testimage1"), // sourceDisk
- "8243603669926824540"// sourceDiskId
+ "8243603669926824540", // sourceDiskId
+ null, // storageBytes
+ null, // storageByteStatus
+ null // licenses
);
return ForwardingListPage.create( //
ImmutableList.of(snapshot1, snapshot2), // items
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotTest.java
index 3247934..6f922c4 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseSnapshotTest.java
@@ -44,12 +44,16 @@ public class ParseSnapshotTest extends BaseGoogleComputeEngineParseTest<Snapshot
return Snapshot.create( //
"9734455566806191190", // id
URI.create(baseUrl + "/party/global/snapshots/test-snap"), // selfLink
+ parse("2013-07-26T12:54:23.173-07:00"), // creationTimestamp
"test-snap", // name
"", // description
10, // sizeGb
"READY", // status
URI.create(baseUrl + "/party/zones/us-central1-a/disks/testimage1"), // sourceDisk
- "8243603669926824540"// sourceDiskId
+ "8243603669926824540", // sourceDiskId
+ null, // storageBytes
+ null, // storageByteStatus
+ null // licenses
);
}
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceListTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceListTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceListTest.java
index 4af9d4d..694dd0b 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceListTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceListTest.java
@@ -46,7 +46,9 @@ public class ParseTargetInstanceListTest extends BaseGoogleComputeEngineParseTes
public ListPage<TargetInstance> expected(String baseURL){
return ForwardingListPage.create( //
ImmutableList.of(new ParseTargetInstanceTest().expected(baseURL),
- TargetInstance.create("2014-11-20T17:35:17.268-08:00", // creationTimestamp
+ TargetInstance.create(
+ "7362436693678237415", // id
+ "2014-11-20T17:35:17.268-08:00", // creationTimestamp
"target-instance-2", // name
null, // description
URI.create(baseURL + "/party/zones/us-central1-a"), // zone
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceTest.java
index deae9f4..ab78036 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseTargetInstanceTest.java
@@ -40,7 +40,9 @@ public class ParseTargetInstanceTest extends BaseGoogleComputeEngineParseTest<Ta
}
public TargetInstance expected(String baseUrl) {
- return TargetInstance.create("2014-07-18T09:47:30.826-07:00", // creationTimestamp
+ return TargetInstance.create(
+ "13050421646334304115", // id
+ "2014-07-18T09:47:30.826-07:00", // creationTimestamp
"target-instance-1", // name
"A pretty cool target instance", // description
URI.create(baseUrl + "/party/zones/us-central1-a"), // zone
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/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 06b8808..05f610d 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
@@ -43,6 +43,7 @@ public class ParseZoneListTest extends BaseGoogleComputeEngineParseTest<ListPage
Zone zone1 = new ParseZoneTest().expected();
Zone zone2 = Zone.create( //
"13024414164050619686", // id
+ parse("2012-10-24T20:13:19.271"), // creationTimestamp
URI.create(BASE_URL + "/party/zones/us-central1-b"), // selfLink
"us-central1-b", // name
"us-central1-b", // description
@@ -54,6 +55,8 @@ public class ParseZoneListTest extends BaseGoogleComputeEngineParseTest<ListPage
parse("2013-02-17T08:00:00.000"), // beginTime
parse("2013-03-03T08:00:00.000") // endTime)
)), //
+ null, // deprecated
+ "us-central1", // region
null // availableMachineTypes
);
return ForwardingListPage.create( //
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneTest.java
index b2fd488..2a472c9 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneTest.java
@@ -40,6 +40,7 @@ public class ParseZoneTest extends BaseGoogleComputeEngineParseTest<Zone> {
public Zone expected() {
return Zone.create( //
"13020128040171887099", // id
+ parse("2012-10-19T16:42:54.131"), // creationTimestamp
URI.create(BASE_URL + "/party/zones/us-central1-a"), // selfLink
"us-central1-a", // name
"us-central1-a", // description
@@ -51,6 +52,8 @@ public class ParseZoneTest extends BaseGoogleComputeEngineParseTest<Zone> {
parse("2012-11-10T20:00:00.000"), // beginTime
parse("2012-12-02T20:00:00.000") // endTime)
)), //
+ null, // deprecated
+ "us-central1", // region
null // availableMachineTypes
);
}
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/resources/route_get.json
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/resources/route_get.json b/google-compute-engine/src/test/resources/route_get.json
index a2fcb9b..ee649fd 100644
--- a/google-compute-engine/src/test/resources/route_get.json
+++ b/google-compute-engine/src/test/resources/route_get.json
@@ -1,14 +1,28 @@
{
-
- "kind": "compute#route",
- "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes/default-route-c99ebfbed0e1f375",
- "id": "7241926205630356071",
- "creationTimestamp": "2013-07-08T14:40:38.502-07:00",
- "name": "default-route-c99ebfbed0e1f375",
- "description": "Default route to the virtual network.",
- "network": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
- "destRange": "10.240.0.0/16",
- "priority": 1000,
- "nextHopNetwork": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
- "tags": [ "fooTag", "barTag" ]
+ "kind": "compute#route",
+ "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes/default-route-c99ebfbed0e1f375",
+ "id": "7241926205630356071",
+ "creationTimestamp": "2013-07-08T14:40:38.502-07:00",
+ "name": "default-route-c99ebfbed0e1f375",
+ "description": "Default route to the virtual network.",
+ "network": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
+ "destRange": "10.240.0.0/16",
+ "priority": 1000,
+ "nextHopNetwork": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
+ "tags": [
+ "fooTag",
+ "barTag"
+ ],
+ "warnings": [
+ {
+ "code": "NO_RESULTS_ON_PAGE",
+ "message": "This is an example warning",
+ "data": [
+ {
+ "key": "scope",
+ "value": "There are no results for scope 'zones/asia-east1-b' on this page."
+ }
+ ]
+ }
+ ]
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/resources/route_list.json
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/resources/route_list.json b/google-compute-engine/src/test/resources/route_list.json
index 8c69688..2dca138 100644
--- a/google-compute-engine/src/test/resources/route_list.json
+++ b/google-compute-engine/src/test/resources/route_list.json
@@ -1,34 +1,47 @@
{
- "kind": "compute#routeList",
- "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes",
- "id": "projects/party/global/routes",
- "items": [
+ "kind": "compute#routeList",
+ "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes",
+ "id": "projects/party/global/routes",
+ "items": [
+ {
+ "kind": "compute#route",
+ "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes/default-route-c99ebfbed0e1f375",
+ "id": "7241926205630356071",
+ "creationTimestamp": "2013-07-08T14:40:38.502-07:00",
+ "name": "default-route-c99ebfbed0e1f375",
+ "description": "Default route to the virtual network.",
+ "network": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
+ "destRange": "10.240.0.0/16",
+ "priority": 1000,
+ "nextHopNetwork": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
+ "tags": [
+ "fooTag",
+ "barTag"
+ ],
+ "warnings": [
{
-
- "kind": "compute#route",
- "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes/default-route-c99ebfbed0e1f375",
- "id": "7241926205630356071",
- "creationTimestamp": "2013-07-08T14:40:38.502-07:00",
- "name": "default-route-c99ebfbed0e1f375",
- "description": "Default route to the virtual network.",
- "network": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
- "destRange": "10.240.0.0/16",
- "priority": 1000,
- "nextHopNetwork": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
- "tags": [ "fooTag", "barTag" ]
- },
- {
-
- "kind": "compute#route",
- "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes/default-route-fc92a41ecb5a8d17",
- "id": "507025480040058551",
- "creationTimestamp": "2013-07-08T14:40:38.502-07:00",
- "name": "default-route-fc92a41ecb5a8d17",
- "description": "Default route to the Internet.",
- "network": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
- "destRange": "0.0.0.0/0",
- "priority": 1000,
- "nextHopGateway": "https://www.googleapis.com/compute/v1/projects/party/global/gateways/default-internet-gateway"
+ "code": "NO_RESULTS_ON_PAGE",
+ "message": "This is an example warning",
+ "data": [
+ {
+ "key": "scope",
+ "value": "There are no results for scope 'zones/asia-east1-b' on this page."
+ }
+ ]
}
- ]
+ ]
+ },
+ {
+ "kind": "compute#route",
+ "selfLink": "https://www.googleapis.com/compute/v1/projects/party/global/routes/default-route-fc92a41ecb5a8d17",
+ "id": "507025480040058551",
+ "creationTimestamp": "2013-07-08T14:40:38.502-07:00",
+ "name": "default-route-fc92a41ecb5a8d17",
+ "description": "Default route to the Internet.",
+ "network": "https://www.googleapis.com/compute/v1/projects/party/global/networks/default",
+ "destRange": "0.0.0.0/0",
+ "priority": 1000,
+ "nextHopGateway": "https://www.googleapis.com/compute/v1/projects/party/global/gateways/default-internet-gateway"
+ }
+ ]
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/resources/target_instance_get.json
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/resources/target_instance_get.json b/google-compute-engine/src/test/resources/target_instance_get.json
index 89607d8..b90f527 100644
--- a/google-compute-engine/src/test/resources/target_instance_get.json
+++ b/google-compute-engine/src/test/resources/target_instance_get.json
@@ -1,6 +1,6 @@
{
"kind": "compute#targetInstance",
- "id": 13050421646334304115,
+ "id": "13050421646334304115",
"creationTimestamp": "2014-07-18T09:47:30.826-07:00",
"name": "target-instance-1",
"description": "A pretty cool target instance",
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/resources/zone_get.json
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/resources/zone_get.json b/google-compute-engine/src/test/resources/zone_get.json
index 886b58e..4ad9133 100644
--- a/google-compute-engine/src/test/resources/zone_get.json
+++ b/google-compute-engine/src/test/resources/zone_get.json
@@ -5,6 +5,7 @@
"selfLink": "https://www.googleapis.com/compute/v1/projects/party/zones/us-central1-a",
"name": "us-central1-a",
"description": "us-central1-a",
+ "region": "us-central1",
"status": "DOWN",
"maintenanceWindows": [
{
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/resources/zone_list.json
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/resources/zone_list.json b/google-compute-engine/src/test/resources/zone_list.json
index ab8b960..c32c44b 100644
--- a/google-compute-engine/src/test/resources/zone_list.json
+++ b/google-compute-engine/src/test/resources/zone_list.json
@@ -11,6 +11,7 @@
"name": "us-central1-a",
"description": "us-central1-a",
"status": "DOWN",
+ "region": "us-central1",
"maintenanceWindows": [
{
"name": "2012-11-10-planned-outage",
@@ -28,6 +29,7 @@
"name": "us-central1-b",
"description": "us-central1-b",
"status": "UP",
+ "region": "us-central1",
"maintenanceWindows": [
{
"name": "2013-02-17-planned-outage",
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d3205b1b/google-compute-engine/src/test/resources/zone_list_short.json
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/resources/zone_list_short.json b/google-compute-engine/src/test/resources/zone_list_short.json
index 2b2eafe..c13ed95 100644
--- a/google-compute-engine/src/test/resources/zone_list_short.json
+++ b/google-compute-engine/src/test/resources/zone_list_short.json
@@ -11,6 +11,7 @@
"name": "us-central1-a",
"description": "us-central1-a",
"status": "DOWN",
+ "region": "us-central1",
"maintenanceWindows": [
{
"name": "2012-11-10-planned-outage",