001    
002    package org.oasis_open.docs.wsn.br_2;
003    
004    import java.util.ArrayList;
005    import java.util.List;
006    import javax.xml.bind.annotation.XmlAccessType;
007    import javax.xml.bind.annotation.XmlAccessorType;
008    import javax.xml.bind.annotation.XmlElement;
009    import javax.xml.bind.annotation.XmlRootElement;
010    import javax.xml.bind.annotation.XmlSchemaType;
011    import javax.xml.bind.annotation.XmlType;
012    import javax.xml.datatype.XMLGregorianCalendar;
013    import javax.xml.ws.wsaddressing.W3CEndpointReference;
014    import org.oasis_open.docs.wsn.b_2.TopicExpressionType;
015    
016    
017    /**
018     * <p>Java class for anonymous complex type.
019     * 
020     * <p>The following schema fragment specifies the expected content contained within this class.
021     * 
022     * <pre>
023     * &lt;complexType>
024     *   &lt;complexContent>
025     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
026     *       &lt;sequence>
027     *         &lt;element ref="{http://docs.oasis-open.org/wsn/br-2}PublisherReference" minOccurs="0"/>
028     *         &lt;element ref="{http://docs.oasis-open.org/wsn/br-2}Topic" maxOccurs="unbounded" minOccurs="0"/>
029     *         &lt;element ref="{http://docs.oasis-open.org/wsn/br-2}Demand"/>
030     *         &lt;element ref="{http://docs.oasis-open.org/wsn/br-2}CreationTime" minOccurs="0"/>
031     *       &lt;/sequence>
032     *     &lt;/restriction>
033     *   &lt;/complexContent>
034     * &lt;/complexType>
035     * </pre>
036     * 
037     * 
038     */
039    @XmlAccessorType(XmlAccessType.FIELD)
040    @XmlType(name = "", propOrder = {
041        "publisherReference",
042        "topic",
043        "demand",
044        "creationTime"
045    })
046    @XmlRootElement(name = "PublisherRegistrationRP")
047    public class PublisherRegistrationRP {
048    
049        @XmlElement(name = "PublisherReference")
050        protected W3CEndpointReference publisherReference;
051        @XmlElement(name = "Topic")
052        protected List<TopicExpressionType> topic;
053        @XmlElement(name = "Demand")
054        protected boolean demand;
055        @XmlElement(name = "CreationTime")
056        @XmlSchemaType(name = "dateTime")
057        protected XMLGregorianCalendar creationTime;
058    
059        /**
060         * Gets the value of the publisherReference property.
061         * 
062         * @return
063         *     possible object is
064         *     {@link W3CEndpointReference }
065         *     
066         */
067        public W3CEndpointReference getPublisherReference() {
068            return publisherReference;
069        }
070    
071        /**
072         * Sets the value of the publisherReference property.
073         * 
074         * @param value
075         *     allowed object is
076         *     {@link W3CEndpointReference }
077         *     
078         */
079        public void setPublisherReference(W3CEndpointReference value) {
080            this.publisherReference = value;
081        }
082    
083        /**
084         * Gets the value of the topic property.
085         * 
086         * <p>
087         * This accessor method returns a reference to the live list,
088         * not a snapshot. Therefore any modification you make to the
089         * returned list will be present inside the JAXB object.
090         * This is why there is not a <CODE>set</CODE> method for the topic property.
091         * 
092         * <p>
093         * For example, to add a new item, do as follows:
094         * <pre>
095         *    getTopic().add(newItem);
096         * </pre>
097         * 
098         * 
099         * <p>
100         * Objects of the following type(s) are allowed in the list
101         * {@link TopicExpressionType }
102         * 
103         * 
104         */
105        public List<TopicExpressionType> getTopic() {
106            if (topic == null) {
107                topic = new ArrayList<TopicExpressionType>();
108            }
109            return this.topic;
110        }
111    
112        /**
113         * Gets the value of the demand property.
114         * 
115         */
116        public boolean isDemand() {
117            return demand;
118        }
119    
120        /**
121         * Sets the value of the demand property.
122         * 
123         */
124        public void setDemand(boolean value) {
125            this.demand = value;
126        }
127    
128        /**
129         * Gets the value of the creationTime property.
130         * 
131         * @return
132         *     possible object is
133         *     {@link XMLGregorianCalendar }
134         *     
135         */
136        public XMLGregorianCalendar getCreationTime() {
137            return creationTime;
138        }
139    
140        /**
141         * Sets the value of the creationTime property.
142         * 
143         * @param value
144         *     allowed object is
145         *     {@link XMLGregorianCalendar }
146         *     
147         */
148        public void setCreationTime(XMLGregorianCalendar value) {
149            this.creationTime = value;
150        }
151    
152    }