Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@

import static com.google.common.base.Preconditions.checkNotNull;

import com.google.api.core.ApiFunction;
import com.google.cloud.StringEnumType;
import com.google.cloud.StringEnumValue;
import com.google.common.base.Function;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableList;
Expand Down Expand Up @@ -106,8 +109,48 @@ public com.google.api.services.compute.model.AccessConfig apply(
/**
* The type of network access configuration. The only supported value is {@code ONE_TO_ONE_NAT}.
*/
public enum Type {
ONE_TO_ONE_NAT
public static final class Type extends StringEnumValue {
private static final long serialVersionUID = -1181560540824208967L;

private static final ApiFunction<String, Type> CONSTRUCTOR =
new ApiFunction<String, Type>() {
@Override
public Type apply(String constant) {
return new Type(constant);
}
};

private static final StringEnumType<Type> type = new StringEnumType(
Type.class,
CONSTRUCTOR);

public static final Type ONE_TO_ONE_NAT = type.createAndRegister("ONE_TO_ONE_NAT");

private Type(String constant) {
super(constant);
}

/**
* Get the Type for the given String constant, and throw an exception if the constant is
* not recognized.
*/
public static Type valueOfStrict(String constant) {
return type.valueOfStrict(constant);
}

/**
* Get the Type for the given String constant, and allow unrecognized values.
*/
public static Type valueOf(String constant) {
return type.valueOf(constant);
}

/**
* Return the known values for Type.
*/
public static Type[] values() {
return type.values();
}
}

public static final class Builder {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,22 @@

package com.google.cloud.compute;

import com.google.api.core.ApiFunction;
import com.google.cloud.StringEnumType;
import com.google.cloud.StringEnumValue;
import com.google.common.base.Function;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;

import org.joda.time.format.DateTimeFormatter;
import org.joda.time.format.ISODateTimeFormat;

import java.io.Serializable;
import java.math.BigInteger;
import java.util.List;
import java.util.Objects;

import org.joda.time.format.DateTimeFormatter;
import org.joda.time.format.ISODateTimeFormat;

/**
* A Google Compute Engine region.
*
Expand Down Expand Up @@ -66,9 +69,49 @@ public com.google.api.services.compute.model.Region apply(Region region) {
/**
* Status of the region.
*/
public enum Status {
UP,
DOWN
public static final class Status extends StringEnumValue {
private static final long serialVersionUID = 658578478474360264L;

private static final ApiFunction<String, Status> CONSTRUCTOR =
new ApiFunction<String, Status>() {
@Override
public Status apply(String constant) {
return new Status(constant);
}
};

private static final StringEnumType<Status> type = new StringEnumType(
Status.class,
CONSTRUCTOR);

public static final Status UP = type.createAndRegister("UP");
public static final Status DOWN = type.createAndRegister("DOWN");

private Status(String constant) {
super(constant);
}

/**
* Get the Status for the given String constant, and throw an exception if the constant is
* not recognized.
*/
public static Status valueOfStrict(String constant) {
return type.valueOfStrict(constant);
}

/**
* Get the Status for the given String constant, and allow unrecognized values.
*/
public static Status valueOf(String constant) {
return type.valueOf(constant);
}

/**
* Return the known values for Status.
*/
public static Status[] values() {
return type.values();
}
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@

package com.google.cloud.compute;

import com.google.api.core.ApiFunction;
import com.google.cloud.StringEnumType;
import com.google.cloud.StringEnumValue;
import com.google.common.base.MoreObjects;

import java.io.Serializable;
Expand All @@ -42,16 +45,56 @@ public final class SchedulingOptions implements Serializable {
/**
* Defines the maintenance behavior for this instance.
*/
public enum Maintenance {
public static final class Maintenance extends StringEnumValue {
private static final long serialVersionUID = 1041388027965833378L;

private static final ApiFunction<String, Maintenance> CONSTRUCTOR =
new ApiFunction<String, Maintenance>() {
@Override
public Maintenance apply(String constant) {
return new Maintenance(constant);
}
};

private static final StringEnumType<Maintenance> type = new StringEnumType(
Maintenance.class,
CONSTRUCTOR);

/**
* The default behavior for standard instances.
*/
MIGRATE,
public static final Maintenance MIGRATE = type.createAndRegister("MIGRATE");

/**
* The default and only possible behavior for preemptible instances.
*/
TERMINATE
public static final Maintenance TERMINATE = type.createAndRegister("TERMINATE");

private Maintenance(String constant) {
super(constant);
}

/**
* Get the Maintenance for the given String constant, and throw an exception if the constant is
* not recognized.
*/
public static Maintenance valueOfStrict(String constant) {
return type.valueOfStrict(constant);
}

/**
* Get the Maintenance for the given String constant, and allow unrecognized values.
*/
public static Maintenance valueOf(String constant) {
return type.valueOf(constant);
}

/**
* Return the known values for Maintenance.
*/
public static Maintenance[] values() {
return type.values();
}
}

private SchedulingOptions(Boolean automaticRestart, Maintenance maintenance,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,19 @@

package com.google.cloud.compute;

import com.google.api.core.ApiFunction;
import com.google.cloud.StringEnumType;
import com.google.cloud.StringEnumValue;
import com.google.common.base.Function;
import com.google.common.base.MoreObjects;

import org.joda.time.format.DateTimeFormatter;
import org.joda.time.format.ISODateTimeFormat;

import java.io.Serializable;
import java.math.BigInteger;
import java.util.Objects;

import org.joda.time.format.DateTimeFormatter;
import org.joda.time.format.ISODateTimeFormat;

/**
* A Google Compute Engine zone.
*
Expand Down Expand Up @@ -62,9 +65,49 @@ public com.google.api.services.compute.model.Zone apply(Zone region) {
/**
* Status of the region.
*/
public enum Status {
UP,
DOWN
public static final class Status extends StringEnumValue {
private static final long serialVersionUID = -1052872318386811804L;

private static final ApiFunction<String, Status> CONSTRUCTOR =
new ApiFunction<String, Status>() {
@Override
public Status apply(String constant) {
return new Status(constant);
}
};

private static final StringEnumType<Status> type = new StringEnumType(
Status.class,
CONSTRUCTOR);

public static final Status UP = type.createAndRegister("UP");
public static final Status DOWN = type.createAndRegister("DOWN");

private Status(String constant) {
super(constant);
}

/**
* Get the Status for the given String constant, and throw an exception if the constant is
* not recognized.
*/
public static Status valueOfStrict(String constant) {
return type.valueOfStrict(constant);
}

/**
* Get the Status for the given String constant, and allow unrecognized values.
*/
public static Status valueOf(String constant) {
return type.valueOf(constant);
}

/**
* Return the known values for Status.
*/
public static Status[] values() {
return type.values();
}
}

static final class Builder {
Expand Down