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

com.atlan.model.admin.SSOMapping Maven / Gradle / Ivy

There is a newer version: 3.0.0
Show newest version
// Generated by delombok at Wed Oct 16 22:16:03 UTC 2024
/* SPDX-License-Identifier: Apache-2.0
   Copyright 2023 Atlan Pte. Ltd. */
package com.atlan.model.admin;

import com.atlan.model.core.AtlanObject;
import com.atlan.net.ApiResource;
import com.fasterxml.jackson.annotation.JsonProperty;

@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SSOMapping.SSOMappingBuilder.class)
public class SSOMapping extends ApiResource {
    private static final long serialVersionUID = 2L;
    /**
     * Unique identifier (GUID) of the mapping.
     */
    String id;
    /**
     * Name of the mapping.
     */
    String name;
    /**
     * TBC
     */
    String identityProviderMapper;
    /**
     * Alias for the identity provider, typically a value from AtlanSSO enumeration.
     */
    String identityProviderAlias;
    /**
     * Configuration for the mapping.
     */
    Config config;


    @com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SSOMapping.Config.ConfigBuilder.class)
    public static final class Config extends AtlanObject {
        private static final long serialVersionUID = 2L;
        /** Mechanism used for the mapping. */
        String syncMode;
        /** Any additional attributes for the mapping. */
        String attributes;
        /** Internal name of the mapped group in Atlan. */
        @JsonProperty("group")
        String groupName;
        /** Name of the SSO attribute containing the mapping. */
        @JsonProperty("attribute.name")
        String attributeName;
        /** Value of the SSO attribute which should map to the group. */
        @JsonProperty("attribute.value")
        String attributeValue;
        /** Human-readable name of the attribute containing the mapping. */
        @JsonProperty("attribute.friendly.name")
        String attributeFriendlyName;
        /** TBC */
        @JsonProperty("are.attribute.values.regex")
        String attributeValuesRegex;

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        Config(final String syncMode, final String attributes, final String groupName, final String attributeName, final String attributeValue, final String attributeFriendlyName, final String attributeValuesRegex) {
            this.syncMode = syncMode;
            this.attributes = attributes;
            this.groupName = groupName;
            this.attributeName = attributeName;
            this.attributeValue = attributeValue;
            this.attributeFriendlyName = attributeFriendlyName;
            this.attributeValuesRegex = attributeValuesRegex;
        }


        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "", buildMethodName = "build")
        public static class ConfigBuilder {
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String syncMode;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String attributes;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String groupName;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String attributeName;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String attributeValue;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String attributeFriendlyName;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String attributeValuesRegex;

            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            ConfigBuilder() {
            }

            /**
             * @return {@code this}.
             */
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config.ConfigBuilder syncMode(final String syncMode) {
                this.syncMode = syncMode;
                return this;
            }

            /**
             * @return {@code this}.
             */
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config.ConfigBuilder attributes(final String attributes) {
                this.attributes = attributes;
                return this;
            }

            /**
             * @return {@code this}.
             */
            @JsonProperty("group")
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config.ConfigBuilder groupName(final String groupName) {
                this.groupName = groupName;
                return this;
            }

            /**
             * @return {@code this}.
             */
            @JsonProperty("attribute.name")
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config.ConfigBuilder attributeName(final String attributeName) {
                this.attributeName = attributeName;
                return this;
            }

            /**
             * @return {@code this}.
             */
            @JsonProperty("attribute.value")
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config.ConfigBuilder attributeValue(final String attributeValue) {
                this.attributeValue = attributeValue;
                return this;
            }

            /**
             * @return {@code this}.
             */
            @JsonProperty("attribute.friendly.name")
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config.ConfigBuilder attributeFriendlyName(final String attributeFriendlyName) {
                this.attributeFriendlyName = attributeFriendlyName;
                return this;
            }

            /**
             * @return {@code this}.
             */
            @JsonProperty("are.attribute.values.regex")
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config.ConfigBuilder attributeValuesRegex(final String attributeValuesRegex) {
                this.attributeValuesRegex = attributeValuesRegex;
                return this;
            }

            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public SSOMapping.Config build() {
                return new SSOMapping.Config(this.syncMode, this.attributes, this.groupName, this.attributeName, this.attributeValue, this.attributeFriendlyName, this.attributeValuesRegex);
            }

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public java.lang.String toString() {
                return "SSOMapping.Config.ConfigBuilder(syncMode=" + this.syncMode + ", attributes=" + this.attributes + ", groupName=" + this.groupName + ", attributeName=" + this.attributeName + ", attributeValue=" + this.attributeValue + ", attributeFriendlyName=" + this.attributeFriendlyName + ", attributeValuesRegex=" + this.attributeValuesRegex + ")";
            }
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public static SSOMapping.Config.ConfigBuilder builder() {
            return new SSOMapping.Config.ConfigBuilder();
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public SSOMapping.Config.ConfigBuilder toBuilder() {
            return new SSOMapping.Config.ConfigBuilder().syncMode(this.syncMode).attributes(this.attributes).groupName(this.groupName).attributeName(this.attributeName).attributeValue(this.attributeValue).attributeFriendlyName(this.attributeFriendlyName).attributeValuesRegex(this.attributeValuesRegex);
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getSyncMode() {
            return this.syncMode;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getAttributes() {
            return this.attributes;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getGroupName() {
            return this.groupName;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getAttributeName() {
            return this.attributeName;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getAttributeValue() {
            return this.attributeValue;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getAttributeFriendlyName() {
            return this.attributeFriendlyName;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getAttributeValuesRegex() {
            return this.attributeValuesRegex;
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public boolean equals(final java.lang.Object o) {
            if (o == this) return true;
            if (!(o instanceof SSOMapping.Config)) return false;
            final SSOMapping.Config other = (SSOMapping.Config) o;
            if (!other.canEqual((java.lang.Object) this)) return false;
            if (!super.equals(o)) return false;
            final java.lang.Object this$syncMode = this.getSyncMode();
            final java.lang.Object other$syncMode = other.getSyncMode();
            if (this$syncMode == null ? other$syncMode != null : !this$syncMode.equals(other$syncMode)) return false;
            final java.lang.Object this$attributes = this.getAttributes();
            final java.lang.Object other$attributes = other.getAttributes();
            if (this$attributes == null ? other$attributes != null : !this$attributes.equals(other$attributes)) return false;
            final java.lang.Object this$groupName = this.getGroupName();
            final java.lang.Object other$groupName = other.getGroupName();
            if (this$groupName == null ? other$groupName != null : !this$groupName.equals(other$groupName)) return false;
            final java.lang.Object this$attributeName = this.getAttributeName();
            final java.lang.Object other$attributeName = other.getAttributeName();
            if (this$attributeName == null ? other$attributeName != null : !this$attributeName.equals(other$attributeName)) return false;
            final java.lang.Object this$attributeValue = this.getAttributeValue();
            final java.lang.Object other$attributeValue = other.getAttributeValue();
            if (this$attributeValue == null ? other$attributeValue != null : !this$attributeValue.equals(other$attributeValue)) return false;
            final java.lang.Object this$attributeFriendlyName = this.getAttributeFriendlyName();
            final java.lang.Object other$attributeFriendlyName = other.getAttributeFriendlyName();
            if (this$attributeFriendlyName == null ? other$attributeFriendlyName != null : !this$attributeFriendlyName.equals(other$attributeFriendlyName)) return false;
            final java.lang.Object this$attributeValuesRegex = this.getAttributeValuesRegex();
            final java.lang.Object other$attributeValuesRegex = other.getAttributeValuesRegex();
            if (this$attributeValuesRegex == null ? other$attributeValuesRegex != null : !this$attributeValuesRegex.equals(other$attributeValuesRegex)) return false;
            return true;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        protected boolean canEqual(final java.lang.Object other) {
            return other instanceof SSOMapping.Config;
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public int hashCode() {
            final int PRIME = 59;
            int result = super.hashCode();
            final java.lang.Object $syncMode = this.getSyncMode();
            result = result * PRIME + ($syncMode == null ? 43 : $syncMode.hashCode());
            final java.lang.Object $attributes = this.getAttributes();
            result = result * PRIME + ($attributes == null ? 43 : $attributes.hashCode());
            final java.lang.Object $groupName = this.getGroupName();
            result = result * PRIME + ($groupName == null ? 43 : $groupName.hashCode());
            final java.lang.Object $attributeName = this.getAttributeName();
            result = result * PRIME + ($attributeName == null ? 43 : $attributeName.hashCode());
            final java.lang.Object $attributeValue = this.getAttributeValue();
            result = result * PRIME + ($attributeValue == null ? 43 : $attributeValue.hashCode());
            final java.lang.Object $attributeFriendlyName = this.getAttributeFriendlyName();
            result = result * PRIME + ($attributeFriendlyName == null ? 43 : $attributeFriendlyName.hashCode());
            final java.lang.Object $attributeValuesRegex = this.getAttributeValuesRegex();
            result = result * PRIME + ($attributeValuesRegex == null ? 43 : $attributeValuesRegex.hashCode());
            return result;
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public java.lang.String toString() {
            return "SSOMapping.Config(super=" + super.toString() + ", syncMode=" + this.getSyncMode() + ", attributes=" + this.getAttributes() + ", groupName=" + this.getGroupName() + ", attributeName=" + this.getAttributeName() + ", attributeValue=" + this.getAttributeValue() + ", attributeFriendlyName=" + this.getAttributeFriendlyName() + ", attributeValuesRegex=" + this.getAttributeValuesRegex() + ")";
        }
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    SSOMapping(final String id, final String name, final String identityProviderMapper, final String identityProviderAlias, final Config config) {
        this.id = id;
        this.name = name;
        this.identityProviderMapper = identityProviderMapper;
        this.identityProviderAlias = identityProviderAlias;
        this.config = config;
    }


    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "", buildMethodName = "build")
    public static class SSOMappingBuilder {
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String id;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String name;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String identityProviderMapper;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String identityProviderAlias;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private Config config;

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        SSOMappingBuilder() {
        }

        /**
         * Unique identifier (GUID) of the mapping.
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public SSOMapping.SSOMappingBuilder id(final String id) {
            this.id = id;
            return this;
        }

        /**
         * Name of the mapping.
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public SSOMapping.SSOMappingBuilder name(final String name) {
            this.name = name;
            return this;
        }

        /**
         * TBC
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public SSOMapping.SSOMappingBuilder identityProviderMapper(final String identityProviderMapper) {
            this.identityProviderMapper = identityProviderMapper;
            return this;
        }

        /**
         * Alias for the identity provider, typically a value from AtlanSSO enumeration.
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public SSOMapping.SSOMappingBuilder identityProviderAlias(final String identityProviderAlias) {
            this.identityProviderAlias = identityProviderAlias;
            return this;
        }

        /**
         * Configuration for the mapping.
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public SSOMapping.SSOMappingBuilder config(final Config config) {
            this.config = config;
            return this;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public SSOMapping build() {
            return new SSOMapping(this.id, this.name, this.identityProviderMapper, this.identityProviderAlias, this.config);
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public java.lang.String toString() {
            return "SSOMapping.SSOMappingBuilder(id=" + this.id + ", name=" + this.name + ", identityProviderMapper=" + this.identityProviderMapper + ", identityProviderAlias=" + this.identityProviderAlias + ", config=" + this.config + ")";
        }
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public static SSOMapping.SSOMappingBuilder builder() {
        return new SSOMapping.SSOMappingBuilder();
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public SSOMapping.SSOMappingBuilder toBuilder() {
        return new SSOMapping.SSOMappingBuilder().id(this.id).name(this.name).identityProviderMapper(this.identityProviderMapper).identityProviderAlias(this.identityProviderAlias).config(this.config);
    }

    /**
     * Unique identifier (GUID) of the mapping.
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public String getId() {
        return this.id;
    }

    /**
     * Name of the mapping.
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public String getName() {
        return this.name;
    }

    /**
     * TBC
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public String getIdentityProviderMapper() {
        return this.identityProviderMapper;
    }

    /**
     * Alias for the identity provider, typically a value from AtlanSSO enumeration.
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public String getIdentityProviderAlias() {
        return this.identityProviderAlias;
    }

    /**
     * Configuration for the mapping.
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public Config getConfig() {
        return this.config;
    }

    @java.lang.Override
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public boolean equals(final java.lang.Object o) {
        if (o == this) return true;
        if (!(o instanceof SSOMapping)) return false;
        final SSOMapping other = (SSOMapping) o;
        if (!other.canEqual((java.lang.Object) this)) return false;
        if (!super.equals(o)) return false;
        final java.lang.Object this$id = this.getId();
        final java.lang.Object other$id = other.getId();
        if (this$id == null ? other$id != null : !this$id.equals(other$id)) return false;
        final java.lang.Object this$name = this.getName();
        final java.lang.Object other$name = other.getName();
        if (this$name == null ? other$name != null : !this$name.equals(other$name)) return false;
        final java.lang.Object this$identityProviderMapper = this.getIdentityProviderMapper();
        final java.lang.Object other$identityProviderMapper = other.getIdentityProviderMapper();
        if (this$identityProviderMapper == null ? other$identityProviderMapper != null : !this$identityProviderMapper.equals(other$identityProviderMapper)) return false;
        final java.lang.Object this$identityProviderAlias = this.getIdentityProviderAlias();
        final java.lang.Object other$identityProviderAlias = other.getIdentityProviderAlias();
        if (this$identityProviderAlias == null ? other$identityProviderAlias != null : !this$identityProviderAlias.equals(other$identityProviderAlias)) return false;
        final java.lang.Object this$config = this.getConfig();
        final java.lang.Object other$config = other.getConfig();
        if (this$config == null ? other$config != null : !this$config.equals(other$config)) return false;
        return true;
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    protected boolean canEqual(final java.lang.Object other) {
        return other instanceof SSOMapping;
    }

    @java.lang.Override
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public int hashCode() {
        final int PRIME = 59;
        int result = super.hashCode();
        final java.lang.Object $id = this.getId();
        result = result * PRIME + ($id == null ? 43 : $id.hashCode());
        final java.lang.Object $name = this.getName();
        result = result * PRIME + ($name == null ? 43 : $name.hashCode());
        final java.lang.Object $identityProviderMapper = this.getIdentityProviderMapper();
        result = result * PRIME + ($identityProviderMapper == null ? 43 : $identityProviderMapper.hashCode());
        final java.lang.Object $identityProviderAlias = this.getIdentityProviderAlias();
        result = result * PRIME + ($identityProviderAlias == null ? 43 : $identityProviderAlias.hashCode());
        final java.lang.Object $config = this.getConfig();
        result = result * PRIME + ($config == null ? 43 : $config.hashCode());
        return result;
    }

    @java.lang.Override
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public java.lang.String toString() {
        return "SSOMapping(super=" + super.toString() + ", id=" + this.getId() + ", name=" + this.getName() + ", identityProviderMapper=" + this.getIdentityProviderMapper() + ", identityProviderAlias=" + this.getIdentityProviderAlias() + ", config=" + this.getConfig() + ")";
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy