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

com.orange.cepheus.cep.model.Metadata Maven / Gradle / Ivy

There is a newer version: 1.0.0
Show newest version
/*
 * Copyright (C) 2015 Orange
 *
 * This software is distributed under the terms and conditions of the 'GNU GENERAL PUBLIC LICENSE
 * Version 2' license which can be found in the file 'LICENSE.txt' in this package distribution or
 * at 'http://www.gnu.org/licenses/gpl-2.0-standalone.html'.
 */

package com.orange.cepheus.cep.model;

import org.hibernate.validator.constraints.NotEmpty;

/**
 * Metadata definition for Attributes
 */
public class Metadata {

    @NotEmpty(message = "All metadata must have a name")
    private String name;

    @NotEmpty(message = "All metadata must have a type")
    private String type;

    private String jsonpath;

    public Metadata() {
    }

    public Metadata(String name, String type) {
        this.name = name;
        this.type = type;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getJsonpath() {
        return jsonpath;
    }

    public void setJsonpath(String jsonpath) {
        this.jsonpath = jsonpath;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o)
            return true;
        if (!(o instanceof Metadata))
            return false;

        Metadata metadata = (Metadata) o;

        if (name != null ? !name.equals(metadata.name) : metadata.name != null)
            return false;
        if (type != null ? !type.equals(metadata.type) : metadata.type != null)
            return false;
        return !(jsonpath != null ? !jsonpath.equals(metadata.jsonpath) : metadata.jsonpath != null);

    }

    @Override
    public int hashCode() {
        int result = name != null ? name.hashCode() : 0;
        result = 31 * result + (type != null ? type.hashCode() : 0);
        result = 31 * result + (jsonpath != null ? jsonpath.hashCode() : 0);
        return result;
    }

    @Override public String toString() {
        return "Metadata{" +
                "name='" + name + '\'' +
                ", type='" + type + '\'' +
                ", jsonpath='" + jsonpath + '\'' +
                '}';
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy