View Javadoc
1   
2   package org.miloss.fgsms.services.interfaces.automatedreportingservice;
3   
4   import java.io.Serializable;
5   import java.util.ArrayList;
6   import java.util.List;
7   import javax.xml.bind.annotation.XmlAccessType;
8   import javax.xml.bind.annotation.XmlAccessorType;
9   import javax.xml.bind.annotation.XmlElement;
10  import javax.xml.bind.annotation.XmlRootElement;
11  import javax.xml.bind.annotation.XmlSchemaType;
12  import javax.xml.bind.annotation.XmlType;
13  import java.util.Calendar;
14  import org.miloss.fgsms.services.interfaces.policyconfiguration.SLAAction;
15  
16  
17  /**
18   * <p>Java class for ReportDefinition complex type.
19   * 
20   * <p>The following schema fragment specifies the expected content contained within this class.
21   * 
22   * <pre>
23   * &lt;complexType name="ReportDefinition">
24   *   &lt;complexContent>
25   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
26   *       &lt;sequence>
27   *         &lt;element name="friendlyName" type="{http://www.w3.org/2001/XMLSchema}string"/>
28   *         &lt;element name="enabled" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
29   *         &lt;element name="jobId" type="{http://www.w3.org/2001/XMLSchema}string"/>
30   *         &lt;element name="owner" type="{http://www.w3.org/2001/XMLSchema}string"/>
31   *         &lt;element name="lastRanAt" type="{http://www.w3.org/2001/XMLSchema}dateTime"/>
32   *         &lt;element name="schedule" type="{urn:org:miloss:fgsms:services:interfaces:automatedReportingService}scheduleDefinition"/>
33   *         &lt;element name="notifications" type="{urn:org:miloss:fgsms:services:interfaces:policyConfiguration}SLAAction" maxOccurs="unbounded"/>
34   *         &lt;choice>
35   *           &lt;element ref="{urn:org:miloss:fgsms:services:interfaces:automatedReportingService}ExportCSVDataRequestMsg"/>
36   *           &lt;element ref="{urn:org:miloss:fgsms:services:interfaces:automatedReportingService}ExportDataRequestMsg"/>
37   *         &lt;/choice>
38   *         &lt;element name="additionalReaders" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
39   *       &lt;/sequence>
40   *     &lt;/restriction>
41   *   &lt;/complexContent>
42   * &lt;/complexType>
43   * </pre>
44   * 
45   * 
46   */
47  @XmlAccessorType(XmlAccessType.FIELD)
48  @XmlType(name = "ReportDefinition", propOrder = {
49      "friendlyName",
50      "enabled",
51      "jobId",
52      "owner",
53      "lastRanAt",
54      "schedule",
55      "notifications",
56      "exportCSVDataRequestMsg",
57      "exportDataRequestMsg",
58      "additionalReaders"
59  })
60  @XmlRootElement
61  public class ReportDefinition
62      implements Serializable
63  {
64  
65      private final static long serialVersionUID = 1L;
66      @XmlElement(required = true, nillable = true)
67      protected String friendlyName;
68      protected boolean enabled;
69      @XmlElement(required = false, nillable = true)
70      protected String jobId;
71      @XmlElement(required = false, nillable = true)
72      protected String owner;
73      @XmlElement(required = true, nillable = true)
74      @XmlSchemaType(name = "dateTime")
75      protected Calendar lastRanAt;
76      @XmlElement(required = true)
77      protected ScheduleDefinition schedule;
78      @XmlElement(required = false, nillable = true)
79      protected List<SLAAction> notifications;
80      @XmlElement(name = "ExportCSVDataRequestMsg", nillable = true)
81      protected ExportCSVDataRequestMsg exportCSVDataRequestMsg;
82      @XmlElement(name = "ExportDataRequestMsg", nillable = true)
83      protected ExportDataRequestMsg exportDataRequestMsg;
84      @XmlElement(required = false, nillable = true)
85      protected List<String> additionalReaders;
86  
87      /**
88       * Gets the value of the friendlyName property.
89       * 
90       * @return
91       *     possible object is
92       *     {@link String }
93       *     
94       */
95      public String getFriendlyName() {
96          return friendlyName;
97      }
98  
99      /**
100      * Sets the value of the friendlyName property.
101      * 
102      * @param value
103      *     allowed object is
104      *     {@link String }
105      *     
106      */
107     public void setFriendlyName(String value) {
108         this.friendlyName = value;
109     }
110 
111     public boolean isSetFriendlyName() {
112         return (this.friendlyName!= null);
113     }
114 
115     /**
116      * Gets the value of the enabled property.
117      * 
118      */
119     public boolean isEnabled() {
120         return enabled;
121     }
122 
123     /**
124      * Sets the value of the enabled property.
125      * 
126      */
127     public void setEnabled(boolean value) {
128         this.enabled = value;
129     }
130 
131     public boolean isSetEnabled() {
132         return true;
133     }
134 
135     /**
136      * Gets the value of the jobId property.
137      * 
138      * @return
139      *     possible object is
140      *     {@link String }
141      *     
142      */
143     public String getJobId() {
144         return jobId;
145     }
146 
147     /**
148      * Sets the value of the jobId property.
149      * 
150      * @param value
151      *     allowed object is
152      *     {@link String }
153      *     
154      */
155     public void setJobId(String value) {
156         this.jobId = value;
157     }
158 
159     public boolean isSetJobId() {
160         return (this.jobId!= null);
161     }
162 
163     /**
164      * Gets the value of the owner property.
165      * 
166      * @return
167      *     possible object is
168      *     {@link String }
169      *     
170      */
171     public String getOwner() {
172         return owner;
173     }
174 
175     /**
176      * Sets the value of the owner property.
177      * 
178      * @param value
179      *     allowed object is
180      *     {@link String }
181      *     
182      */
183     public void setOwner(String value) {
184         this.owner = value;
185     }
186 
187     public boolean isSetOwner() {
188         return (this.owner!= null);
189     }
190 
191     /**
192      * Gets the value of the lastRanAt property.
193      * 
194      * @return
195      *     possible object is
196      *     {@link Calendar }
197      *     
198      */
199     public Calendar getLastRanAt() {
200         return lastRanAt;
201     }
202 
203     /**
204      * Sets the value of the lastRanAt property.
205      * 
206      * @param value
207      *     allowed object is
208      *     {@link Calendar }
209      *     
210      */
211     public void setLastRanAt(Calendar value) {
212         this.lastRanAt = value;
213     }
214 
215     public boolean isSetLastRanAt() {
216         return (this.lastRanAt!= null);
217     }
218 
219     /**
220      * Gets the value of the schedule property.
221      * 
222      * @return
223      *     possible object is
224      *     {@link ScheduleDefinition }
225      *     
226      */
227     public ScheduleDefinition getSchedule() {
228         return schedule;
229     }
230 
231     /**
232      * Sets the value of the schedule property.
233      * 
234      * @param value
235      *     allowed object is
236      *     {@link ScheduleDefinition }
237      *     
238      */
239     public void setSchedule(ScheduleDefinition value) {
240         this.schedule = value;
241     }
242 
243     public boolean isSetSchedule() {
244         return (this.schedule!= null);
245     }
246 
247     /**
248      * Gets the value of the notifications property.
249      * 
250      * <p>
251      * This accessor method returns a reference to the live list,
252      * not a snapshot. Therefore any modification you make to the
253      * returned list will be present inside the JAXB object.
254      * This is why there is not a <CODE>set</CODE> method for the notifications property.
255      * 
256      * <p>
257      * For example, to add a new item, do as follows:
258      * <pre>
259      *    getNotifications().add(newItem);
260      * </pre>
261      * 
262      * 
263      * <p>
264      * Objects of the following type(s) are allowed in the list
265      * {@link SLAAction }
266      * 
267      * 
268      */
269     public List<SLAAction> getNotifications() {
270         if (notifications == null) {
271             notifications = new ArrayList<SLAAction>();
272         }
273         return this.notifications;
274     }
275 
276     public boolean isSetNotifications() {
277         return ((this.notifications!= null)&&(!this.notifications.isEmpty()));
278     }
279 
280     public void unsetNotifications() {
281         this.notifications = null;
282     }
283 
284     /**
285      * Gets the value of the exportCSVDataRequestMsg property.
286      * 
287      * @return
288      *     possible object is
289      *     {@link ExportCSVDataRequestMsg }
290      *     
291      */
292     public ExportCSVDataRequestMsg getExportCSVDataRequestMsg() {
293         return exportCSVDataRequestMsg;
294     }
295 
296     /**
297      * Sets the value of the exportCSVDataRequestMsg property.
298      * 
299      * @param value
300      *     allowed object is
301      *     {@link ExportCSVDataRequestMsg }
302      *     
303      */
304     public void setExportCSVDataRequestMsg(ExportCSVDataRequestMsg value) {
305         this.exportCSVDataRequestMsg = value;
306     }
307 
308     public boolean isSetExportCSVDataRequestMsg() {
309         return (this.exportCSVDataRequestMsg!= null);
310     }
311 
312     /**
313      * Gets the value of the exportDataRequestMsg property.
314      * 
315      * @return
316      *     possible object is
317      *     {@link ExportDataRequestMsg }
318      *     
319      */
320     public ExportDataRequestMsg getExportDataRequestMsg() {
321         return exportDataRequestMsg;
322     }
323 
324     /**
325      * Sets the value of the exportDataRequestMsg property.
326      * 
327      * @param value
328      *     allowed object is
329      *     {@link ExportDataRequestMsg }
330      *     
331      */
332     public void setExportDataRequestMsg(ExportDataRequestMsg value) {
333         this.exportDataRequestMsg = value;
334     }
335 
336     public boolean isSetExportDataRequestMsg() {
337         return (this.exportDataRequestMsg!= null);
338     }
339 
340     /**
341      * Gets the value of the additionalReaders property.
342      * 
343      * <p>
344      * This accessor method returns a reference to the live list,
345      * not a snapshot. Therefore any modification you make to the
346      * returned list will be present inside the JAXB object.
347      * This is why there is not a <CODE>set</CODE> method for the additionalReaders property.
348      * 
349      * <p>
350      * For example, to add a new item, do as follows:
351      * <pre>
352      *    getAdditionalReaders().add(newItem);
353      * </pre>
354      * 
355      * 
356      * <p>
357      * Objects of the following type(s) are allowed in the list
358      * {@link String }
359      * 
360      * 
361      */
362     public List<String> getAdditionalReaders() {
363         if (additionalReaders == null) {
364             additionalReaders = new ArrayList<String>();
365         }
366         return this.additionalReaders;
367     }
368 
369     public boolean isSetAdditionalReaders() {
370         return ((this.additionalReaders!= null)&&(!this.additionalReaders.isEmpty()));
371     }
372 
373     public void unsetAdditionalReaders() {
374         this.additionalReaders = null;
375     }
376 
377 }