1 | // |
2 | // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-833 |
3 | // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> |
4 | // Any modifications to this file will be lost upon recompilation of the source schema. |
5 | // Generated on: 2010.02.03 at 01:25:12 AM UTC |
6 | // |
7 | |
8 | |
9 | package org.jomc.model; |
10 | |
11 | import java.util.ArrayList; |
12 | import java.util.Iterator; |
13 | import java.util.List; |
14 | import javax.annotation.Generated; |
15 | import javax.xml.bind.annotation.XmlAccessType; |
16 | import javax.xml.bind.annotation.XmlAccessorType; |
17 | import javax.xml.bind.annotation.XmlType; |
18 | |
19 | |
20 | /** |
21 | * List of messages. |
22 | * |
23 | * <p>Java class for Messages complex type. |
24 | * |
25 | * <p>The following schema fragment specifies the expected content contained within this class. |
26 | * |
27 | * <pre> |
28 | * <complexType name="Messages"> |
29 | * <complexContent> |
30 | * <extension base="{http://jomc.org/model}ModelObject"> |
31 | * <sequence> |
32 | * <element ref="{http://jomc.org/model}message" maxOccurs="unbounded" minOccurs="0"/> |
33 | * <element name="reference" type="{http://jomc.org/model}MessageReference" maxOccurs="unbounded" minOccurs="0"/> |
34 | * </sequence> |
35 | * </extension> |
36 | * </complexContent> |
37 | * </complexType> |
38 | * </pre> |
39 | * |
40 | * |
41 | */ |
42 | @XmlAccessorType(XmlAccessType.FIELD) |
43 | @XmlType(name = "Messages", propOrder = { |
44 | "message", |
45 | "reference" |
46 | }) |
47 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
48 | public class Messages |
49 | extends ModelObject |
50 | implements Cloneable |
51 | { |
52 | |
53 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
54 | protected List<Message> message; |
55 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
56 | protected List<MessageReference> reference; |
57 | |
58 | /** |
59 | * Creates a new {@code Messages} instance. |
60 | * |
61 | */ |
62 | public Messages() { |
63 | // CC-XJC Version 1.2 Build 2009-11-15T21:50:02+0000 |
64 | super(); |
65 | } |
66 | |
67 | /** |
68 | * Creates a new {@code Messages} instance by deeply copying a given {@code Messages} instance. |
69 | * |
70 | * |
71 | * @param o |
72 | * The instance to copy. |
73 | * @throws NullPointerException |
74 | * if {@code o} is {@code null}. |
75 | */ |
76 | public Messages(final Messages o) { |
77 | // CC-XJC Version 1.2 Build 2009-11-15T21:50:02+0000 |
78 | super(o); |
79 | if (o == null) { |
80 | throw new NullPointerException("Cannot create a copy of 'Messages' from 'null'."); |
81 | } |
82 | // 'Message' collection. |
83 | copyMessage(o.getMessage(), getMessage()); |
84 | // 'Reference' collection. |
85 | copyReference(o.getReference(), getReference()); |
86 | } |
87 | |
88 | /** |
89 | * Gets the value of the message property. |
90 | * |
91 | * <p> |
92 | * This accessor method returns a reference to the live list, |
93 | * not a snapshot. Therefore any modification you make to the |
94 | * returned list will be present inside the JAXB object. |
95 | * This is why there is not a <CODE>set</CODE> method for the message property. |
96 | * |
97 | * <p> |
98 | * For example, to add a new item, do as follows: |
99 | * <pre> |
100 | * getMessage().add(newItem); |
101 | * </pre> |
102 | * |
103 | * |
104 | * <p> |
105 | * Objects of the following type(s) are allowed in the list |
106 | * {@link Message } |
107 | * |
108 | * |
109 | */ |
110 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
111 | public List<Message> getMessage() { |
112 | if (message == null) { |
113 | message = new ArrayList<Message>(); |
114 | } |
115 | return this.message; |
116 | } |
117 | |
118 | /** |
119 | * Gets the value of the reference property. |
120 | * |
121 | * <p> |
122 | * This accessor method returns a reference to the live list, |
123 | * not a snapshot. Therefore any modification you make to the |
124 | * returned list will be present inside the JAXB object. |
125 | * This is why there is not a <CODE>set</CODE> method for the reference property. |
126 | * |
127 | * <p> |
128 | * For example, to add a new item, do as follows: |
129 | * <pre> |
130 | * getReference().add(newItem); |
131 | * </pre> |
132 | * |
133 | * |
134 | * <p> |
135 | * Objects of the following type(s) are allowed in the list |
136 | * {@link MessageReference } |
137 | * |
138 | * |
139 | */ |
140 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
141 | public List<MessageReference> getReference() { |
142 | if (reference == null) { |
143 | reference = new ArrayList<MessageReference>(); |
144 | } |
145 | return this.reference; |
146 | } |
147 | |
148 | /** |
149 | * Copies all values of property {@code Message} deeply. |
150 | * |
151 | * @param target |
152 | * The target to copy {@code source} to. |
153 | * @param source |
154 | * The source to copy from. |
155 | * @throws NullPointerException |
156 | * if {@code source} or {@code target} is {@code null}. |
157 | */ |
158 | @SuppressWarnings("unchecked") |
159 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
160 | private static void copyMessage(final List<Message> source, final List<Message> target) { |
161 | // CC-XJC Version 1.2 Build 2009-11-15T21:50:02+0000 |
162 | if (!source.isEmpty()) { |
163 | for (Iterator it = source.iterator(); it.hasNext(); ) { |
164 | final Object next = it.next(); |
165 | if (next instanceof Message) { |
166 | // CClassInfo: org.jomc.model.Message |
167 | target.add(((Message) next).clone()); |
168 | continue; |
169 | } |
170 | // Please report this at https://apps.sourceforge.net/mantisbt/ccxjc/ |
171 | throw new AssertionError((("Unexpected instance '"+ next)+"' for property 'Message' of class 'org.jomc.model.Messages'.")); |
172 | } |
173 | } |
174 | } |
175 | |
176 | /** |
177 | * Copies all values of property {@code Reference} deeply. |
178 | * |
179 | * @param target |
180 | * The target to copy {@code source} to. |
181 | * @param source |
182 | * The source to copy from. |
183 | * @throws NullPointerException |
184 | * if {@code source} or {@code target} is {@code null}. |
185 | */ |
186 | @SuppressWarnings("unchecked") |
187 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
188 | private static void copyReference(final List<MessageReference> source, final List<MessageReference> target) { |
189 | // CC-XJC Version 1.2 Build 2009-11-15T21:50:02+0000 |
190 | if (!source.isEmpty()) { |
191 | for (Iterator it = source.iterator(); it.hasNext(); ) { |
192 | final Object next = it.next(); |
193 | if (next instanceof MessageReference) { |
194 | // CClassInfo: org.jomc.model.MessageReference |
195 | target.add(((MessageReference) next).clone()); |
196 | continue; |
197 | } |
198 | // Please report this at https://apps.sourceforge.net/mantisbt/ccxjc/ |
199 | throw new AssertionError((("Unexpected instance '"+ next)+"' for property 'Reference' of class 'org.jomc.model.Messages'.")); |
200 | } |
201 | } |
202 | } |
203 | |
204 | /** |
205 | * Creates and returns a deep copy of this object. |
206 | * |
207 | * |
208 | * @return |
209 | * A deep copy of this object. |
210 | */ |
211 | @Override |
212 | @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-02-03T01:25:12+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833") |
213 | public Messages clone() { |
214 | // CC-XJC Version 1.2 Build 2009-11-15T21:50:02+0000 |
215 | return new Messages(this); |
216 | } |
217 | |
218 | /** |
219 | * Gets a message for a given name from the list of messages. |
220 | * |
221 | * @param name The name of the message to return. |
222 | * |
223 | * @return The message with name {@code name} from the list or {@code null}, |
224 | * if no message matching {@code name} is found. |
225 | * |
226 | * @throws NullPointerException if {@code name} is {@code null}. |
227 | * |
228 | * @see #getMessage() |
229 | */ |
230 | public Message getMessage( final String name ) |
231 | { |
232 | if ( name == null ) |
233 | { |
234 | throw new NullPointerException( "name" ); |
235 | } |
236 | |
237 | for ( Message m : this.getMessage() ) |
238 | { |
239 | if ( name.equals( m.getName() ) ) |
240 | { |
241 | return m; |
242 | } |
243 | } |
244 | |
245 | return null; |
246 | } |
247 | |
248 | /** |
249 | * Gets a message reference for a given name from the list of references. |
250 | * |
251 | * @param name The name of the message reference to return. |
252 | * |
253 | * @return The message reference with name {@code name} from the list or |
254 | * {@code null}, if no message reference matching {@code name} is found. |
255 | * |
256 | * @throws NullPointerException if {@code name} is {@code null}. |
257 | * |
258 | * @see #getReference() |
259 | */ |
260 | public MessageReference getReference( final String name ) |
261 | { |
262 | if ( name == null ) |
263 | { |
264 | throw new NullPointerException( "name" ); |
265 | } |
266 | |
267 | for ( MessageReference r : this.getReference() ) |
268 | { |
269 | if ( name.equals( r.getName() ) ) |
270 | { |
271 | return r; |
272 | } |
273 | } |
274 | |
275 | return null; |
276 | } |
277 | |
278 | |
279 | } |