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

software.amazon.awssdk.services.sagemaker.model.SpaceDetails 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.time.Instant;
import java.util.Arrays;
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 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.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;

/**
 * 

* The space's details. *

*/ @Generated("software.amazon.awssdk:codegen") public final class SpaceDetails implements SdkPojo, Serializable, ToCopyableBuilder { private static final SdkField DOMAIN_ID_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("DomainId").getter(getter(SpaceDetails::domainId)).setter(setter(Builder::domainId)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainId").build()).build(); private static final SdkField SPACE_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("SpaceName").getter(getter(SpaceDetails::spaceName)).setter(setter(Builder::spaceName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SpaceName").build()).build(); private static final SdkField STATUS_FIELD = SdkField. builder(MarshallingType.STRING).memberName("Status") .getter(getter(SpaceDetails::statusAsString)).setter(setter(Builder::status)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Status").build()).build(); private static final SdkField CREATION_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT) .memberName("CreationTime").getter(getter(SpaceDetails::creationTime)).setter(setter(Builder::creationTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CreationTime").build()).build(); private static final SdkField LAST_MODIFIED_TIME_FIELD = SdkField. builder(MarshallingType.INSTANT) .memberName("LastModifiedTime").getter(getter(SpaceDetails::lastModifiedTime)) .setter(setter(Builder::lastModifiedTime)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("LastModifiedTime").build()).build(); private static final SdkField SPACE_SETTINGS_SUMMARY_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("SpaceSettingsSummary") .getter(getter(SpaceDetails::spaceSettingsSummary)).setter(setter(Builder::spaceSettingsSummary)) .constructor(SpaceSettingsSummary::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SpaceSettingsSummary").build()) .build(); private static final SdkField SPACE_SHARING_SETTINGS_SUMMARY_FIELD = SdkField . builder(MarshallingType.SDK_POJO) .memberName("SpaceSharingSettingsSummary") .getter(getter(SpaceDetails::spaceSharingSettingsSummary)) .setter(setter(Builder::spaceSharingSettingsSummary)) .constructor(SpaceSharingSettingsSummary::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SpaceSharingSettingsSummary") .build()).build(); private static final SdkField OWNERSHIP_SETTINGS_SUMMARY_FIELD = SdkField . builder(MarshallingType.SDK_POJO).memberName("OwnershipSettingsSummary") .getter(getter(SpaceDetails::ownershipSettingsSummary)).setter(setter(Builder::ownershipSettingsSummary)) .constructor(OwnershipSettingsSummary::builder) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("OwnershipSettingsSummary").build()) .build(); private static final SdkField SPACE_DISPLAY_NAME_FIELD = SdkField. builder(MarshallingType.STRING) .memberName("SpaceDisplayName").getter(getter(SpaceDetails::spaceDisplayName)) .setter(setter(Builder::spaceDisplayName)) .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SpaceDisplayName").build()).build(); private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(DOMAIN_ID_FIELD, SPACE_NAME_FIELD, STATUS_FIELD, CREATION_TIME_FIELD, LAST_MODIFIED_TIME_FIELD, SPACE_SETTINGS_SUMMARY_FIELD, SPACE_SHARING_SETTINGS_SUMMARY_FIELD, OWNERSHIP_SETTINGS_SUMMARY_FIELD, SPACE_DISPLAY_NAME_FIELD)); private static final long serialVersionUID = 1L; private final String domainId; private final String spaceName; private final String status; private final Instant creationTime; private final Instant lastModifiedTime; private final SpaceSettingsSummary spaceSettingsSummary; private final SpaceSharingSettingsSummary spaceSharingSettingsSummary; private final OwnershipSettingsSummary ownershipSettingsSummary; private final String spaceDisplayName; private SpaceDetails(BuilderImpl builder) { this.domainId = builder.domainId; this.spaceName = builder.spaceName; this.status = builder.status; this.creationTime = builder.creationTime; this.lastModifiedTime = builder.lastModifiedTime; this.spaceSettingsSummary = builder.spaceSettingsSummary; this.spaceSharingSettingsSummary = builder.spaceSharingSettingsSummary; this.ownershipSettingsSummary = builder.ownershipSettingsSummary; this.spaceDisplayName = builder.spaceDisplayName; } /** *

* The ID of the associated domain. *

* * @return The ID of the associated domain. */ public final String domainId() { return domainId; } /** *

* The name of the space. *

* * @return The name of the space. */ public final String spaceName() { return spaceName; } /** *

* The status. *

*

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

* * @return The status. * @see SpaceStatus */ public final SpaceStatus status() { return SpaceStatus.fromValue(status); } /** *

* The status. *

*

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

* * @return The status. * @see SpaceStatus */ public final String statusAsString() { return status; } /** *

* The creation time. *

* * @return The creation time. */ public final Instant creationTime() { return creationTime; } /** *

* The last modified time. *

* * @return The last modified time. */ public final Instant lastModifiedTime() { return lastModifiedTime; } /** *

* Specifies summary information about the space settings. *

* * @return Specifies summary information about the space settings. */ public final SpaceSettingsSummary spaceSettingsSummary() { return spaceSettingsSummary; } /** *

* Specifies summary information about the space sharing settings. *

* * @return Specifies summary information about the space sharing settings. */ public final SpaceSharingSettingsSummary spaceSharingSettingsSummary() { return spaceSharingSettingsSummary; } /** *

* Specifies summary information about the ownership settings. *

* * @return Specifies summary information about the ownership settings. */ public final OwnershipSettingsSummary ownershipSettingsSummary() { return ownershipSettingsSummary; } /** *

* The name of the space that appears in the Studio UI. *

* * @return The name of the space that appears in the Studio UI. */ public final String spaceDisplayName() { return spaceDisplayName; } @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(domainId()); hashCode = 31 * hashCode + Objects.hashCode(spaceName()); hashCode = 31 * hashCode + Objects.hashCode(statusAsString()); hashCode = 31 * hashCode + Objects.hashCode(creationTime()); hashCode = 31 * hashCode + Objects.hashCode(lastModifiedTime()); hashCode = 31 * hashCode + Objects.hashCode(spaceSettingsSummary()); hashCode = 31 * hashCode + Objects.hashCode(spaceSharingSettingsSummary()); hashCode = 31 * hashCode + Objects.hashCode(ownershipSettingsSummary()); hashCode = 31 * hashCode + Objects.hashCode(spaceDisplayName()); 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 SpaceDetails)) { return false; } SpaceDetails other = (SpaceDetails) obj; return Objects.equals(domainId(), other.domainId()) && Objects.equals(spaceName(), other.spaceName()) && Objects.equals(statusAsString(), other.statusAsString()) && Objects.equals(creationTime(), other.creationTime()) && Objects.equals(lastModifiedTime(), other.lastModifiedTime()) && Objects.equals(spaceSettingsSummary(), other.spaceSettingsSummary()) && Objects.equals(spaceSharingSettingsSummary(), other.spaceSharingSettingsSummary()) && Objects.equals(ownershipSettingsSummary(), other.ownershipSettingsSummary()) && Objects.equals(spaceDisplayName(), other.spaceDisplayName()); } /** * 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("SpaceDetails").add("DomainId", domainId()).add("SpaceName", spaceName()) .add("Status", statusAsString()).add("CreationTime", creationTime()).add("LastModifiedTime", lastModifiedTime()) .add("SpaceSettingsSummary", spaceSettingsSummary()) .add("SpaceSharingSettingsSummary", spaceSharingSettingsSummary()) .add("OwnershipSettingsSummary", ownershipSettingsSummary()).add("SpaceDisplayName", spaceDisplayName()).build(); } public final Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "DomainId": return Optional.ofNullable(clazz.cast(domainId())); case "SpaceName": return Optional.ofNullable(clazz.cast(spaceName())); case "Status": return Optional.ofNullable(clazz.cast(statusAsString())); case "CreationTime": return Optional.ofNullable(clazz.cast(creationTime())); case "LastModifiedTime": return Optional.ofNullable(clazz.cast(lastModifiedTime())); case "SpaceSettingsSummary": return Optional.ofNullable(clazz.cast(spaceSettingsSummary())); case "SpaceSharingSettingsSummary": return Optional.ofNullable(clazz.cast(spaceSharingSettingsSummary())); case "OwnershipSettingsSummary": return Optional.ofNullable(clazz.cast(ownershipSettingsSummary())); case "SpaceDisplayName": return Optional.ofNullable(clazz.cast(spaceDisplayName())); default: return Optional.empty(); } } @Override public final List> sdkFields() { return SDK_FIELDS; } private static Function getter(Function g) { return obj -> g.apply((SpaceDetails) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends SdkPojo, CopyableBuilder { /** *

* The ID of the associated domain. *

* * @param domainId * The ID of the associated domain. * @return Returns a reference to this object so that method calls can be chained together. */ Builder domainId(String domainId); /** *

* The name of the space. *

* * @param spaceName * The name of the space. * @return Returns a reference to this object so that method calls can be chained together. */ Builder spaceName(String spaceName); /** *

* The status. *

* * @param status * The status. * @see SpaceStatus * @return Returns a reference to this object so that method calls can be chained together. * @see SpaceStatus */ Builder status(String status); /** *

* The status. *

* * @param status * The status. * @see SpaceStatus * @return Returns a reference to this object so that method calls can be chained together. * @see SpaceStatus */ Builder status(SpaceStatus status); /** *

* The creation time. *

* * @param creationTime * The creation time. * @return Returns a reference to this object so that method calls can be chained together. */ Builder creationTime(Instant creationTime); /** *

* The last modified time. *

* * @param lastModifiedTime * The last modified time. * @return Returns a reference to this object so that method calls can be chained together. */ Builder lastModifiedTime(Instant lastModifiedTime); /** *

* Specifies summary information about the space settings. *

* * @param spaceSettingsSummary * Specifies summary information about the space settings. * @return Returns a reference to this object so that method calls can be chained together. */ Builder spaceSettingsSummary(SpaceSettingsSummary spaceSettingsSummary); /** *

* Specifies summary information about the space settings. *

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

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

* Specifies summary information about the space sharing settings. *

* * @param spaceSharingSettingsSummary * Specifies summary information about the space sharing settings. * @return Returns a reference to this object so that method calls can be chained together. */ Builder spaceSharingSettingsSummary(SpaceSharingSettingsSummary spaceSharingSettingsSummary); /** *

* Specifies summary information about the space sharing settings. *

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

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

* Specifies summary information about the ownership settings. *

* * @param ownershipSettingsSummary * Specifies summary information about the ownership settings. * @return Returns a reference to this object so that method calls can be chained together. */ Builder ownershipSettingsSummary(OwnershipSettingsSummary ownershipSettingsSummary); /** *

* Specifies summary information about the ownership settings. *

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

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

* The name of the space that appears in the Studio UI. *

* * @param spaceDisplayName * The name of the space that appears in the Studio UI. * @return Returns a reference to this object so that method calls can be chained together. */ Builder spaceDisplayName(String spaceDisplayName); } static final class BuilderImpl implements Builder { private String domainId; private String spaceName; private String status; private Instant creationTime; private Instant lastModifiedTime; private SpaceSettingsSummary spaceSettingsSummary; private SpaceSharingSettingsSummary spaceSharingSettingsSummary; private OwnershipSettingsSummary ownershipSettingsSummary; private String spaceDisplayName; private BuilderImpl() { } private BuilderImpl(SpaceDetails model) { domainId(model.domainId); spaceName(model.spaceName); status(model.status); creationTime(model.creationTime); lastModifiedTime(model.lastModifiedTime); spaceSettingsSummary(model.spaceSettingsSummary); spaceSharingSettingsSummary(model.spaceSharingSettingsSummary); ownershipSettingsSummary(model.ownershipSettingsSummary); spaceDisplayName(model.spaceDisplayName); } public final String getDomainId() { return domainId; } public final void setDomainId(String domainId) { this.domainId = domainId; } @Override public final Builder domainId(String domainId) { this.domainId = domainId; return this; } public final String getSpaceName() { return spaceName; } public final void setSpaceName(String spaceName) { this.spaceName = spaceName; } @Override public final Builder spaceName(String spaceName) { this.spaceName = spaceName; return this; } public final String getStatus() { return status; } public final void setStatus(String status) { this.status = status; } @Override public final Builder status(String status) { this.status = status; return this; } @Override public final Builder status(SpaceStatus status) { this.status(status == null ? null : status.toString()); return this; } public final Instant getCreationTime() { return creationTime; } public final void setCreationTime(Instant creationTime) { this.creationTime = creationTime; } @Override public final Builder creationTime(Instant creationTime) { this.creationTime = creationTime; return this; } public final Instant getLastModifiedTime() { return lastModifiedTime; } public final void setLastModifiedTime(Instant lastModifiedTime) { this.lastModifiedTime = lastModifiedTime; } @Override public final Builder lastModifiedTime(Instant lastModifiedTime) { this.lastModifiedTime = lastModifiedTime; return this; } public final SpaceSettingsSummary.Builder getSpaceSettingsSummary() { return spaceSettingsSummary != null ? spaceSettingsSummary.toBuilder() : null; } public final void setSpaceSettingsSummary(SpaceSettingsSummary.BuilderImpl spaceSettingsSummary) { this.spaceSettingsSummary = spaceSettingsSummary != null ? spaceSettingsSummary.build() : null; } @Override public final Builder spaceSettingsSummary(SpaceSettingsSummary spaceSettingsSummary) { this.spaceSettingsSummary = spaceSettingsSummary; return this; } public final SpaceSharingSettingsSummary.Builder getSpaceSharingSettingsSummary() { return spaceSharingSettingsSummary != null ? spaceSharingSettingsSummary.toBuilder() : null; } public final void setSpaceSharingSettingsSummary(SpaceSharingSettingsSummary.BuilderImpl spaceSharingSettingsSummary) { this.spaceSharingSettingsSummary = spaceSharingSettingsSummary != null ? spaceSharingSettingsSummary.build() : null; } @Override public final Builder spaceSharingSettingsSummary(SpaceSharingSettingsSummary spaceSharingSettingsSummary) { this.spaceSharingSettingsSummary = spaceSharingSettingsSummary; return this; } public final OwnershipSettingsSummary.Builder getOwnershipSettingsSummary() { return ownershipSettingsSummary != null ? ownershipSettingsSummary.toBuilder() : null; } public final void setOwnershipSettingsSummary(OwnershipSettingsSummary.BuilderImpl ownershipSettingsSummary) { this.ownershipSettingsSummary = ownershipSettingsSummary != null ? ownershipSettingsSummary.build() : null; } @Override public final Builder ownershipSettingsSummary(OwnershipSettingsSummary ownershipSettingsSummary) { this.ownershipSettingsSummary = ownershipSettingsSummary; return this; } public final String getSpaceDisplayName() { return spaceDisplayName; } public final void setSpaceDisplayName(String spaceDisplayName) { this.spaceDisplayName = spaceDisplayName; } @Override public final Builder spaceDisplayName(String spaceDisplayName) { this.spaceDisplayName = spaceDisplayName; return this; } @Override public SpaceDetails build() { return new SpaceDetails(this); } @Override public List> sdkFields() { return SDK_FIELDS; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy