All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awssdk.services.sagemaker.model.SpaceSettings Maven / Gradle / Ivy

/*
 * 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.sagemaker.model;

import java.io.Serializable;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
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.ListTrait;
import software.amazon.awssdk.core.traits.LocationTrait;
import software.amazon.awssdk.core.util.DefaultSdkAutoConstructList;
import software.amazon.awssdk.core.util.SdkAutoConstructList;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;

/**
 * 

* A collection of space settings. *

*/ @Generated("software.amazon.awssdk:codegen") public final class SpaceSettings implements SdkPojo, Serializable, ToCopyableBuilder { private static final SdkField JUPYTER_SERVER_APP_SETTINGS_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("JupyterServerAppSettings") .getter(getter(SpaceSettings::jupyterServerAppSettings)).setter(setter(Builder::jupyterServerAppSettings)) .constructor(JupyterServerAppSettings::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("JupyterServerAppSettings").build()) .build(); private static final SdkField KERNEL_GATEWAY_APP_SETTINGS_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("KernelGatewayAppSettings") .getter(getter(SpaceSettings::kernelGatewayAppSettings)).setter(setter(Builder::kernelGatewayAppSettings)) .constructor(KernelGatewayAppSettings::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("KernelGatewayAppSettings").build()) .build(); private static final SdkField CODE_EDITOR_APP_SETTINGS_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("CodeEditorAppSettings") .getter(getter(SpaceSettings::codeEditorAppSettings)).setter(setter(Builder::codeEditorAppSettings)) .constructor(SpaceCodeEditorAppSettings::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CodeEditorAppSettings").build()) .build(); private static final SdkField JUPYTER_LAB_APP_SETTINGS_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("JupyterLabAppSettings") .getter(getter(SpaceSettings::jupyterLabAppSettings)).setter(setter(Builder::jupyterLabAppSettings)) .constructor(SpaceJupyterLabAppSettings::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("JupyterLabAppSettings").build()) .build(); private static final SdkField APP_TYPE_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("AppType").getter(getter(SpaceSettings::appTypeAsString)).setter(setter(Builder::appType)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AppType").build()).build(); private static final SdkField SPACE_STORAGE_SETTINGS_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("SpaceStorageSettings") .getter(getter(SpaceSettings::spaceStorageSettings)).setter(setter(Builder::spaceStorageSettings)) .constructor(SpaceStorageSettings::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SpaceStorageSettings").build()) .build(); private static final SdkField> CUSTOM_FILE_SYSTEMS_FIELD = SdkField .> builder(MarshallingType.LIST) .memberName("CustomFileSystems") .getter(getter(SpaceSettings::customFileSystems)) .setter(setter(Builder::customFileSystems)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CustomFileSystems").build(), ListTrait .builder() .memberLocationName(null) .memberFieldInfo( SdkField. builder(MarshallingType.SDK_POJO) .constructor(CustomFileSystem::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD) .locationName("member").build()).build()).build()).build(); private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList( JUPYTER_SERVER_APP_SETTINGS_FIELD, KERNEL_GATEWAY_APP_SETTINGS_FIELD, CODE_EDITOR_APP_SETTINGS_FIELD, JUPYTER_LAB_APP_SETTINGS_FIELD, APP_TYPE_FIELD, SPACE_STORAGE_SETTINGS_FIELD, CUSTOM_FILE_SYSTEMS_FIELD)); private static final long serialVersionUID = 1L; private final JupyterServerAppSettings jupyterServerAppSettings; private final KernelGatewayAppSettings kernelGatewayAppSettings; private final SpaceCodeEditorAppSettings codeEditorAppSettings; private final SpaceJupyterLabAppSettings jupyterLabAppSettings; private final String appType; private final SpaceStorageSettings spaceStorageSettings; private final List customFileSystems; private SpaceSettings(BuilderImpl builder) { this.jupyterServerAppSettings = builder.jupyterServerAppSettings; this.kernelGatewayAppSettings = builder.kernelGatewayAppSettings; this.codeEditorAppSettings = builder.codeEditorAppSettings; this.jupyterLabAppSettings = builder.jupyterLabAppSettings; this.appType = builder.appType; this.spaceStorageSettings = builder.spaceStorageSettings; this.customFileSystems = builder.customFileSystems; } /** * Returns the value of the JupyterServerAppSettings property for this object. * * @return The value of the JupyterServerAppSettings property for this object. */ public final JupyterServerAppSettings jupyterServerAppSettings() { return jupyterServerAppSettings; } /** * Returns the value of the KernelGatewayAppSettings property for this object. * * @return The value of the KernelGatewayAppSettings property for this object. */ public final KernelGatewayAppSettings kernelGatewayAppSettings() { return kernelGatewayAppSettings; } /** *

* The Code Editor application settings. *

* * @return The Code Editor application settings. */ public final SpaceCodeEditorAppSettings codeEditorAppSettings() { return codeEditorAppSettings; } /** *

* The settings for the JupyterLab application. *

* * @return The settings for the JupyterLab application. */ public final SpaceJupyterLabAppSettings jupyterLabAppSettings() { return jupyterLabAppSettings; } /** *

* The type of app created within the space. *

*

* If the service returns an enum value that is not available in the current SDK version, {@link #appType} will * return {@link AppType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from * {@link #appTypeAsString}. *

* * @return The type of app created within the space. * @see AppType */ public final AppType appType() { return AppType.fromValue(appType); } /** *

* The type of app created within the space. *

*

* If the service returns an enum value that is not available in the current SDK version, {@link #appType} will * return {@link AppType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from * {@link #appTypeAsString}. *

* * @return The type of app created within the space. * @see AppType */ public final String appTypeAsString() { return appType; } /** *

* The storage settings for a space. *

* * @return The storage settings for a space. */ public final SpaceStorageSettings spaceStorageSettings() { return spaceStorageSettings; } /** * For responses, this returns true if the service returned a value for the CustomFileSystems 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 hasCustomFileSystems() { return customFileSystems != null && !(customFileSystems instanceof SdkAutoConstructList); } /** *

* A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can * access this file system in Amazon SageMaker Studio. *

*

* 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 #hasCustomFileSystems} method. *

* * @return A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users * can access this file system in Amazon SageMaker Studio. */ public final List customFileSystems() { return customFileSystems; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public final int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + Objects.hashCode(jupyterServerAppSettings()); hashCode = 31 * hashCode + Objects.hashCode(kernelGatewayAppSettings()); hashCode = 31 * hashCode + Objects.hashCode(codeEditorAppSettings()); hashCode = 31 * hashCode + Objects.hashCode(jupyterLabAppSettings()); hashCode = 31 * hashCode + Objects.hashCode(appTypeAsString()); hashCode = 31 * hashCode + Objects.hashCode(spaceStorageSettings()); hashCode = 31 * hashCode + Objects.hashCode(hasCustomFileSystems() ? customFileSystems() : null); 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 SpaceSettings)) { return false; } SpaceSettings other = (SpaceSettings) obj; return Objects.equals(jupyterServerAppSettings(), other.jupyterServerAppSettings()) && Objects.equals(kernelGatewayAppSettings(), other.kernelGatewayAppSettings()) && Objects.equals(codeEditorAppSettings(), other.codeEditorAppSettings()) && Objects.equals(jupyterLabAppSettings(), other.jupyterLabAppSettings()) && Objects.equals(appTypeAsString(), other.appTypeAsString()) && Objects.equals(spaceStorageSettings(), other.spaceStorageSettings()) && hasCustomFileSystems() == other.hasCustomFileSystems() && Objects.equals(customFileSystems(), other.customFileSystems()); } /** * 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("SpaceSettings").add("JupyterServerAppSettings", jupyterServerAppSettings()) .add("KernelGatewayAppSettings", kernelGatewayAppSettings()) .add("CodeEditorAppSettings", codeEditorAppSettings()).add("JupyterLabAppSettings", jupyterLabAppSettings()) .add("AppType", appTypeAsString()).add("SpaceStorageSettings", spaceStorageSettings()) .add("CustomFileSystems", hasCustomFileSystems() ? customFileSystems() : null).build(); } public final Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "JupyterServerAppSettings": return Optional.ofNullable(clazz.cast(jupyterServerAppSettings())); case "KernelGatewayAppSettings": return Optional.ofNullable(clazz.cast(kernelGatewayAppSettings())); case "CodeEditorAppSettings": return Optional.ofNullable(clazz.cast(codeEditorAppSettings())); case "JupyterLabAppSettings": return Optional.ofNullable(clazz.cast(jupyterLabAppSettings())); case "AppType": return Optional.ofNullable(clazz.cast(appTypeAsString())); case "SpaceStorageSettings": return Optional.ofNullable(clazz.cast(spaceStorageSettings())); case "CustomFileSystems": return Optional.ofNullable(clazz.cast(customFileSystems())); default: return Optional.empty(); } } @Override public final List> sdkFields() { return SDK_FIELDS; } private static Function getter(Function g) { return obj -> g.apply((SpaceSettings) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends SdkPojo, CopyableBuilder { /** * Sets the value of the JupyterServerAppSettings property for this object. * * @param jupyterServerAppSettings * The new value for the JupyterServerAppSettings property for this object. * @return Returns a reference to this object so that method calls can be chained together. */ Builder jupyterServerAppSettings(JupyterServerAppSettings jupyterServerAppSettings); /** * Sets the value of the JupyterServerAppSettings property for this object. * * This is a convenience method that creates an instance of the {@link JupyterServerAppSettings.Builder} * avoiding the need to create one manually via {@link JupyterServerAppSettings#builder()}. * *

* When the {@link Consumer} completes, {@link JupyterServerAppSettings.Builder#build()} is called immediately * and its result is passed to {@link #jupyterServerAppSettings(JupyterServerAppSettings)}. * * @param jupyterServerAppSettings * a consumer that will call methods on {@link JupyterServerAppSettings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #jupyterServerAppSettings(JupyterServerAppSettings) */ default Builder jupyterServerAppSettings(Consumer jupyterServerAppSettings) { return jupyterServerAppSettings(JupyterServerAppSettings.builder().applyMutation(jupyterServerAppSettings).build()); } /** * Sets the value of the KernelGatewayAppSettings property for this object. * * @param kernelGatewayAppSettings * The new value for the KernelGatewayAppSettings property for this object. * @return Returns a reference to this object so that method calls can be chained together. */ Builder kernelGatewayAppSettings(KernelGatewayAppSettings kernelGatewayAppSettings); /** * Sets the value of the KernelGatewayAppSettings property for this object. * * This is a convenience method that creates an instance of the {@link KernelGatewayAppSettings.Builder} * avoiding the need to create one manually via {@link KernelGatewayAppSettings#builder()}. * *

* When the {@link Consumer} completes, {@link KernelGatewayAppSettings.Builder#build()} is called immediately * and its result is passed to {@link #kernelGatewayAppSettings(KernelGatewayAppSettings)}. * * @param kernelGatewayAppSettings * a consumer that will call methods on {@link KernelGatewayAppSettings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #kernelGatewayAppSettings(KernelGatewayAppSettings) */ default Builder kernelGatewayAppSettings(Consumer kernelGatewayAppSettings) { return kernelGatewayAppSettings(KernelGatewayAppSettings.builder().applyMutation(kernelGatewayAppSettings).build()); } /** *

* The Code Editor application settings. *

* * @param codeEditorAppSettings * The Code Editor application settings. * @return Returns a reference to this object so that method calls can be chained together. */ Builder codeEditorAppSettings(SpaceCodeEditorAppSettings codeEditorAppSettings); /** *

* The Code Editor application settings. *

* This is a convenience method that creates an instance of the {@link SpaceCodeEditorAppSettings.Builder} * avoiding the need to create one manually via {@link SpaceCodeEditorAppSettings#builder()}. * *

* When the {@link Consumer} completes, {@link SpaceCodeEditorAppSettings.Builder#build()} is called immediately * and its result is passed to {@link #codeEditorAppSettings(SpaceCodeEditorAppSettings)}. * * @param codeEditorAppSettings * a consumer that will call methods on {@link SpaceCodeEditorAppSettings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #codeEditorAppSettings(SpaceCodeEditorAppSettings) */ default Builder codeEditorAppSettings(Consumer codeEditorAppSettings) { return codeEditorAppSettings(SpaceCodeEditorAppSettings.builder().applyMutation(codeEditorAppSettings).build()); } /** *

* The settings for the JupyterLab application. *

* * @param jupyterLabAppSettings * The settings for the JupyterLab application. * @return Returns a reference to this object so that method calls can be chained together. */ Builder jupyterLabAppSettings(SpaceJupyterLabAppSettings jupyterLabAppSettings); /** *

* The settings for the JupyterLab application. *

* This is a convenience method that creates an instance of the {@link SpaceJupyterLabAppSettings.Builder} * avoiding the need to create one manually via {@link SpaceJupyterLabAppSettings#builder()}. * *

* When the {@link Consumer} completes, {@link SpaceJupyterLabAppSettings.Builder#build()} is called immediately * and its result is passed to {@link #jupyterLabAppSettings(SpaceJupyterLabAppSettings)}. * * @param jupyterLabAppSettings * a consumer that will call methods on {@link SpaceJupyterLabAppSettings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #jupyterLabAppSettings(SpaceJupyterLabAppSettings) */ default Builder jupyterLabAppSettings(Consumer jupyterLabAppSettings) { return jupyterLabAppSettings(SpaceJupyterLabAppSettings.builder().applyMutation(jupyterLabAppSettings).build()); } /** *

* The type of app created within the space. *

* * @param appType * The type of app created within the space. * @see AppType * @return Returns a reference to this object so that method calls can be chained together. * @see AppType */ Builder appType(String appType); /** *

* The type of app created within the space. *

* * @param appType * The type of app created within the space. * @see AppType * @return Returns a reference to this object so that method calls can be chained together. * @see AppType */ Builder appType(AppType appType); /** *

* The storage settings for a space. *

* * @param spaceStorageSettings * The storage settings for a space. * @return Returns a reference to this object so that method calls can be chained together. */ Builder spaceStorageSettings(SpaceStorageSettings spaceStorageSettings); /** *

* The storage settings for a space. *

* This is a convenience method that creates an instance of the {@link SpaceStorageSettings.Builder} avoiding * the need to create one manually via {@link SpaceStorageSettings#builder()}. * *

* When the {@link Consumer} completes, {@link SpaceStorageSettings.Builder#build()} is called immediately and * its result is passed to {@link #spaceStorageSettings(SpaceStorageSettings)}. * * @param spaceStorageSettings * a consumer that will call methods on {@link SpaceStorageSettings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #spaceStorageSettings(SpaceStorageSettings) */ default Builder spaceStorageSettings(Consumer spaceStorageSettings) { return spaceStorageSettings(SpaceStorageSettings.builder().applyMutation(spaceStorageSettings).build()); } /** *

* A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can * access this file system in Amazon SageMaker Studio. *

* * @param customFileSystems * A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted * users can access this file system in Amazon SageMaker Studio. * @return Returns a reference to this object so that method calls can be chained together. */ Builder customFileSystems(Collection customFileSystems); /** *

* A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can * access this file system in Amazon SageMaker Studio. *

* * @param customFileSystems * A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted * users can access this file system in Amazon SageMaker Studio. * @return Returns a reference to this object so that method calls can be chained together. */ Builder customFileSystems(CustomFileSystem... customFileSystems); /** *

* A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can * access this file system in Amazon SageMaker Studio. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.sagemaker.model.CustomFileSystem.Builder} avoiding the need to create * one manually via {@link software.amazon.awssdk.services.sagemaker.model.CustomFileSystem#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.sagemaker.model.CustomFileSystem.Builder#build()} is called * immediately and its result is passed to {@link #customFileSystems(List)}. * * @param customFileSystems * a consumer that will call methods on * {@link software.amazon.awssdk.services.sagemaker.model.CustomFileSystem.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #customFileSystems(java.util.Collection) */ Builder customFileSystems(Consumer... customFileSystems); } static final class BuilderImpl implements Builder { private JupyterServerAppSettings jupyterServerAppSettings; private KernelGatewayAppSettings kernelGatewayAppSettings; private SpaceCodeEditorAppSettings codeEditorAppSettings; private SpaceJupyterLabAppSettings jupyterLabAppSettings; private String appType; private SpaceStorageSettings spaceStorageSettings; private List customFileSystems = DefaultSdkAutoConstructList.getInstance(); private BuilderImpl() { } private BuilderImpl(SpaceSettings model) { jupyterServerAppSettings(model.jupyterServerAppSettings); kernelGatewayAppSettings(model.kernelGatewayAppSettings); codeEditorAppSettings(model.codeEditorAppSettings); jupyterLabAppSettings(model.jupyterLabAppSettings); appType(model.appType); spaceStorageSettings(model.spaceStorageSettings); customFileSystems(model.customFileSystems); } public final JupyterServerAppSettings.Builder getJupyterServerAppSettings() { return jupyterServerAppSettings != null ? jupyterServerAppSettings.toBuilder() : null; } public final void setJupyterServerAppSettings(JupyterServerAppSettings.BuilderImpl jupyterServerAppSettings) { this.jupyterServerAppSettings = jupyterServerAppSettings != null ? jupyterServerAppSettings.build() : null; } @Override public final Builder jupyterServerAppSettings(JupyterServerAppSettings jupyterServerAppSettings) { this.jupyterServerAppSettings = jupyterServerAppSettings; return this; } public final KernelGatewayAppSettings.Builder getKernelGatewayAppSettings() { return kernelGatewayAppSettings != null ? kernelGatewayAppSettings.toBuilder() : null; } public final void setKernelGatewayAppSettings(KernelGatewayAppSettings.BuilderImpl kernelGatewayAppSettings) { this.kernelGatewayAppSettings = kernelGatewayAppSettings != null ? kernelGatewayAppSettings.build() : null; } @Override public final Builder kernelGatewayAppSettings(KernelGatewayAppSettings kernelGatewayAppSettings) { this.kernelGatewayAppSettings = kernelGatewayAppSettings; return this; } public final SpaceCodeEditorAppSettings.Builder getCodeEditorAppSettings() { return codeEditorAppSettings != null ? codeEditorAppSettings.toBuilder() : null; } public final void setCodeEditorAppSettings(SpaceCodeEditorAppSettings.BuilderImpl codeEditorAppSettings) { this.codeEditorAppSettings = codeEditorAppSettings != null ? codeEditorAppSettings.build() : null; } @Override public final Builder codeEditorAppSettings(SpaceCodeEditorAppSettings codeEditorAppSettings) { this.codeEditorAppSettings = codeEditorAppSettings; return this; } public final SpaceJupyterLabAppSettings.Builder getJupyterLabAppSettings() { return jupyterLabAppSettings != null ? jupyterLabAppSettings.toBuilder() : null; } public final void setJupyterLabAppSettings(SpaceJupyterLabAppSettings.BuilderImpl jupyterLabAppSettings) { this.jupyterLabAppSettings = jupyterLabAppSettings != null ? jupyterLabAppSettings.build() : null; } @Override public final Builder jupyterLabAppSettings(SpaceJupyterLabAppSettings jupyterLabAppSettings) { this.jupyterLabAppSettings = jupyterLabAppSettings; return this; } public final String getAppType() { return appType; } public final void setAppType(String appType) { this.appType = appType; } @Override public final Builder appType(String appType) { this.appType = appType; return this; } @Override public final Builder appType(AppType appType) { this.appType(appType == null ? null : appType.toString()); return this; } public final SpaceStorageSettings.Builder getSpaceStorageSettings() { return spaceStorageSettings != null ? spaceStorageSettings.toBuilder() : null; } public final void setSpaceStorageSettings(SpaceStorageSettings.BuilderImpl spaceStorageSettings) { this.spaceStorageSettings = spaceStorageSettings != null ? spaceStorageSettings.build() : null; } @Override public final Builder spaceStorageSettings(SpaceStorageSettings spaceStorageSettings) { this.spaceStorageSettings = spaceStorageSettings; return this; } public final List getCustomFileSystems() { List result = CustomFileSystemsCopier.copyToBuilder(this.customFileSystems); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setCustomFileSystems(Collection customFileSystems) { this.customFileSystems = CustomFileSystemsCopier.copyFromBuilder(customFileSystems); } @Override public final Builder customFileSystems(Collection customFileSystems) { this.customFileSystems = CustomFileSystemsCopier.copy(customFileSystems); return this; } @Override @SafeVarargs public final Builder customFileSystems(CustomFileSystem... customFileSystems) { customFileSystems(Arrays.asList(customFileSystems)); return this; } @Override @SafeVarargs public final Builder customFileSystems(Consumer... customFileSystems) { customFileSystems(Stream.of(customFileSystems).map(c -> CustomFileSystem.builder().applyMutation(c).build()) .collect(Collectors.toList())); return this; } @Override public SpaceSettings build() { return new SpaceSettings(this); } @Override public List> sdkFields() { return SDK_FIELDS; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy