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

com.atlan.model.relations.GlossaryPreferredTerm 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 2024 Atlan Pte. Ltd. */
package com.atlan.model.relations;

import com.atlan.exception.InvalidRequestException;
import com.atlan.model.assets.GlossaryTerm;
import com.atlan.model.assets.IGlossaryTerm;
import com.atlan.model.enums.AtlasGlossaryTermRelationshipStatus;
import java.util.HashMap;
import java.util.Map;
import javax.annotation.processing.Generated;

/**
 * Indicates term(s) should be used in place of another. This relationship can be used to encourage adoption of newer vocabularies. This is a weaker version of ReplacementTerm.
 */
@Generated("com.atlan.generators.ModelGeneratorV2")
public class GlossaryPreferredTerm extends RelationshipAttributes {
    private static final long serialVersionUID = 2L;
    public static final String TYPE_NAME = "AtlasGlossaryPreferredTerm";
    /**
     * Fixed typeName for GlossaryPreferredTerms.
     */
    String typeName;
    /**
     * TBC
     */
    String description;
    /**
     * TBC
     */
    String expression;
    /**
     * TBC
     */
    String source;
    /**
     * TBC
     */
    AtlasGlossaryTermRelationshipStatus status;
    /**
     * TBC
     */
    String steward;

    /**
     * {@inheritDoc}
     */
    @Override
    public Map getAll() {
        Map map = new HashMap<>();
        if (description != null) {
            map.put("description", description);
        }
        if (expression != null) {
            map.put("expression", expression);
        }
        if (source != null) {
            map.put("source", source);
        }
        if (status != null) {
            map.put("status", status);
        }
        if (steward != null) {
            map.put("steward", steward);
        }
        return map;
    }


    /**
     * Indicates term(s) should be used in place of another. This relationship can be used to encourage adoption of newer vocabularies. This is a weaker version of ReplacementTerm.
     */
    @Generated("com.atlan.generators.ModelGeneratorV2")
    public static final class PreferredToTerm extends GlossaryTerm {
        private static final long serialVersionUID = 2L;
        /**
         * Fixed typeName for GlossaryPreferredTerm.
         */
        String relationshipType;
        /**
         * Relationship attributes specific to GlossaryPreferredTerm.
         */
        GlossaryPreferredTerm relationshipAttributes;

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private static String $default$relationshipType() {
            return GlossaryPreferredTerm.TYPE_NAME;
        }


        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public static abstract class PreferredToTermBuilder> extends GlossaryTerm.GlossaryTermBuilder {
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private boolean relationshipType$set;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String relationshipType$value;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private GlossaryPreferredTerm relationshipAttributes;

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            protected B $fillValuesFrom(final C instance) {
                super.$fillValuesFrom(instance);
                GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilder.$fillValuesFromInstanceIntoBuilder(instance, this);
                return self();
            }

            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private static void $fillValuesFromInstanceIntoBuilder(final GlossaryPreferredTerm.PreferredToTerm instance, final GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilder b) {
                b.relationshipType(instance.relationshipType);
                b.relationshipAttributes(instance.relationshipAttributes);
            }

            /**
             * Fixed typeName for GlossaryPreferredTerm.
             * @return {@code this}.
             */
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public B relationshipType(final String relationshipType) {
                this.relationshipType$value = relationshipType;
                relationshipType$set = true;
                return self();
            }

            /**
             * Relationship attributes specific to GlossaryPreferredTerm.
             * @return {@code this}.
             */
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public B relationshipAttributes(final GlossaryPreferredTerm relationshipAttributes) {
                this.relationshipAttributes = relationshipAttributes;
                return self();
            }

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            protected abstract B self();

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public abstract C build();

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public java.lang.String toString() {
                return "GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilder(super=" + super.toString() + ", relationshipType$value=" + this.relationshipType$value + ", relationshipAttributes=" + this.relationshipAttributes + ")";
            }
        }


        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private static final class PreferredToTermBuilderImpl extends GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilder {
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private PreferredToTermBuilderImpl() {
            }

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            protected GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilderImpl self() {
                return this;
            }

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public GlossaryPreferredTerm.PreferredToTerm build() {
                return new GlossaryPreferredTerm.PreferredToTerm(this);
            }
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        protected PreferredToTerm(final GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilder b) {
            super(b);
            if (b.relationshipType$set) this.relationshipType = b.relationshipType$value;
             else this.relationshipType = GlossaryPreferredTerm.PreferredToTerm.$default$relationshipType();
            this.relationshipAttributes = b.relationshipAttributes;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public static GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilder _internal() {
            return new GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilderImpl();
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilder toBuilder() {
            return new GlossaryPreferredTerm.PreferredToTerm.PreferredToTermBuilderImpl().$fillValuesFrom(this);
        }

        /**
         * Relationship attributes specific to GlossaryPreferredTerm.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public GlossaryPreferredTerm getRelationshipAttributes() {
            return this.relationshipAttributes;
        }

        @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 GlossaryPreferredTerm.PreferredToTerm)) return false;
            final GlossaryPreferredTerm.PreferredToTerm other = (GlossaryPreferredTerm.PreferredToTerm) o;
            if (!other.canEqual((java.lang.Object) this)) return false;
            if (!super.equals(o)) return false;
            final java.lang.Object this$relationshipType = this.getRelationshipType();
            final java.lang.Object other$relationshipType = other.getRelationshipType();
            if (this$relationshipType == null ? other$relationshipType != null : !this$relationshipType.equals(other$relationshipType)) return false;
            final java.lang.Object this$relationshipAttributes = this.getRelationshipAttributes();
            final java.lang.Object other$relationshipAttributes = other.getRelationshipAttributes();
            if (this$relationshipAttributes == null ? other$relationshipAttributes != null : !this$relationshipAttributes.equals(other$relationshipAttributes)) return false;
            return true;
        }

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

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public int hashCode() {
            final int PRIME = 59;
            int result = super.hashCode();
            final java.lang.Object $relationshipType = this.getRelationshipType();
            result = result * PRIME + ($relationshipType == null ? 43 : $relationshipType.hashCode());
            final java.lang.Object $relationshipAttributes = this.getRelationshipAttributes();
            result = result * PRIME + ($relationshipAttributes == null ? 43 : $relationshipAttributes.hashCode());
            return result;
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public java.lang.String toString() {
            return "GlossaryPreferredTerm.PreferredToTerm(super=" + super.toString() + ", relationshipType=" + this.getRelationshipType() + ", relationshipAttributes=" + this.getRelationshipAttributes() + ")";
        }

        /**
         * Fixed typeName for GlossaryPreferredTerm.
         */
        @Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getRelationshipType() {
            return this.relationshipType;
        }
    }


    /**
     * Indicates term(s) should be used in place of another. This relationship can be used to encourage adoption of newer vocabularies. This is a weaker version of ReplacementTerm.
     */
    @Generated("com.atlan.generators.ModelGeneratorV2")
    public static final class PreferredTerm extends GlossaryTerm {
        private static final long serialVersionUID = 2L;
        /**
         * Fixed typeName for GlossaryPreferredTerm.
         */
        String relationshipType;
        /**
         * Relationship attributes specific to GlossaryPreferredTerm.
         */
        GlossaryPreferredTerm relationshipAttributes;

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private static String $default$relationshipType() {
            return GlossaryPreferredTerm.TYPE_NAME;
        }


        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public static abstract class PreferredTermBuilder> extends GlossaryTerm.GlossaryTermBuilder {
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private boolean relationshipType$set;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private String relationshipType$value;
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private GlossaryPreferredTerm relationshipAttributes;

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            protected B $fillValuesFrom(final C instance) {
                super.$fillValuesFrom(instance);
                GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilder.$fillValuesFromInstanceIntoBuilder(instance, this);
                return self();
            }

            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private static void $fillValuesFromInstanceIntoBuilder(final GlossaryPreferredTerm.PreferredTerm instance, final GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilder b) {
                b.relationshipType(instance.relationshipType);
                b.relationshipAttributes(instance.relationshipAttributes);
            }

            /**
             * Fixed typeName for GlossaryPreferredTerm.
             * @return {@code this}.
             */
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public B relationshipType(final String relationshipType) {
                this.relationshipType$value = relationshipType;
                relationshipType$set = true;
                return self();
            }

            /**
             * Relationship attributes specific to GlossaryPreferredTerm.
             * @return {@code this}.
             */
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public B relationshipAttributes(final GlossaryPreferredTerm relationshipAttributes) {
                this.relationshipAttributes = relationshipAttributes;
                return self();
            }

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            protected abstract B self();

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public abstract C build();

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public java.lang.String toString() {
                return "GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilder(super=" + super.toString() + ", relationshipType$value=" + this.relationshipType$value + ", relationshipAttributes=" + this.relationshipAttributes + ")";
            }
        }


        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private static final class PreferredTermBuilderImpl extends GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilder {
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            private PreferredTermBuilderImpl() {
            }

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            protected GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilderImpl self() {
                return this;
            }

            @java.lang.Override
            @java.lang.SuppressWarnings("all")
            @lombok.Generated
            public GlossaryPreferredTerm.PreferredTerm build() {
                return new GlossaryPreferredTerm.PreferredTerm(this);
            }
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        protected PreferredTerm(final GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilder b) {
            super(b);
            if (b.relationshipType$set) this.relationshipType = b.relationshipType$value;
             else this.relationshipType = GlossaryPreferredTerm.PreferredTerm.$default$relationshipType();
            this.relationshipAttributes = b.relationshipAttributes;
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public static GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilder _internal() {
            return new GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilderImpl();
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilder toBuilder() {
            return new GlossaryPreferredTerm.PreferredTerm.PreferredTermBuilderImpl().$fillValuesFrom(this);
        }

        /**
         * Relationship attributes specific to GlossaryPreferredTerm.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public GlossaryPreferredTerm getRelationshipAttributes() {
            return this.relationshipAttributes;
        }

        @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 GlossaryPreferredTerm.PreferredTerm)) return false;
            final GlossaryPreferredTerm.PreferredTerm other = (GlossaryPreferredTerm.PreferredTerm) o;
            if (!other.canEqual((java.lang.Object) this)) return false;
            if (!super.equals(o)) return false;
            final java.lang.Object this$relationshipType = this.getRelationshipType();
            final java.lang.Object other$relationshipType = other.getRelationshipType();
            if (this$relationshipType == null ? other$relationshipType != null : !this$relationshipType.equals(other$relationshipType)) return false;
            final java.lang.Object this$relationshipAttributes = this.getRelationshipAttributes();
            final java.lang.Object other$relationshipAttributes = other.getRelationshipAttributes();
            if (this$relationshipAttributes == null ? other$relationshipAttributes != null : !this$relationshipAttributes.equals(other$relationshipAttributes)) return false;
            return true;
        }

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

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public int hashCode() {
            final int PRIME = 59;
            int result = super.hashCode();
            final java.lang.Object $relationshipType = this.getRelationshipType();
            result = result * PRIME + ($relationshipType == null ? 43 : $relationshipType.hashCode());
            final java.lang.Object $relationshipAttributes = this.getRelationshipAttributes();
            result = result * PRIME + ($relationshipAttributes == null ? 43 : $relationshipAttributes.hashCode());
            return result;
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public java.lang.String toString() {
            return "GlossaryPreferredTerm.PreferredTerm(super=" + super.toString() + ", relationshipType=" + this.getRelationshipType() + ", relationshipAttributes=" + this.getRelationshipAttributes() + ")";
        }

        /**
         * Fixed typeName for GlossaryPreferredTerm.
         */
        @Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public String getRelationshipType() {
            return this.relationshipType;
        }
    }


    public static abstract class GlossaryPreferredTermBuilder> extends RelationshipAttributes.RelationshipAttributesBuilder {
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private boolean typeName$set;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String typeName$value;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String description;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String expression;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String source;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private AtlasGlossaryTermRelationshipStatus status;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private String steward;

        /**
         * Build the GlossaryPreferredTerm relationship (with attributes) into a related object.
         *
         * @param related the related asset to which to build the detailed relationship
         * @return a detailed Atlan relationship that conforms to the necessary interface for a related asset
         * @throws InvalidRequestException if the asset provided is without a GUID or qualifiedName
         */
        public IGlossaryTerm preferredToTerm(IGlossaryTerm related) throws InvalidRequestException {
            GlossaryPreferredTerm attributes = build();
            if (related.getGuid() != null && !related.getGuid().isBlank()) {
                return PreferredToTerm._internal().guid(related.getGuid()).relationshipAttributes(attributes).build();
            } else {
                return PreferredToTerm._internal().uniqueAttributes(UniqueAttributes.builder().qualifiedName(related.getQualifiedName()).build()).relationshipAttributes(attributes).build();
            }
        }

        /**
         * Build the GlossaryPreferredTerm relationship (with attributes) into a related object.
         *
         * @param related the related asset to which to build the detailed relationship
         * @return a detailed Atlan relationship that conforms to the necessary interface for a related asset
         * @throws InvalidRequestException if the asset provided is without a GUID or qualifiedName
         */
        public IGlossaryTerm preferredTerm(IGlossaryTerm related) throws InvalidRequestException {
            GlossaryPreferredTerm attributes = build();
            if (related.getGuid() != null && !related.getGuid().isBlank()) {
                return PreferredTerm._internal().guid(related.getGuid()).relationshipAttributes(attributes).build();
            } else {
                return PreferredTerm._internal().uniqueAttributes(UniqueAttributes.builder().qualifiedName(related.getQualifiedName()).build()).relationshipAttributes(attributes).build();
            }
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        protected B $fillValuesFrom(final C instance) {
            super.$fillValuesFrom(instance);
            GlossaryPreferredTerm.GlossaryPreferredTermBuilder.$fillValuesFromInstanceIntoBuilder(instance, this);
            return self();
        }

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private static void $fillValuesFromInstanceIntoBuilder(final GlossaryPreferredTerm instance, final GlossaryPreferredTerm.GlossaryPreferredTermBuilder b) {
            b.typeName(instance.typeName);
            b.description(instance.description);
            b.expression(instance.expression);
            b.source(instance.source);
            b.status(instance.status);
            b.steward(instance.steward);
        }

        /**
         * Fixed typeName for GlossaryPreferredTerms.
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public B typeName(final String typeName) {
            this.typeName$value = typeName;
            typeName$set = true;
            return self();
        }

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

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

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

        /**
         * TBC
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public B status(final AtlasGlossaryTermRelationshipStatus status) {
            this.status = status;
            return self();
        }

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

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        protected abstract B self();

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public abstract C build();

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public java.lang.String toString() {
            return "GlossaryPreferredTerm.GlossaryPreferredTermBuilder(super=" + super.toString() + ", typeName$value=" + this.typeName$value + ", description=" + this.description + ", expression=" + this.expression + ", source=" + this.source + ", status=" + this.status + ", steward=" + this.steward + ")";
        }
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    private static String $default$typeName() {
        return TYPE_NAME;
    }


    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    private static final class GlossaryPreferredTermBuilderImpl extends GlossaryPreferredTerm.GlossaryPreferredTermBuilder {
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private GlossaryPreferredTermBuilderImpl() {
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        protected GlossaryPreferredTerm.GlossaryPreferredTermBuilderImpl self() {
            return this;
        }

        @java.lang.Override
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public GlossaryPreferredTerm build() {
            return new GlossaryPreferredTerm(this);
        }
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    protected GlossaryPreferredTerm(final GlossaryPreferredTerm.GlossaryPreferredTermBuilder b) {
        super(b);
        if (b.typeName$set) this.typeName = b.typeName$value;
         else this.typeName = GlossaryPreferredTerm.$default$typeName();
        this.description = b.description;
        this.expression = b.expression;
        this.source = b.source;
        this.status = b.status;
        this.steward = b.steward;
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public static GlossaryPreferredTerm.GlossaryPreferredTermBuilder builder() {
        return new GlossaryPreferredTerm.GlossaryPreferredTermBuilderImpl();
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public GlossaryPreferredTerm.GlossaryPreferredTermBuilder toBuilder() {
        return new GlossaryPreferredTerm.GlossaryPreferredTermBuilderImpl().$fillValuesFrom(this);
    }

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

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

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

    /**
     * TBC
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public AtlasGlossaryTermRelationshipStatus getStatus() {
        return this.status;
    }

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

    @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 GlossaryPreferredTerm)) return false;
        final GlossaryPreferredTerm other = (GlossaryPreferredTerm) o;
        if (!other.canEqual((java.lang.Object) this)) return false;
        if (!super.equals(o)) return false;
        final java.lang.Object this$typeName = this.getTypeName();
        final java.lang.Object other$typeName = other.getTypeName();
        if (this$typeName == null ? other$typeName != null : !this$typeName.equals(other$typeName)) return false;
        final java.lang.Object this$description = this.getDescription();
        final java.lang.Object other$description = other.getDescription();
        if (this$description == null ? other$description != null : !this$description.equals(other$description)) return false;
        final java.lang.Object this$expression = this.getExpression();
        final java.lang.Object other$expression = other.getExpression();
        if (this$expression == null ? other$expression != null : !this$expression.equals(other$expression)) return false;
        final java.lang.Object this$source = this.getSource();
        final java.lang.Object other$source = other.getSource();
        if (this$source == null ? other$source != null : !this$source.equals(other$source)) return false;
        final java.lang.Object this$status = this.getStatus();
        final java.lang.Object other$status = other.getStatus();
        if (this$status == null ? other$status != null : !this$status.equals(other$status)) return false;
        final java.lang.Object this$steward = this.getSteward();
        final java.lang.Object other$steward = other.getSteward();
        if (this$steward == null ? other$steward != null : !this$steward.equals(other$steward)) return false;
        return true;
    }

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

    @java.lang.Override
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public int hashCode() {
        final int PRIME = 59;
        int result = super.hashCode();
        final java.lang.Object $typeName = this.getTypeName();
        result = result * PRIME + ($typeName == null ? 43 : $typeName.hashCode());
        final java.lang.Object $description = this.getDescription();
        result = result * PRIME + ($description == null ? 43 : $description.hashCode());
        final java.lang.Object $expression = this.getExpression();
        result = result * PRIME + ($expression == null ? 43 : $expression.hashCode());
        final java.lang.Object $source = this.getSource();
        result = result * PRIME + ($source == null ? 43 : $source.hashCode());
        final java.lang.Object $status = this.getStatus();
        result = result * PRIME + ($status == null ? 43 : $status.hashCode());
        final java.lang.Object $steward = this.getSteward();
        result = result * PRIME + ($steward == null ? 43 : $steward.hashCode());
        return result;
    }

    /**
     * Fixed typeName for GlossaryPreferredTerms.
     */
    @Override
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public String getTypeName() {
        return this.typeName;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy