Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
software.amazon.awssdk.services.devicefarm.model.AccountSettings Maven / Gradle / Ivy
Go to download
The AWS Java SDK for AWS Device Farm module holds the client classes that are used for communicating
with AWS Device Farm
/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file 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 software.amazon.awssdk.services.devicefarm.model;
import java.io.Serializable;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.function.Function;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.core.SdkField;
import software.amazon.awssdk.core.SdkPojo;
import software.amazon.awssdk.core.protocol.MarshallLocation;
import software.amazon.awssdk.core.protocol.MarshallingType;
import software.amazon.awssdk.core.traits.LocationTrait;
import software.amazon.awssdk.core.traits.MapTrait;
import software.amazon.awssdk.core.util.DefaultSdkAutoConstructMap;
import software.amazon.awssdk.core.util.SdkAutoConstructMap;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
/**
*
* A container for account-level settings in AWS Device Farm.
*
*/
@Generated("software.amazon.awssdk:codegen")
public final class AccountSettings implements SdkPojo, Serializable, ToCopyableBuilder {
private static final SdkField AWS_ACCOUNT_NUMBER_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("awsAccountNumber").getter(getter(AccountSettings::awsAccountNumber))
.setter(setter(Builder::awsAccountNumber))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("awsAccountNumber").build()).build();
private static final SdkField> UNMETERED_DEVICES_FIELD = SdkField
.> builder(MarshallingType.MAP)
.memberName("unmeteredDevices")
.getter(getter(AccountSettings::unmeteredDevicesAsStrings))
.setter(setter(Builder::unmeteredDevicesWithStrings))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("unmeteredDevices").build(),
MapTrait.builder()
.keyLocationName("key")
.valueLocationName("value")
.valueFieldInfo(
SdkField. builder(MarshallingType.INTEGER)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("value").build()).build()).build()).build();
private static final SdkField> UNMETERED_REMOTE_ACCESS_DEVICES_FIELD = SdkField
.> builder(MarshallingType.MAP)
.memberName("unmeteredRemoteAccessDevices")
.getter(getter(AccountSettings::unmeteredRemoteAccessDevicesAsStrings))
.setter(setter(Builder::unmeteredRemoteAccessDevicesWithStrings))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("unmeteredRemoteAccessDevices")
.build(),
MapTrait.builder()
.keyLocationName("key")
.valueLocationName("value")
.valueFieldInfo(
SdkField. builder(MarshallingType.INTEGER)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("value").build()).build()).build()).build();
private static final SdkField MAX_JOB_TIMEOUT_MINUTES_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("maxJobTimeoutMinutes").getter(getter(AccountSettings::maxJobTimeoutMinutes))
.setter(setter(Builder::maxJobTimeoutMinutes))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("maxJobTimeoutMinutes").build())
.build();
private static final SdkField TRIAL_MINUTES_FIELD = SdkField. builder(MarshallingType.SDK_POJO)
.memberName("trialMinutes").getter(getter(AccountSettings::trialMinutes)).setter(setter(Builder::trialMinutes))
.constructor(TrialMinutes::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("trialMinutes").build()).build();
private static final SdkField> MAX_SLOTS_FIELD = SdkField
.> builder(MarshallingType.MAP)
.memberName("maxSlots")
.getter(getter(AccountSettings::maxSlots))
.setter(setter(Builder::maxSlots))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("maxSlots").build(),
MapTrait.builder()
.keyLocationName("key")
.valueLocationName("value")
.valueFieldInfo(
SdkField. builder(MarshallingType.INTEGER)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("value").build()).build()).build()).build();
private static final SdkField DEFAULT_JOB_TIMEOUT_MINUTES_FIELD = SdkField
. builder(MarshallingType.INTEGER).memberName("defaultJobTimeoutMinutes")
.getter(getter(AccountSettings::defaultJobTimeoutMinutes)).setter(setter(Builder::defaultJobTimeoutMinutes))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("defaultJobTimeoutMinutes").build())
.build();
private static final SdkField SKIP_APP_RESIGN_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("skipAppResign").getter(getter(AccountSettings::skipAppResign)).setter(setter(Builder::skipAppResign))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("skipAppResign").build()).build();
private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(AWS_ACCOUNT_NUMBER_FIELD,
UNMETERED_DEVICES_FIELD, UNMETERED_REMOTE_ACCESS_DEVICES_FIELD, MAX_JOB_TIMEOUT_MINUTES_FIELD, TRIAL_MINUTES_FIELD,
MAX_SLOTS_FIELD, DEFAULT_JOB_TIMEOUT_MINUTES_FIELD, SKIP_APP_RESIGN_FIELD));
private static final Map> SDK_NAME_TO_FIELD = memberNameToFieldInitializer();
private static final long serialVersionUID = 1L;
private final String awsAccountNumber;
private final Map unmeteredDevices;
private final Map unmeteredRemoteAccessDevices;
private final Integer maxJobTimeoutMinutes;
private final TrialMinutes trialMinutes;
private final Map maxSlots;
private final Integer defaultJobTimeoutMinutes;
private final Boolean skipAppResign;
private AccountSettings(BuilderImpl builder) {
this.awsAccountNumber = builder.awsAccountNumber;
this.unmeteredDevices = builder.unmeteredDevices;
this.unmeteredRemoteAccessDevices = builder.unmeteredRemoteAccessDevices;
this.maxJobTimeoutMinutes = builder.maxJobTimeoutMinutes;
this.trialMinutes = builder.trialMinutes;
this.maxSlots = builder.maxSlots;
this.defaultJobTimeoutMinutes = builder.defaultJobTimeoutMinutes;
this.skipAppResign = builder.skipAppResign;
}
/**
*
* The AWS account number specified in the AccountSettings
container.
*
*
* @return The AWS account number specified in the AccountSettings
container.
*/
public final String awsAccountNumber() {
return awsAccountNumber;
}
/**
*
* Returns the unmetered devices you have purchased or want to purchase.
*
*
* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
*
*
* This method will never return null. If you would like to know whether the service returned this field (so that
* you can differentiate between null and empty), you can use the {@link #hasUnmeteredDevices} method.
*
*
* @return Returns the unmetered devices you have purchased or want to purchase.
*/
public final Map unmeteredDevices() {
return PurchasedDevicesMapCopier.copyStringToEnum(unmeteredDevices);
}
/**
* For responses, this returns true if the service returned a value for the UnmeteredDevices property. This DOES NOT
* check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the property).
* This is useful because the SDK will never return a null collection or map, but you may need to differentiate
* between the service returning nothing (or null) and the service returning an empty collection or map. For
* requests, this returns true if a value for the property was specified in the request builder, and false if a
* value was not specified.
*/
public final boolean hasUnmeteredDevices() {
return unmeteredDevices != null && !(unmeteredDevices instanceof SdkAutoConstructMap);
}
/**
*
* Returns the unmetered devices you have purchased or want to purchase.
*
*
* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
*
*
* This method will never return null. If you would like to know whether the service returned this field (so that
* you can differentiate between null and empty), you can use the {@link #hasUnmeteredDevices} method.
*
*
* @return Returns the unmetered devices you have purchased or want to purchase.
*/
public final Map unmeteredDevicesAsStrings() {
return unmeteredDevices;
}
/**
*
* Returns the unmetered remote access devices you have purchased or want to purchase.
*
*
* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
*
*
* This method will never return null. If you would like to know whether the service returned this field (so that
* you can differentiate between null and empty), you can use the {@link #hasUnmeteredRemoteAccessDevices} method.
*
*
* @return Returns the unmetered remote access devices you have purchased or want to purchase.
*/
public final Map unmeteredRemoteAccessDevices() {
return PurchasedDevicesMapCopier.copyStringToEnum(unmeteredRemoteAccessDevices);
}
/**
* For responses, this returns true if the service returned a value for the UnmeteredRemoteAccessDevices property.
* This DOES NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the
* property). This is useful because the SDK will never return a null collection or map, but you may need to
* differentiate between the service returning nothing (or null) and the service returning an empty collection or
* map. For requests, this returns true if a value for the property was specified in the request builder, and false
* if a value was not specified.
*/
public final boolean hasUnmeteredRemoteAccessDevices() {
return unmeteredRemoteAccessDevices != null && !(unmeteredRemoteAccessDevices instanceof SdkAutoConstructMap);
}
/**
*
* Returns the unmetered remote access devices you have purchased or want to purchase.
*
*
* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
*
*
* This method will never return null. If you would like to know whether the service returned this field (so that
* you can differentiate between null and empty), you can use the {@link #hasUnmeteredRemoteAccessDevices} method.
*
*
* @return Returns the unmetered remote access devices you have purchased or want to purchase.
*/
public final Map unmeteredRemoteAccessDevicesAsStrings() {
return unmeteredRemoteAccessDevices;
}
/**
*
* The maximum number of minutes a test run executes before it times out.
*
*
* @return The maximum number of minutes a test run executes before it times out.
*/
public final Integer maxJobTimeoutMinutes() {
return maxJobTimeoutMinutes;
}
/**
*
* Information about an AWS account's usage of free trial device minutes.
*
*
* @return Information about an AWS account's usage of free trial device minutes.
*/
public final TrialMinutes trialMinutes() {
return trialMinutes;
}
/**
* For responses, this returns true if the service returned a value for the MaxSlots property. This DOES NOT check
* that the value is non-empty (for which, you should check the {@code isEmpty()} method on the property). This is
* useful because the SDK will never return a null collection or map, but you may need to differentiate between the
* service returning nothing (or null) and the service returning an empty collection or map. For requests, this
* returns true if a value for the property was specified in the request builder, and false if a value was not
* specified.
*/
public final boolean hasMaxSlots() {
return maxSlots != null && !(maxSlots instanceof SdkAutoConstructMap);
}
/**
*
* The maximum number of device slots that the AWS account can purchase. Each maximum is expressed as an
* offering-id:number
pair, where the offering-id
represents one of the IDs returned by
* the ListOfferings
command.
*
*
* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
*
*
* This method will never return null. If you would like to know whether the service returned this field (so that
* you can differentiate between null and empty), you can use the {@link #hasMaxSlots} method.
*
*
* @return The maximum number of device slots that the AWS account can purchase. Each maximum is expressed as an
* offering-id:number
pair, where the offering-id
represents one of the IDs
* returned by the ListOfferings
command.
*/
public final Map maxSlots() {
return maxSlots;
}
/**
*
* The default number of minutes (at the account level) a test run executes before it times out. The default value
* is 150 minutes.
*
*
* @return The default number of minutes (at the account level) a test run executes before it times out. The default
* value is 150 minutes.
*/
public final Integer defaultJobTimeoutMinutes() {
return defaultJobTimeoutMinutes;
}
/**
*
* When set to true
, for private devices, Device Farm does not sign your app again. For public devices,
* Device Farm always signs your apps again.
*
*
* For more information about how Device Farm re-signs your apps, see Do you modify my app? in the AWS Device Farm FAQs .
*
*
* @return When set to true
, for private devices, Device Farm does not sign your app again. For public
* devices, Device Farm always signs your apps again.
*
* For more information about how Device Farm re-signs your apps, see Do you modify my app? in the AWS Device Farm
* FAQs .
*/
public final Boolean skipAppResign() {
return skipAppResign;
}
@Override
public Builder toBuilder() {
return new BuilderImpl(this);
}
public static Builder builder() {
return new BuilderImpl();
}
public static Class extends Builder> serializableBuilderClass() {
return BuilderImpl.class;
}
@Override
public final int hashCode() {
int hashCode = 1;
hashCode = 31 * hashCode + Objects.hashCode(awsAccountNumber());
hashCode = 31 * hashCode + Objects.hashCode(hasUnmeteredDevices() ? unmeteredDevicesAsStrings() : null);
hashCode = 31 * hashCode
+ Objects.hashCode(hasUnmeteredRemoteAccessDevices() ? unmeteredRemoteAccessDevicesAsStrings() : null);
hashCode = 31 * hashCode + Objects.hashCode(maxJobTimeoutMinutes());
hashCode = 31 * hashCode + Objects.hashCode(trialMinutes());
hashCode = 31 * hashCode + Objects.hashCode(hasMaxSlots() ? maxSlots() : null);
hashCode = 31 * hashCode + Objects.hashCode(defaultJobTimeoutMinutes());
hashCode = 31 * hashCode + Objects.hashCode(skipAppResign());
return hashCode;
}
@Override
public final boolean equals(Object obj) {
return equalsBySdkFields(obj);
}
@Override
public final boolean equalsBySdkFields(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (!(obj instanceof AccountSettings)) {
return false;
}
AccountSettings other = (AccountSettings) obj;
return Objects.equals(awsAccountNumber(), other.awsAccountNumber())
&& hasUnmeteredDevices() == other.hasUnmeteredDevices()
&& Objects.equals(unmeteredDevicesAsStrings(), other.unmeteredDevicesAsStrings())
&& hasUnmeteredRemoteAccessDevices() == other.hasUnmeteredRemoteAccessDevices()
&& Objects.equals(unmeteredRemoteAccessDevicesAsStrings(), other.unmeteredRemoteAccessDevicesAsStrings())
&& Objects.equals(maxJobTimeoutMinutes(), other.maxJobTimeoutMinutes())
&& Objects.equals(trialMinutes(), other.trialMinutes()) && hasMaxSlots() == other.hasMaxSlots()
&& Objects.equals(maxSlots(), other.maxSlots())
&& Objects.equals(defaultJobTimeoutMinutes(), other.defaultJobTimeoutMinutes())
&& Objects.equals(skipAppResign(), other.skipAppResign());
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*/
@Override
public final String toString() {
return ToString
.builder("AccountSettings")
.add("AwsAccountNumber", awsAccountNumber())
.add("UnmeteredDevices", hasUnmeteredDevices() ? unmeteredDevicesAsStrings() : null)
.add("UnmeteredRemoteAccessDevices",
hasUnmeteredRemoteAccessDevices() ? unmeteredRemoteAccessDevicesAsStrings() : null)
.add("MaxJobTimeoutMinutes", maxJobTimeoutMinutes()).add("TrialMinutes", trialMinutes())
.add("MaxSlots", hasMaxSlots() ? maxSlots() : null).add("DefaultJobTimeoutMinutes", defaultJobTimeoutMinutes())
.add("SkipAppResign", skipAppResign()).build();
}
public final Optional getValueForField(String fieldName, Class clazz) {
switch (fieldName) {
case "awsAccountNumber":
return Optional.ofNullable(clazz.cast(awsAccountNumber()));
case "unmeteredDevices":
return Optional.ofNullable(clazz.cast(unmeteredDevicesAsStrings()));
case "unmeteredRemoteAccessDevices":
return Optional.ofNullable(clazz.cast(unmeteredRemoteAccessDevicesAsStrings()));
case "maxJobTimeoutMinutes":
return Optional.ofNullable(clazz.cast(maxJobTimeoutMinutes()));
case "trialMinutes":
return Optional.ofNullable(clazz.cast(trialMinutes()));
case "maxSlots":
return Optional.ofNullable(clazz.cast(maxSlots()));
case "defaultJobTimeoutMinutes":
return Optional.ofNullable(clazz.cast(defaultJobTimeoutMinutes()));
case "skipAppResign":
return Optional.ofNullable(clazz.cast(skipAppResign()));
default:
return Optional.empty();
}
}
@Override
public final List> sdkFields() {
return SDK_FIELDS;
}
@Override
public final Map> sdkFieldNameToField() {
return SDK_NAME_TO_FIELD;
}
private static Map> memberNameToFieldInitializer() {
Map> map = new HashMap<>();
map.put("awsAccountNumber", AWS_ACCOUNT_NUMBER_FIELD);
map.put("unmeteredDevices", UNMETERED_DEVICES_FIELD);
map.put("unmeteredRemoteAccessDevices", UNMETERED_REMOTE_ACCESS_DEVICES_FIELD);
map.put("maxJobTimeoutMinutes", MAX_JOB_TIMEOUT_MINUTES_FIELD);
map.put("trialMinutes", TRIAL_MINUTES_FIELD);
map.put("maxSlots", MAX_SLOTS_FIELD);
map.put("defaultJobTimeoutMinutes", DEFAULT_JOB_TIMEOUT_MINUTES_FIELD);
map.put("skipAppResign", SKIP_APP_RESIGN_FIELD);
return Collections.unmodifiableMap(map);
}
private static Function getter(Function g) {
return obj -> g.apply((AccountSettings) obj);
}
private static BiConsumer setter(BiConsumer s) {
return (obj, val) -> s.accept((Builder) obj, val);
}
public interface Builder extends SdkPojo, CopyableBuilder {
/**
*
* The AWS account number specified in the AccountSettings
container.
*
*
* @param awsAccountNumber
* The AWS account number specified in the AccountSettings
container.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder awsAccountNumber(String awsAccountNumber);
/**
*
* Returns the unmetered devices you have purchased or want to purchase.
*
*
* @param unmeteredDevices
* Returns the unmetered devices you have purchased or want to purchase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder unmeteredDevicesWithStrings(Map unmeteredDevices);
/**
*
* Returns the unmetered devices you have purchased or want to purchase.
*
*
* @param unmeteredDevices
* Returns the unmetered devices you have purchased or want to purchase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder unmeteredDevices(Map unmeteredDevices);
/**
*
* Returns the unmetered remote access devices you have purchased or want to purchase.
*
*
* @param unmeteredRemoteAccessDevices
* Returns the unmetered remote access devices you have purchased or want to purchase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder unmeteredRemoteAccessDevicesWithStrings(Map unmeteredRemoteAccessDevices);
/**
*
* Returns the unmetered remote access devices you have purchased or want to purchase.
*
*
* @param unmeteredRemoteAccessDevices
* Returns the unmetered remote access devices you have purchased or want to purchase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder unmeteredRemoteAccessDevices(Map unmeteredRemoteAccessDevices);
/**
*
* The maximum number of minutes a test run executes before it times out.
*
*
* @param maxJobTimeoutMinutes
* The maximum number of minutes a test run executes before it times out.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder maxJobTimeoutMinutes(Integer maxJobTimeoutMinutes);
/**
*
* Information about an AWS account's usage of free trial device minutes.
*
*
* @param trialMinutes
* Information about an AWS account's usage of free trial device minutes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder trialMinutes(TrialMinutes trialMinutes);
/**
*
* Information about an AWS account's usage of free trial device minutes.
*
* This is a convenience method that creates an instance of the {@link TrialMinutes.Builder} avoiding the need
* to create one manually via {@link TrialMinutes#builder()}.
*
*
* When the {@link Consumer} completes, {@link TrialMinutes.Builder#build()} is called immediately and its
* result is passed to {@link #trialMinutes(TrialMinutes)}.
*
* @param trialMinutes
* a consumer that will call methods on {@link TrialMinutes.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #trialMinutes(TrialMinutes)
*/
default Builder trialMinutes(Consumer trialMinutes) {
return trialMinutes(TrialMinutes.builder().applyMutation(trialMinutes).build());
}
/**
*
* The maximum number of device slots that the AWS account can purchase. Each maximum is expressed as an
* offering-id:number
pair, where the offering-id
represents one of the IDs returned
* by the ListOfferings
command.
*
*
* @param maxSlots
* The maximum number of device slots that the AWS account can purchase. Each maximum is expressed as an
* offering-id:number
pair, where the offering-id
represents one of the IDs
* returned by the ListOfferings
command.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder maxSlots(Map maxSlots);
/**
*
* The default number of minutes (at the account level) a test run executes before it times out. The default
* value is 150 minutes.
*
*
* @param defaultJobTimeoutMinutes
* The default number of minutes (at the account level) a test run executes before it times out. The
* default value is 150 minutes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder defaultJobTimeoutMinutes(Integer defaultJobTimeoutMinutes);
/**
*
* When set to true
, for private devices, Device Farm does not sign your app again. For public
* devices, Device Farm always signs your apps again.
*
*
* For more information about how Device Farm re-signs your apps, see Do you modify my app? in the AWS Device Farm FAQs .
*
*
* @param skipAppResign
* When set to true
, for private devices, Device Farm does not sign your app again. For
* public devices, Device Farm always signs your apps again.
*
* For more information about how Device Farm re-signs your apps, see Do you modify my app? in the AWS Device Farm
* FAQs .
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder skipAppResign(Boolean skipAppResign);
}
static final class BuilderImpl implements Builder {
private String awsAccountNumber;
private Map unmeteredDevices = DefaultSdkAutoConstructMap.getInstance();
private Map unmeteredRemoteAccessDevices = DefaultSdkAutoConstructMap.getInstance();
private Integer maxJobTimeoutMinutes;
private TrialMinutes trialMinutes;
private Map maxSlots = DefaultSdkAutoConstructMap.getInstance();
private Integer defaultJobTimeoutMinutes;
private Boolean skipAppResign;
private BuilderImpl() {
}
private BuilderImpl(AccountSettings model) {
awsAccountNumber(model.awsAccountNumber);
unmeteredDevicesWithStrings(model.unmeteredDevices);
unmeteredRemoteAccessDevicesWithStrings(model.unmeteredRemoteAccessDevices);
maxJobTimeoutMinutes(model.maxJobTimeoutMinutes);
trialMinutes(model.trialMinutes);
maxSlots(model.maxSlots);
defaultJobTimeoutMinutes(model.defaultJobTimeoutMinutes);
skipAppResign(model.skipAppResign);
}
public final String getAwsAccountNumber() {
return awsAccountNumber;
}
public final void setAwsAccountNumber(String awsAccountNumber) {
this.awsAccountNumber = awsAccountNumber;
}
@Override
public final Builder awsAccountNumber(String awsAccountNumber) {
this.awsAccountNumber = awsAccountNumber;
return this;
}
public final Map getUnmeteredDevices() {
if (unmeteredDevices instanceof SdkAutoConstructMap) {
return null;
}
return unmeteredDevices;
}
public final void setUnmeteredDevices(Map unmeteredDevices) {
this.unmeteredDevices = PurchasedDevicesMapCopier.copy(unmeteredDevices);
}
@Override
public final Builder unmeteredDevicesWithStrings(Map unmeteredDevices) {
this.unmeteredDevices = PurchasedDevicesMapCopier.copy(unmeteredDevices);
return this;
}
@Override
public final Builder unmeteredDevices(Map unmeteredDevices) {
this.unmeteredDevices = PurchasedDevicesMapCopier.copyEnumToString(unmeteredDevices);
return this;
}
public final Map getUnmeteredRemoteAccessDevices() {
if (unmeteredRemoteAccessDevices instanceof SdkAutoConstructMap) {
return null;
}
return unmeteredRemoteAccessDevices;
}
public final void setUnmeteredRemoteAccessDevices(Map unmeteredRemoteAccessDevices) {
this.unmeteredRemoteAccessDevices = PurchasedDevicesMapCopier.copy(unmeteredRemoteAccessDevices);
}
@Override
public final Builder unmeteredRemoteAccessDevicesWithStrings(Map unmeteredRemoteAccessDevices) {
this.unmeteredRemoteAccessDevices = PurchasedDevicesMapCopier.copy(unmeteredRemoteAccessDevices);
return this;
}
@Override
public final Builder unmeteredRemoteAccessDevices(Map unmeteredRemoteAccessDevices) {
this.unmeteredRemoteAccessDevices = PurchasedDevicesMapCopier.copyEnumToString(unmeteredRemoteAccessDevices);
return this;
}
public final Integer getMaxJobTimeoutMinutes() {
return maxJobTimeoutMinutes;
}
public final void setMaxJobTimeoutMinutes(Integer maxJobTimeoutMinutes) {
this.maxJobTimeoutMinutes = maxJobTimeoutMinutes;
}
@Override
public final Builder maxJobTimeoutMinutes(Integer maxJobTimeoutMinutes) {
this.maxJobTimeoutMinutes = maxJobTimeoutMinutes;
return this;
}
public final TrialMinutes.Builder getTrialMinutes() {
return trialMinutes != null ? trialMinutes.toBuilder() : null;
}
public final void setTrialMinutes(TrialMinutes.BuilderImpl trialMinutes) {
this.trialMinutes = trialMinutes != null ? trialMinutes.build() : null;
}
@Override
public final Builder trialMinutes(TrialMinutes trialMinutes) {
this.trialMinutes = trialMinutes;
return this;
}
public final Map getMaxSlots() {
if (maxSlots instanceof SdkAutoConstructMap) {
return null;
}
return maxSlots;
}
public final void setMaxSlots(Map maxSlots) {
this.maxSlots = MaxSlotMapCopier.copy(maxSlots);
}
@Override
public final Builder maxSlots(Map maxSlots) {
this.maxSlots = MaxSlotMapCopier.copy(maxSlots);
return this;
}
public final Integer getDefaultJobTimeoutMinutes() {
return defaultJobTimeoutMinutes;
}
public final void setDefaultJobTimeoutMinutes(Integer defaultJobTimeoutMinutes) {
this.defaultJobTimeoutMinutes = defaultJobTimeoutMinutes;
}
@Override
public final Builder defaultJobTimeoutMinutes(Integer defaultJobTimeoutMinutes) {
this.defaultJobTimeoutMinutes = defaultJobTimeoutMinutes;
return this;
}
public final Boolean getSkipAppResign() {
return skipAppResign;
}
public final void setSkipAppResign(Boolean skipAppResign) {
this.skipAppResign = skipAppResign;
}
@Override
public final Builder skipAppResign(Boolean skipAppResign) {
this.skipAppResign = skipAppResign;
return this;
}
@Override
public AccountSettings build() {
return new AccountSettings(this);
}
@Override
public List> sdkFields() {
return SDK_FIELDS;
}
@Override
public Map> sdkFieldNameToField() {
return SDK_NAME_TO_FIELD;
}
}
}