blob: 156157adeafa1ba958309af728356cb717b26e38 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.ambari.server.state;
import java.util.Collection;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlElements;
import org.apache.ambari.server.controller.ApiModel;
import org.codehaus.jackson.annotate.JsonProperty;
import org.codehaus.jackson.map.annotate.JsonSerialize;
import io.swagger.annotations.ApiModelProperty;
@XmlAccessorType(XmlAccessType.FIELD)
@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL)
public class ValueAttributesInfo implements ApiModel {
public static final String EMPTY_VALUE_VALID = "empty_value_valid";
public static final String UI_ONLY_PROPERTY = "ui_only_property";
public static final String READ_ONLY = "read_only";
public static final String EDITABLE_ONLY_AT_INSTALL = "editable_only_at_install";
public static final String SHOW_PROPERTY_NAME = "show_property_name";
public static final String INCREMENT_STEP = "increment_step";
public static final String SELECTION_CARDINALITY = "selection_cardinality";
public static final String PROPERTY_FILE_NAME = "property-file-name";
public static final String PROPERTY_FILE_TYPE = "property-file-type";
public static final String ENTRIES = "entries";
public static final String HIDDEN = "hidden";
public static final String ENTRIES_EDITABLE = "entries_editable";
public static final String USER_GROUPS = "user-groups";
public static final String KEYSTORE = "keystore";
private String type;
private String maximum;
private String minimum;
private String unit;
private String delete;
private Boolean visible;
private Boolean overridable;
private String copy;
@XmlElement(name = "empty-value-valid")
@JsonProperty(EMPTY_VALUE_VALID)
private Boolean emptyValueValid;
@XmlElement(name = "ui-only-property")
@JsonProperty(UI_ONLY_PROPERTY)
private Boolean uiOnlyProperty;
@XmlElement(name = "read-only")
@JsonProperty(READ_ONLY)
private Boolean readOnly;
@XmlElement(name = "editable-only-at-install")
@JsonProperty(EDITABLE_ONLY_AT_INSTALL)
private Boolean editableOnlyAtInstall;
@XmlElement(name = "show-property-name")
@JsonProperty(SHOW_PROPERTY_NAME)
private Boolean showPropertyName;
@XmlElement(name = "increment-step")
@JsonProperty(INCREMENT_STEP)
private String incrementStep;
@XmlElementWrapper(name = ENTRIES)
@XmlElements(@XmlElement(name = "entry"))
private Collection<ValueEntryInfo> entries;
@XmlElement(name = HIDDEN)
private String hidden;
@XmlElement(name = ENTRIES_EDITABLE)
private Boolean entriesEditable;
@XmlElement(name = "selection-cardinality")
@JsonProperty(SELECTION_CARDINALITY)
private String selectionCardinality;
@XmlElement(name = PROPERTY_FILE_NAME)
@JsonProperty(PROPERTY_FILE_NAME)
private String propertyFileName;
@XmlElement(name = PROPERTY_FILE_TYPE)
@JsonProperty(PROPERTY_FILE_TYPE)
private String propertyFileType;
@XmlElementWrapper(name = USER_GROUPS)
@XmlElements(@XmlElement(name = "property"))
private Collection<UserGroupInfo> userGroupEntries;
@XmlElement(name = KEYSTORE)
private boolean keyStore;
public ValueAttributesInfo() {
}
@ApiModelProperty(name = "type")
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
@ApiModelProperty(name = "maximum")
public String getMaximum() {
return maximum;
}
public void setMaximum(String maximum) {
this.maximum = maximum;
}
@ApiModelProperty(name = "minimum")
public String getMinimum() {
return minimum;
}
public void setMinimum(String minimum) {
this.minimum = minimum;
}
@ApiModelProperty(name = "unit")
public String getUnit() {
return unit;
}
public void setUnit(String unit) {
this.unit = unit;
}
@ApiModelProperty(name = ENTRIES)
public Collection<ValueEntryInfo> getEntries() {
return entries;
}
public void setEntries(Collection<ValueEntryInfo> entries) {
this.entries = entries;
}
@ApiModelProperty(name = "user-group-entries")
public Collection<UserGroupInfo> getUserGroupEntries() {
return userGroupEntries;
}
public void setUserGroupEntries(Collection<UserGroupInfo> userGroupEntries) {
this.userGroupEntries = userGroupEntries;
}
@ApiModelProperty(name = HIDDEN)
public String getHidden() {
return hidden;
}
public void setHidden(String hidden) {
this.hidden = hidden;
}
@ApiModelProperty(name = ENTRIES_EDITABLE)
public Boolean getEntriesEditable() {
return entriesEditable;
}
public void setEntriesEditable(Boolean entriesEditable) {
this.entriesEditable = entriesEditable;
}
@ApiModelProperty(name = SELECTION_CARDINALITY)
public String getSelectionCardinality() {
return selectionCardinality;
}
public void setSelectionCardinality(String selectionCardinality) {
this.selectionCardinality = selectionCardinality;
}
@ApiModelProperty(name = PROPERTY_FILE_NAME)
public String getPropertyFileName() {
return propertyFileName;
}
public void setPropertyFileName(String propertyFileName) {
this.propertyFileName = propertyFileName;
}
@ApiModelProperty(name = PROPERTY_FILE_TYPE)
public String getPropertyFileType() {
return propertyFileType;
}
public void setPropertyFileType(String propertyFileType) {
this.propertyFileType = propertyFileType;
}
@ApiModelProperty(name = INCREMENT_STEP)
public String getIncrementStep() {
return incrementStep;
}
public void setIncrementStep(String incrementStep) {
this.incrementStep = incrementStep;
}
@ApiModelProperty(name = "delete")
public String getDelete() {
return delete;
}
public void setDelete(String delete) {
this.delete = delete;
}
@ApiModelProperty(name = EMPTY_VALUE_VALID)
public Boolean getEmptyValueValid() {
return emptyValueValid;
}
public void setEmptyValueValid(Boolean isEmptyValueValid) {
this.emptyValueValid = isEmptyValueValid;
}
@ApiModelProperty(name = "visible")
public Boolean getVisible() {
return visible;
}
public void setVisible(Boolean isVisible) {
this.visible = isVisible;
}
@ApiModelProperty(name = READ_ONLY)
public Boolean getReadOnly() {
return readOnly;
}
public void setReadOnly(Boolean isReadOnly) {
this.readOnly = isReadOnly;
}
@ApiModelProperty(name = EDITABLE_ONLY_AT_INSTALL)
public Boolean getEditableOnlyAtInstall() {
return editableOnlyAtInstall;
}
public void setEditableOnlyAtInstall(Boolean isEditableOnlyAtInstall) {
this.editableOnlyAtInstall = isEditableOnlyAtInstall;
}
@ApiModelProperty(name = "overridable")
public Boolean getOverridable() {
return overridable;
}
public void setOverridable(Boolean isOverridable) {
this.overridable = isOverridable;
}
@ApiModelProperty(name = SHOW_PROPERTY_NAME)
public Boolean getShowPropertyName() {
return showPropertyName;
}
public void setShowPropertyName(Boolean isPropertyNameVisible) {
this.showPropertyName = isPropertyNameVisible;
}
@ApiModelProperty(name = UI_ONLY_PROPERTY)
public Boolean getUiOnlyProperty() {
return uiOnlyProperty;
}
public void setUiOnlyProperty(Boolean isUiOnlyProperty) {
this.uiOnlyProperty = isUiOnlyProperty;
}
@ApiModelProperty(name = "copy")
public String getCopy() {
return copy;
}
public void setCopy(String copy) {
this.copy = copy;
}
/**
* Get the keystore element, indicating whether this
* password property is to be encrypted in a keystore
* when credential store use is enabled
*
* @return "true", "false"
*/
@ApiModelProperty(name = KEYSTORE)
public boolean isKeyStore() {
return keyStore;
}
/**
* Set the keystore element.
*
* @param keyStore - "true", "false"
*/
public void setKeyStore(boolean keyStore) {
this.keyStore = keyStore;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
ValueAttributesInfo that = (ValueAttributesInfo) o;
if (entries != null ? !entries.equals(that.entries) : that.entries != null) return false;
if (entriesEditable != null ? !entriesEditable.equals(that.entriesEditable) : that.entriesEditable != null)
return false;
if (emptyValueValid != null ? !emptyValueValid.equals(that.emptyValueValid) : that.emptyValueValid != null)
return false;
if (visible != null ? !visible.equals(that.visible) : that.visible != null)
return false;
if (readOnly != null ? !readOnly.equals(that.readOnly) : that.readOnly != null)
return false;
if (editableOnlyAtInstall != null ? !editableOnlyAtInstall.equals(that.editableOnlyAtInstall) : that.editableOnlyAtInstall != null)
return false;
if (overridable != null ? !overridable.equals(that.overridable) : that.overridable != null)
return false;
if (hidden != null ? !hidden.equals(that.hidden) : that.hidden != null)
return false;
if (showPropertyName != null ? !showPropertyName.equals(that.showPropertyName) : that.showPropertyName != null)
return false;
if (uiOnlyProperty != null ? !uiOnlyProperty.equals(that.uiOnlyProperty) : that.uiOnlyProperty != null)
return false;
if (copy != null ? !copy.equals(that.copy) : that.copy != null)
return false;
if (maximum != null ? !maximum.equals(that.maximum) : that.maximum != null) return false;
if (minimum != null ? !minimum.equals(that.minimum) : that.minimum != null) return false;
if (selectionCardinality != null ? !selectionCardinality.equals(that.selectionCardinality) : that.selectionCardinality != null)
return false;
if (propertyFileName != null ? !propertyFileName.equals(that.propertyFileName) : that.propertyFileName != null)
return false;
if (propertyFileType != null ? !propertyFileType.equals(that.propertyFileType) : that.propertyFileType != null)
return false;
if (type != null ? !type.equals(that.type) : that.type != null) return false;
if (unit != null ? !unit.equals(that.unit) : that.unit != null) return false;
if (delete != null ? !delete.equals(that.delete) : that.delete != null) return false;
if (incrementStep != null ? !incrementStep.equals(that.incrementStep) : that.incrementStep != null) return false;
if (userGroupEntries != null ? !userGroupEntries.equals(that.userGroupEntries) : that.userGroupEntries != null) return false;
return true;
}
@Override
public int hashCode() {
int result = type != null ? type.hashCode() : 0;
result = 31 * result + (hidden != null ? hidden.hashCode() : 0);
result = 31 * result + (maximum != null ? maximum.hashCode() : 0);
result = 31 * result + (minimum != null ? minimum.hashCode() : 0);
result = 31 * result + (unit != null ? unit.hashCode() : 0);
result = 31 * result + (delete != null ? delete.hashCode() : 0);
result = 31 * result + (entries != null ? entries.hashCode() : 0);
result = 31 * result + (entriesEditable != null ? entriesEditable.hashCode() : 0);
result = 31 * result + (selectionCardinality != null ? selectionCardinality.hashCode() : 0);
result = 31 * result + (propertyFileName != null ? propertyFileName.hashCode() : 0);
result = 31 * result + (propertyFileType != null ? propertyFileType.hashCode() : 0);
result = 31 * result + (incrementStep != null ? incrementStep.hashCode() : 0);
result = 31 * result + (emptyValueValid != null ? emptyValueValid.hashCode() : 0);
result = 31 * result + (visible != null ? visible.hashCode() : 0);
result = 31 * result + (readOnly != null ? readOnly.hashCode() : 0);
result = 31 * result + (editableOnlyAtInstall != null ? editableOnlyAtInstall.hashCode() : 0);
result = 31 * result + (overridable != null ? overridable.hashCode() : 0);
result = 31 * result + (showPropertyName != null ? showPropertyName.hashCode() : 0);
result = 31 * result + (uiOnlyProperty != null ? uiOnlyProperty.hashCode() : 0);
result = 31 * result + (copy != null ? copy.hashCode() : 0);
result = 31 * result + (userGroupEntries != null ? userGroupEntries.hashCode() : 0);
return result;
}
@Override
public String toString() {
return "ValueAttributesInfo{" +
"entries=" + entries +
", type='" + type + '\'' +
", maximum='" + maximum + '\'' +
", minimum='" + minimum + '\'' +
", unit='" + unit + '\'' +
", delete='" + delete + '\'' +
", emptyValueValid='" + emptyValueValid + '\'' +
", visible='" + visible + '\'' +
", readOnly='" + readOnly + '\'' +
", editableOnlyAtInstall='" + editableOnlyAtInstall + '\'' +
", overridable='" + overridable + '\'' +
", showPropertyName='" + showPropertyName + '\'' +
", uiOnlyProperty='" + uiOnlyProperty + '\'' +
", incrementStep='" + incrementStep + '\'' +
", entriesEditable=" + entriesEditable +
", selectionCardinality='" + selectionCardinality + '\'' +
", propertyFileName='" + propertyFileName + '\'' +
", propertyFileType='" + propertyFileType + '\'' +
", copy='" + copy + '\'' +
", userGroupEntries='" + userGroupEntries + '\'' +
'}';
}
}