package de.otto.edison.togglz.controller;
import com.fasterxml.jackson.annotation.JsonInclude;
import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL;
@JsonInclude(NON_NULL)
public class FeatureToggleRepresentation {
public final String description;
public final boolean enabled;
public final String value;
FeatureToggleRepresentation(final String description, final boolean enabled, final String value) {
this.description = description;
this.enabled = enabled;
this.value = value;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
FeatureToggleRepresentation that = (FeatureToggleRepresentation) o;
if (enabled != that.enabled) return false;
if (description != null ? !description.equals(that.description) : that.description != null) return false;
return value != null ? value.equals(that.value) : that.value == null;
}
@Override
public int hashCode() {
int result = description != null ? description.hashCode() : 0;
result = 31 * result + (enabled ? 1 : 0);
result = 31 * result + (value != null ? value.hashCode() : 0);
return result;
}
@Override
public String toString() {
return "FeatureToggleRepresentation{" +
"description='" + description + '\'' +
", enabled=" + enabled +
", value='" + value + '\'' +
'}';
}
}