001: /**
002: * Licensed to the Apache Software Foundation (ASF) under one
003: * or more contributor license agreements. See the NOTICE file
004: * distributed with this work for additional information
005: * regarding copyright ownership. The ASF licenses this file
006: * to you under the Apache License, Version 2.0 (the
007: * "License"); you may not use this file except in compliance
008: * with the License. You may obtain a copy of the License at
009: *
010: * http://www.apache.org/licenses/LICENSE-2.0
011: *
012: * Unless required by applicable law or agreed to in writing,
013: * software distributed under the License is distributed on an
014: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015: * KIND, either express or implied. See the License for the
016: * specific language governing permissions and limitations
017: * under the License.
018: */package org.apache.cxf.systest.jaxb.model;
019:
020: import javax.xml.bind.annotation.XmlAccessType;
021: import javax.xml.bind.annotation.XmlAccessorType;
022: import javax.xml.bind.annotation.XmlAttribute;
023: import javax.xml.bind.annotation.XmlElement;
024: import javax.xml.bind.annotation.XmlRootElement;
025: import javax.xml.bind.annotation.XmlType;
026:
027: import org.apache.commons.lang.builder.EqualsBuilder;
028: import org.apache.commons.lang.builder.ToStringBuilder;
029:
030: /**
031: * @author shade
032: */
033: @XmlType(name="widget",namespace="http://cxf.org.apache/model")
034: @XmlRootElement(name="widget",namespace="http://cxf.org.apache/model")
035: @XmlAccessorType(XmlAccessType.FIELD)
036: public abstract class Widget {
037:
038: @XmlAttribute(required=true)
039: private long id;
040:
041: @XmlElement(required=true,namespace="http://cxf.org.apache/model")
042: private String name;
043:
044: @XmlElement(required=false,namespace="http://cxf.org.apache/model")
045: private String serialNumber;
046:
047: @XmlElement(required=true,namespace="http://cxf.org.apache/model")
048: private boolean broken;
049:
050: /**
051: *
052: */
053: public Widget() {
054: super ();
055: }
056:
057: /**
058: * @param id
059: * @param name
060: * @param serialNumber
061: * @param broken
062: */
063: public Widget(long id, String name, String serialNumber,
064: boolean broken) {
065: super ();
066: this .id = id;
067: this .name = name;
068: this .serialNumber = serialNumber;
069: this .broken = broken;
070: }
071:
072: /**
073: * @return the id
074: */
075: public long getId() {
076: return id;
077: }
078:
079: /**
080: * @param id the id to set
081: */
082: public void setId(long id) {
083: this .id = id;
084: }
085:
086: /**
087: * @return the name
088: */
089: public String getName() {
090: return name;
091: }
092:
093: /**
094: * @param name the name to set
095: */
096: public void setName(String name) {
097: this .name = name;
098: }
099:
100: /**
101: * @return the serialNumber
102: */
103: public String getSerialNumber() {
104: return serialNumber;
105: }
106:
107: /**
108: * @param serialNumber the serialNumber to set
109: */
110: public void setSerialNumber(String serialNumber) {
111: this .serialNumber = serialNumber;
112: }
113:
114: /**
115: * @return the broken
116: */
117: public boolean isBroken() {
118: return broken;
119: }
120:
121: /**
122: * @param broken the broken to set
123: */
124: public void setBroken(boolean broken) {
125: this .broken = broken;
126: }
127:
128: /*
129: * (non-Javadoc)
130: *
131: * @see java.lang.Object#equals(java.lang.Object)
132: */
133: @Override
134: public boolean equals(Object obj) {
135: boolean ret = false;
136: if (obj instanceof Widget) {
137: Widget w = (Widget) obj;
138: ret = new EqualsBuilder().append(id, w.id).append(name,
139: w.name).append(serialNumber, w.serialNumber)
140: .append(broken, w.broken).isEquals();
141: }
142: return ret;
143: }
144:
145: @Override
146: public int hashCode() {
147: return super .hashCode();
148: }
149:
150: /*
151: * (non-Javadoc)
152: *
153: * @see java.lang.Object#toString()
154: */
155: @Override
156: public String toString() {
157: return new ToStringBuilder(this ).append("id", id).append(
158: "name", name).append("serialNumber", serialNumber)
159: .append("broken", broken).toString();
160: }
161:
162: }
|