1 /* 2 * Copyright 2001-2008 The Apache Software Foundation. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 * 16 */ 17 18 package org.uddi.repl_v3; 19 20 import java.io.Serializable; 21 import java.math.BigInteger; 22 import java.util.ArrayList; 23 import java.util.List; 24 import javax.xml.bind.annotation.XmlAccessType; 25 import javax.xml.bind.annotation.XmlAccessorType; 26 import javax.xml.bind.annotation.XmlElement; 27 import javax.xml.bind.annotation.XmlRootElement; 28 import javax.xml.bind.annotation.XmlSeeAlso; 29 import javax.xml.bind.annotation.XmlTransient; 30 import javax.xml.bind.annotation.XmlType; 31 import org.uddi.api_v3.Contact; 32 import org.w3._2000._09.xmldsig_.SignatureType; 33 34 35 /** 36 * <p>Java class for anonymous complex type. 37 * 38 * <p>The following schema fragment specifies the expected content contained within this class. 39 * 40 * <pre> 41 * <complexType> 42 * <complexContent> 43 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> 44 * <sequence> 45 * <element name="serialNumber" type="{urn:uddi-org:repl_v3}USN_type"/> 46 * <element name="timeOfConfigurationUpdate" type="{urn:uddi-org:repl_v3}timeOfConfigurationUpdate_type"/> 47 * <element name="registryContact"> 48 * <complexType> 49 * <complexContent> 50 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> 51 * <sequence> 52 * <element ref="{urn:uddi-org:api_v3}contact"/> 53 * </sequence> 54 * </restriction> 55 * </complexContent> 56 * </complexType> 57 * </element> 58 * <element ref="{urn:uddi-org:repl_v3}operator" maxOccurs="unbounded" minOccurs="0"/> 59 * <element ref="{urn:uddi-org:repl_v3}communicationGraph" minOccurs="0"/> 60 * <element name="maximumTimeToSyncRegistry" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/> 61 * <element name="maximumTimeToGetChanges" type="{http://www.w3.org/2001/XMLSchema}integer"/> 62 * <element ref="{http://www.w3.org/2000/09/xmldsig#}Signature" maxOccurs="unbounded" minOccurs="0"/> 63 * </sequence> 64 * </restriction> 65 * </complexContent> 66 * </complexType> 67 * </pre> 68 * 69 * 70 */ 71 @XmlAccessorType(XmlAccessType.FIELD) 72 @XmlType(name = "", propOrder = { 73 "serialNumber", 74 "timeOfConfigurationUpdate", 75 "registryContact", 76 "operator", 77 "communicationGraph", 78 "maximumTimeToSyncRegistry", 79 "maximumTimeToGetChanges", 80 "signature" 81 }) 82 @XmlSeeAlso({ 83 org.uddi.api_v3.ObjectFactory.class, 84 org.uddi.custody_v3.ObjectFactory.class, 85 org.apache.juddi.ObjectFactory.class, 86 org.apache.juddi.api_v3.ObjectFactory.class, 87 org.uddi.repl_v3.ObjectFactory.class, 88 org.w3._2000._09.xmldsig_.ObjectFactory.class 89 90 } 91 ) 92 @XmlRootElement(name = "replicationConfiguration") 93 public class ReplicationConfiguration implements Serializable{ 94 @XmlTransient 95 private static final long serialVersionUID = 621260248291581845L; 96 protected long serialNumber; 97 @XmlElement(required = true) 98 protected String timeOfConfigurationUpdate; 99 @XmlElement(required = true) 100 protected ReplicationConfiguration.RegistryContact registryContact; 101 protected List<Operator> operator; 102 protected CommunicationGraph communicationGraph; 103 protected BigInteger maximumTimeToSyncRegistry; 104 @XmlElement(required = true) 105 protected BigInteger maximumTimeToGetChanges; 106 @XmlElement(name = "Signature", namespace = "http://www.w3.org/2000/09/xmldsig#") 107 protected List<SignatureType> signature; 108 109 /** 110 * Gets the value of the serialNumber property. 111 * 112 */ 113 public long getSerialNumber() { 114 return serialNumber; 115 } 116 117 /** 118 * Sets the value of the serialNumber property. 119 * 120 */ 121 public void setSerialNumber(long value) { 122 this.serialNumber = value; 123 } 124 125 /** 126 * Gets the value of the timeOfConfigurationUpdate property. 127 * 128 * @return 129 * possible object is 130 * {@link String } 131 * 132 */ 133 public String getTimeOfConfigurationUpdate() { 134 return timeOfConfigurationUpdate; 135 } 136 137 /** 138 * Sets the value of the timeOfConfigurationUpdate property. 139 * 140 * @param value 141 * allowed object is 142 * {@link String } 143 * 144 */ 145 public void setTimeOfConfigurationUpdate(String value) { 146 this.timeOfConfigurationUpdate = value; 147 } 148 149 /** 150 * Gets the value of the registryContact property. 151 * 152 * @return 153 * possible object is 154 * {@link ReplicationConfiguration.RegistryContact } 155 * 156 */ 157 public ReplicationConfiguration.RegistryContact getRegistryContact() { 158 return registryContact; 159 } 160 161 /** 162 * Sets the value of the registryContact property. 163 * 164 * @param value 165 * allowed object is 166 * {@link ReplicationConfiguration.RegistryContact } 167 * 168 */ 169 public void setRegistryContact(ReplicationConfiguration.RegistryContact value) { 170 this.registryContact = value; 171 } 172 173 /** 174 * Gets the value of the operator property. 175 * 176 * <p> 177 * This accessor method returns a reference to the live list, 178 * not a snapshot. Therefore any modification you make to the 179 * returned list will be present inside the JAXB object. 180 * This is why there is not a <CODE>set</CODE> method for the operator property. 181 * 182 * <p> 183 * For example, to add a new item, do as follows: 184 * <pre> 185 * getOperator().add(newItem); 186 * </pre> 187 * 188 * 189 * <p> 190 * Objects of the following type(s) are allowed in the list 191 * {@link Operator } 192 * 193 * 194 */ 195 public List<Operator> getOperator() { 196 if (operator == null) { 197 operator = new ArrayList<Operator>(); 198 } 199 return this.operator; 200 } 201 202 /** 203 * Gets the value of the communicationGraph property. 204 * 205 * @return 206 * possible object is 207 * {@link CommunicationGraph } 208 * 209 */ 210 public CommunicationGraph getCommunicationGraph() { 211 return communicationGraph; 212 } 213 214 /** 215 * Sets the value of the communicationGraph property. 216 * 217 * @param value 218 * allowed object is 219 * {@link CommunicationGraph } 220 * 221 */ 222 public void setCommunicationGraph(CommunicationGraph value) { 223 this.communicationGraph = value; 224 } 225 226 /** 227 * The element, maximumTimeToSyncRegistry, allows for the specification of when (in hours) a change made at any single node in the Registry is expected to be visible at all nodes within the registry. The element, maximumTimeToGetChanges, allows for the specification of the maximum amount of time (in hours) that an individual node may wait to request changes. Use of this element is determined by registry policy as detailed in Section 9.6.4 Replication Policies. 228 229 230 * Gets the value of the maximumTimeToSyncRegistry property. 231 * 232 * @return 233 * possible object is 234 * {@link BigInteger } 235 * 236 */ 237 public BigInteger getMaximumTimeToSyncRegistry() { 238 return maximumTimeToSyncRegistry; 239 } 240 241 /** 242 * Sets the value of the maximumTimeToSyncRegistry property. 243 * 244 * @param value 245 * allowed object is 246 * {@link BigInteger } 247 * 248 */ 249 public void setMaximumTimeToSyncRegistry(BigInteger value) { 250 this.maximumTimeToSyncRegistry = value; 251 } 252 253 /** 254 * The element, maximumTimeToGetChanges, allows for the specification of the maximum amount of time (in hours) that an individual node may wait to request changes. Nodes MUST perform a get_changeRecords replication message within the time frame defined by the value of the maximumTimeToGetChanges element defined within the Replication Configuration Structure. Thus, change data can always be propagated throughout the UDDI registry within a finite amount of time, while at the same time changes will often propagate quickly. Use of this element is determined by registry policy as detailed in Section 9.6.4 Replication Policies. 255 256 257 * Gets the value of the maximumTimeToGetChanges property. 258 * 259 * @return 260 * possible object is 261 * {@link BigInteger } 262 * 263 */ 264 public BigInteger getMaximumTimeToGetChanges() { 265 return maximumTimeToGetChanges; 266 } 267 268 /** 269 * Sets the value of the maximumTimeToGetChanges property. 270 * 271 * @param value 272 * allowed object is 273 * {@link BigInteger } 274 * 275 */ 276 public void setMaximumTimeToGetChanges(BigInteger value) { 277 this.maximumTimeToGetChanges = value; 278 } 279 280 /** 281 * Gets the value of the signature property. 282 * 283 * <p> 284 * This accessor method returns a reference to the live list, 285 * not a snapshot. Therefore any modification you make to the 286 * returned list will be present inside the JAXB object. 287 * This is why there is not a <CODE>set</CODE> method for the signature property. 288 * 289 * <p> 290 * For example, to add a new item, do as follows: 291 * <pre> 292 * getSignature().add(newItem); 293 * </pre> 294 * 295 * 296 * <p> 297 * Objects of the following type(s) are allowed in the list 298 * {@link SignatureType } 299 * 300 * 301 */ 302 public List<SignatureType> getSignature() { 303 if (signature == null) { 304 signature = new ArrayList<SignatureType>(); 305 } 306 return this.signature; 307 } 308 309 310 /** 311 * <p>Java class for anonymous complex type. 312 * 313 * <p>The following schema fragment specifies the expected content contained within this class. 314 * 315 * <pre> 316 * <complexType> 317 * <complexContent> 318 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> 319 * <sequence> 320 * <element ref="{urn:uddi-org:api_v3}contact"/> 321 * </sequence> 322 * </restriction> 323 * </complexContent> 324 * </complexType> 325 * </pre> 326 * 327 * 328 */ 329 @XmlAccessorType(XmlAccessType.FIELD) 330 @XmlType(name = "", namespace="urn:uddi-org:repl_v3", propOrder = { 331 "contact" 332 }) 333 public static class RegistryContact { 334 335 @XmlElement(namespace = "urn:uddi-org:api_v3", required = true) 336 protected Contact contact; 337 338 /** 339 * Gets the value of the contact property. 340 * 341 * @return 342 * possible object is 343 * {@link Contact } 344 * 345 */ 346 public Contact getContact() { 347 return contact; 348 } 349 350 /** 351 * Sets the value of the contact property. 352 * 353 * @param value 354 * allowed object is 355 * {@link Contact } 356 * 357 */ 358 public void setContact(Contact value) { 359 this.contact = value; 360 } 361 362 } 363 364 }