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

com.atlan.model.structs.Histogram Maven / Gradle / Ivy

There is a newer version: 3.0.0
Show newest version
// Generated by delombok at Thu Oct 10 18:56:33 UTC 2024
/* SPDX-License-Identifier: Apache-2.0
   Copyright 2022 Atlan Pte. Ltd. */
package com.atlan.model.structs;

import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.List;
import lombok.*;

/**
 * Detailed information about a distribution of values.
 */
@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = Histogram.HistogramBuilderImpl.class)
public class Histogram extends AtlanStruct {
    private static final long serialVersionUID = 2L;
    public static final String TYPE_NAME = "Histogram";
    /**
     * Fixed typeName for Histogram.
     */
    @JsonIgnore
    String typeName;
    /**
     * TBC
     */
    List boundaries;
    /**
     * TBC
     */
    List frequencies;

    /**
     * Quickly create a new Histogram.
     * @param boundaries TBC
     * @param frequencies TBC
     * @return a Histogram with the provided information
     */
    public static Histogram of(List boundaries, List frequencies) {
        return Histogram.builder().boundaries(boundaries).frequencies(frequencies).build();
    }

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


    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public static abstract class HistogramBuilder> extends AtlanStruct.AtlanStructBuilder {
        @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 List boundaries;
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private List frequencies;

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

        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private static void $fillValuesFromInstanceIntoBuilder(final Histogram instance, final Histogram.HistogramBuilder b) {
            b.typeName(instance.typeName);
            b.boundaries(instance.boundaries);
            b.frequencies(instance.frequencies);
        }

        /**
         * Fixed typeName for Histogram.
         * @return {@code this}.
         */
        @JsonIgnore
        @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 boundaries(final List boundaries) {
            this.boundaries = boundaries;
            return self();
        }

        /**
         * TBC
         * @return {@code this}.
         */
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        public B frequencies(final List frequencies) {
            this.frequencies = frequencies;
            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 "Histogram.HistogramBuilder(super=" + super.toString() + ", typeName$value=" + this.typeName$value + ", boundaries=" + this.boundaries + ", frequencies=" + this.frequencies + ")";
        }
    }


    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "", buildMethodName = "build")
    static final class HistogramBuilderImpl extends Histogram.HistogramBuilder {
        @java.lang.SuppressWarnings("all")
        @lombok.Generated
        private HistogramBuilderImpl() {
        }

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

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

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    protected Histogram(final Histogram.HistogramBuilder b) {
        super(b);
        if (b.typeName$set) this.typeName = b.typeName$value;
         else this.typeName = Histogram.$default$typeName();
        this.boundaries = b.boundaries;
        this.frequencies = b.frequencies;
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public static Histogram.HistogramBuilder builder() {
        return new Histogram.HistogramBuilderImpl();
    }

    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public Histogram.HistogramBuilder toBuilder() {
        return new Histogram.HistogramBuilderImpl().$fillValuesFrom(this);
    }

    /**
     * TBC
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public List getBoundaries() {
        return this.boundaries;
    }

    /**
     * TBC
     */
    @java.lang.SuppressWarnings("all")
    @lombok.Generated
    public List getFrequencies() {
        return this.frequencies;
    }

    @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 Histogram)) return false;
        final Histogram other = (Histogram) 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$boundaries = this.getBoundaries();
        final java.lang.Object other$boundaries = other.getBoundaries();
        if (this$boundaries == null ? other$boundaries != null : !this$boundaries.equals(other$boundaries)) return false;
        final java.lang.Object this$frequencies = this.getFrequencies();
        final java.lang.Object other$frequencies = other.getFrequencies();
        if (this$frequencies == null ? other$frequencies != null : !this$frequencies.equals(other$frequencies)) return false;
        return true;
    }

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

    @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 $boundaries = this.getBoundaries();
        result = result * PRIME + ($boundaries == null ? 43 : $boundaries.hashCode());
        final java.lang.Object $frequencies = this.getFrequencies();
        result = result * PRIME + ($frequencies == null ? 43 : $frequencies.hashCode());
        return result;
    }

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy