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

net.leanix.gsit.EventAttributeDefinition Maven / Gradle / Ivy

There is a newer version: 0.5.1
Show newest version
package net.leanix.gsit;


import com.google.common.base.Optional;

import javax.annotation.concurrent.Immutable;
import java.util.Objects;

@Immutable
public class EventAttributeDefinition {

    private final String path;
    private final Optional isRequired;
    private final Optional isHashed;

    public EventAttributeDefinition(String path, Optional isRequired, Optional isHashed) {
        this.path = path;
        this.isRequired = isRequired;
        this.isHashed = isHashed;
    }

    public String getPath() {
        return path;
    }

    public Optional isRequired() {
        return isRequired;
    }

    public Optional isHashed() {
        return isHashed;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        EventAttributeDefinition that = (EventAttributeDefinition) o;
        return Objects.equals(path, that.path) &&
                Objects.equals(isRequired, that.isRequired) &&
                Objects.equals(isHashed, that.isHashed);
    }

    @Override
    public int hashCode() {
        return Objects.hash(path, isRequired, isHashed);
    }

    @Override
    public String toString() {
        return "EventAttributeDefinition{" +
                "path='" + path + '\'' +
                ", isRequired=" + isRequired +
                ", isHashed=" + isHashed +
                '}';
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy