/**
 * FindDeviceResponse.java
 *
 * This file was auto-generated from WSDL
 * by the Apache Axis WSDL2Java emitter.
 */

package com.insignia.oampAdapter.values;

public class FindDeviceResponse  implements java.io.Serializable {
    private java.lang.String capabilities;
    private java.lang.String deviceModelName;
    private java.lang.String deviceNumber;
    private java.lang.String externalDeviceId;
    private java.lang.String externalImageId;
    private java.lang.String imageVersion;
    private boolean isActivated;
    private java.lang.String manufacturerName;
    private java.lang.String status;

    public FindDeviceResponse() {
    }

    public java.lang.String getCapabilities() {
        return capabilities;
    }

    public void setCapabilities(java.lang.String capabilities) {
        this.capabilities = capabilities;
    }

    public java.lang.String getDeviceModelName() {
        return deviceModelName;
    }

    public void setDeviceModelName(java.lang.String deviceModelName) {
        this.deviceModelName = deviceModelName;
    }

    public java.lang.String getDeviceNumber() {
        return deviceNumber;
    }

    public void setDeviceNumber(java.lang.String deviceNumber) {
        this.deviceNumber = deviceNumber;
    }

    public java.lang.String getExternalDeviceId() {
        return externalDeviceId;
    }

    public void setExternalDeviceId(java.lang.String externalDeviceId) {
        this.externalDeviceId = externalDeviceId;
    }

    public java.lang.String getExternalImageId() {
        return externalImageId;
    }

    public void setExternalImageId(java.lang.String externalImageId) {
        this.externalImageId = externalImageId;
    }

    public java.lang.String getImageVersion() {
        return imageVersion;
    }

    public void setImageVersion(java.lang.String imageVersion) {
        this.imageVersion = imageVersion;
    }

    public boolean isIsActivated() {
        return isActivated;
    }

    public void setIsActivated(boolean isActivated) {
        this.isActivated = isActivated;
    }

    public java.lang.String getManufacturerName() {
        return manufacturerName;
    }

    public void setManufacturerName(java.lang.String manufacturerName) {
        this.manufacturerName = manufacturerName;
    }

    public java.lang.String getStatus() {
        return status;
    }

    public void setStatus(java.lang.String status) {
        this.status = status;
    }

    private java.lang.Object __equalsCalc = null;
    public synchronized boolean equals(java.lang.Object obj) {
        if (!(obj instanceof FindDeviceResponse)) return false;
        FindDeviceResponse other = (FindDeviceResponse) obj;
        if (obj == null) return false;
        if (this == obj) return true;
        if (__equalsCalc != null) {
            return (__equalsCalc == obj);
        }
        __equalsCalc = obj;
        boolean _equals;
        _equals = true && 
            ((this.capabilities==null && other.getCapabilities()==null) || 
             (this.capabilities!=null &&
              this.capabilities.equals(other.getCapabilities()))) &&
            ((this.deviceModelName==null && other.getDeviceModelName()==null) || 
             (this.deviceModelName!=null &&
              this.deviceModelName.equals(other.getDeviceModelName()))) &&
            ((this.deviceNumber==null && other.getDeviceNumber()==null) || 
             (this.deviceNumber!=null &&
              this.deviceNumber.equals(other.getDeviceNumber()))) &&
            ((this.externalDeviceId==null && other.getExternalDeviceId()==null) || 
             (this.externalDeviceId!=null &&
              this.externalDeviceId.equals(other.getExternalDeviceId()))) &&
            ((this.externalImageId==null && other.getExternalImageId()==null) || 
             (this.externalImageId!=null &&
              this.externalImageId.equals(other.getExternalImageId()))) &&
            ((this.imageVersion==null && other.getImageVersion()==null) || 
             (this.imageVersion!=null &&
              this.imageVersion.equals(other.getImageVersion()))) &&
            this.isActivated == other.isIsActivated() &&
            ((this.manufacturerName==null && other.getManufacturerName()==null) || 
             (this.manufacturerName!=null &&
              this.manufacturerName.equals(other.getManufacturerName()))) &&
            ((this.status==null && other.getStatus()==null) || 
             (this.status!=null &&
              this.status.equals(other.getStatus())));
        __equalsCalc = null;
        return _equals;
    }

    private boolean __hashCodeCalc = false;
    public synchronized int hashCode() {
        if (__hashCodeCalc) {
            return 0;
        }
        __hashCodeCalc = true;
        int _hashCode = 1;
        if (getCapabilities() != null) {
            _hashCode += getCapabilities().hashCode();
        }
        if (getDeviceModelName() != null) {
            _hashCode += getDeviceModelName().hashCode();
        }
        if (getDeviceNumber() != null) {
            _hashCode += getDeviceNumber().hashCode();
        }
        if (getExternalDeviceId() != null) {
            _hashCode += getExternalDeviceId().hashCode();
        }
        if (getExternalImageId() != null) {
            _hashCode += getExternalImageId().hashCode();
        }
        if (getImageVersion() != null) {
            _hashCode += getImageVersion().hashCode();
        }
        _hashCode += new Boolean(isIsActivated()).hashCode();
        if (getManufacturerName() != null) {
            _hashCode += getManufacturerName().hashCode();
        }
        if (getStatus() != null) {
            _hashCode += getStatus().hashCode();
        }
        __hashCodeCalc = false;
        return _hashCode;
    }

    // Type metadata
    private static org.apache.axis.description.TypeDesc typeDesc =
        new org.apache.axis.description.TypeDesc(FindDeviceResponse.class);

    static {
        typeDesc.setXmlType(new javax.xml.namespace.QName("http://values.oampAdapter.insignia.com", "FindDeviceResponse"));
        org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("capabilities");
        elemField.setXmlName(new javax.xml.namespace.QName("", "capabilities"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("deviceModelName");
        elemField.setXmlName(new javax.xml.namespace.QName("", "deviceModelName"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("deviceNumber");
        elemField.setXmlName(new javax.xml.namespace.QName("", "deviceNumber"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("externalDeviceId");
        elemField.setXmlName(new javax.xml.namespace.QName("", "externalDeviceId"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("externalImageId");
        elemField.setXmlName(new javax.xml.namespace.QName("", "externalImageId"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("imageVersion");
        elemField.setXmlName(new javax.xml.namespace.QName("", "imageVersion"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("isActivated");
        elemField.setXmlName(new javax.xml.namespace.QName("", "isActivated"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "boolean"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("manufacturerName");
        elemField.setXmlName(new javax.xml.namespace.QName("", "manufacturerName"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
        elemField = new org.apache.axis.description.ElementDesc();
        elemField.setFieldName("status");
        elemField.setXmlName(new javax.xml.namespace.QName("", "status"));
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
        typeDesc.addFieldDesc(elemField);
    }

    /**
     * Return type metadata object
     */
    public static org.apache.axis.description.TypeDesc getTypeDesc() {
        return typeDesc;
    }

    /**
     * Get Custom Serializer
     */
    public static org.apache.axis.encoding.Serializer getSerializer(
           java.lang.String mechType, 
           java.lang.Class _javaType,  
           javax.xml.namespace.QName _xmlType) {
        return 
          new  org.apache.axis.encoding.ser.BeanSerializer(
            _javaType, _xmlType, typeDesc);
    }

    /**
     * Get Custom Deserializer
     */
    public static org.apache.axis.encoding.Deserializer getDeserializer(
           java.lang.String mechType, 
           java.lang.Class _javaType,  
           javax.xml.namespace.QName _xmlType) {
        return 
          new  org.apache.axis.encoding.ser.BeanDeserializer(
            _javaType, _xmlType, typeDesc);
    }

}
