001// 002// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.0 003// See <a href="https://javaee.github.io/jaxb-v2/">https://javaee.github.io/jaxb-v2/</a> 004// Any modifications to this file will be lost upon recompilation of the source schema. 005// Generated on: 2018.12.10 at 03:02:30 PM PST 006// 007 008 009package org.microbean.jpa.jaxb; 010 011import java.util.ArrayList; 012import java.util.List; 013import javax.xml.bind.annotation.XmlAccessType; 014import javax.xml.bind.annotation.XmlAccessorType; 015import javax.xml.bind.annotation.XmlAttribute; 016import javax.xml.bind.annotation.XmlElement; 017import javax.xml.bind.annotation.XmlType; 018 019 020/** 021 * 022 * 023 * @Target({METHOD, FIELD}) @Retention(RUNTIME) 024 * public @interface JoinTable { 025 * String name() default ""; 026 * String catalog() default ""; 027 * String schema() default ""; 028 * JoinColumn[] joinColumns() default {}; 029 * JoinColumn[] inverseJoinColumns() default {}; 030 * UniqueConstraint[] uniqueConstraints() default {}; 031 * Index[] indexes() default {}; 032 * } 033 * 034 * 035 * 036 * <p>Java class for join-table complex type. 037 * 038 * <p>The following schema fragment specifies the expected content contained within this class. 039 * 040 * <pre> 041 * <complexType name="join-table"> 042 * <complexContent> 043 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> 044 * <sequence> 045 * <sequence> 046 * <element name="join-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}join-column" maxOccurs="unbounded" minOccurs="0"/> 047 * <element name="foreign-key" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}foreign-key" minOccurs="0"/> 048 * </sequence> 049 * <sequence> 050 * <element name="inverse-join-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}join-column" maxOccurs="unbounded" minOccurs="0"/> 051 * <element name="inverse-foreign-key" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}foreign-key" minOccurs="0"/> 052 * </sequence> 053 * <element name="unique-constraint" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}unique-constraint" maxOccurs="unbounded" minOccurs="0"/> 054 * <element name="index" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}index" maxOccurs="unbounded" minOccurs="0"/> 055 * </sequence> 056 * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" /> 057 * <attribute name="catalog" type="{http://www.w3.org/2001/XMLSchema}string" /> 058 * <attribute name="schema" type="{http://www.w3.org/2001/XMLSchema}string" /> 059 * </restriction> 060 * </complexContent> 061 * </complexType> 062 * </pre> 063 * 064 * 065 */ 066@XmlAccessorType(XmlAccessType.FIELD) 067@XmlType(name = "join-table", propOrder = { 068 "joinColumn", 069 "foreignKey", 070 "inverseJoinColumn", 071 "inverseForeignKey", 072 "uniqueConstraint", 073 "index" 074}) 075public class JoinTable { 076 077 @XmlElement(name = "join-column") 078 protected List<JoinColumn> joinColumn; 079 @XmlElement(name = "foreign-key") 080 protected ForeignKey foreignKey; 081 @XmlElement(name = "inverse-join-column") 082 protected List<JoinColumn> inverseJoinColumn; 083 @XmlElement(name = "inverse-foreign-key") 084 protected ForeignKey inverseForeignKey; 085 @XmlElement(name = "unique-constraint") 086 protected List<UniqueConstraint> uniqueConstraint; 087 protected List<Index> index; 088 @XmlAttribute(name = "name") 089 protected String name; 090 @XmlAttribute(name = "catalog") 091 protected String catalog; 092 @XmlAttribute(name = "schema") 093 protected String schema; 094 095 /** 096 * Gets the value of the joinColumn property. 097 * 098 * <p> 099 * This accessor method returns a reference to the live list, 100 * not a snapshot. Therefore any modification you make to the 101 * returned list will be present inside the JAXB object. 102 * This is why there is not a <CODE>set</CODE> method for the joinColumn property. 103 * 104 * <p> 105 * For example, to add a new item, do as follows: 106 * <pre> 107 * getJoinColumn().add(newItem); 108 * </pre> 109 * 110 * 111 * <p> 112 * Objects of the following type(s) are allowed in the list 113 * {@link JoinColumn } 114 * 115 * 116 */ 117 public List<JoinColumn> getJoinColumn() { 118 if (joinColumn == null) { 119 joinColumn = new ArrayList<JoinColumn>(); 120 } 121 return this.joinColumn; 122 } 123 124 /** 125 * Gets the value of the foreignKey property. 126 * 127 * @return 128 * possible object is 129 * {@link ForeignKey } 130 * 131 */ 132 public ForeignKey getForeignKey() { 133 return foreignKey; 134 } 135 136 /** 137 * Sets the value of the foreignKey property. 138 * 139 * @param value 140 * allowed object is 141 * {@link ForeignKey } 142 * 143 */ 144 public void setForeignKey(ForeignKey value) { 145 this.foreignKey = value; 146 } 147 148 /** 149 * Gets the value of the inverseJoinColumn property. 150 * 151 * <p> 152 * This accessor method returns a reference to the live list, 153 * not a snapshot. Therefore any modification you make to the 154 * returned list will be present inside the JAXB object. 155 * This is why there is not a <CODE>set</CODE> method for the inverseJoinColumn property. 156 * 157 * <p> 158 * For example, to add a new item, do as follows: 159 * <pre> 160 * getInverseJoinColumn().add(newItem); 161 * </pre> 162 * 163 * 164 * <p> 165 * Objects of the following type(s) are allowed in the list 166 * {@link JoinColumn } 167 * 168 * 169 */ 170 public List<JoinColumn> getInverseJoinColumn() { 171 if (inverseJoinColumn == null) { 172 inverseJoinColumn = new ArrayList<JoinColumn>(); 173 } 174 return this.inverseJoinColumn; 175 } 176 177 /** 178 * Gets the value of the inverseForeignKey property. 179 * 180 * @return 181 * possible object is 182 * {@link ForeignKey } 183 * 184 */ 185 public ForeignKey getInverseForeignKey() { 186 return inverseForeignKey; 187 } 188 189 /** 190 * Sets the value of the inverseForeignKey property. 191 * 192 * @param value 193 * allowed object is 194 * {@link ForeignKey } 195 * 196 */ 197 public void setInverseForeignKey(ForeignKey value) { 198 this.inverseForeignKey = value; 199 } 200 201 /** 202 * Gets the value of the uniqueConstraint property. 203 * 204 * <p> 205 * This accessor method returns a reference to the live list, 206 * not a snapshot. Therefore any modification you make to the 207 * returned list will be present inside the JAXB object. 208 * This is why there is not a <CODE>set</CODE> method for the uniqueConstraint property. 209 * 210 * <p> 211 * For example, to add a new item, do as follows: 212 * <pre> 213 * getUniqueConstraint().add(newItem); 214 * </pre> 215 * 216 * 217 * <p> 218 * Objects of the following type(s) are allowed in the list 219 * {@link UniqueConstraint } 220 * 221 * 222 */ 223 public List<UniqueConstraint> getUniqueConstraint() { 224 if (uniqueConstraint == null) { 225 uniqueConstraint = new ArrayList<UniqueConstraint>(); 226 } 227 return this.uniqueConstraint; 228 } 229 230 /** 231 * Gets the value of the index property. 232 * 233 * <p> 234 * This accessor method returns a reference to the live list, 235 * not a snapshot. Therefore any modification you make to the 236 * returned list will be present inside the JAXB object. 237 * This is why there is not a <CODE>set</CODE> method for the index property. 238 * 239 * <p> 240 * For example, to add a new item, do as follows: 241 * <pre> 242 * getIndex().add(newItem); 243 * </pre> 244 * 245 * 246 * <p> 247 * Objects of the following type(s) are allowed in the list 248 * {@link Index } 249 * 250 * 251 */ 252 public List<Index> getIndex() { 253 if (index == null) { 254 index = new ArrayList<Index>(); 255 } 256 return this.index; 257 } 258 259 /** 260 * Gets the value of the name property. 261 * 262 * @return 263 * possible object is 264 * {@link String } 265 * 266 */ 267 public String getName() { 268 return name; 269 } 270 271 /** 272 * Sets the value of the name property. 273 * 274 * @param value 275 * allowed object is 276 * {@link String } 277 * 278 */ 279 public void setName(String value) { 280 this.name = value; 281 } 282 283 /** 284 * Gets the value of the catalog property. 285 * 286 * @return 287 * possible object is 288 * {@link String } 289 * 290 */ 291 public String getCatalog() { 292 return catalog; 293 } 294 295 /** 296 * Sets the value of the catalog property. 297 * 298 * @param value 299 * allowed object is 300 * {@link String } 301 * 302 */ 303 public void setCatalog(String value) { 304 this.catalog = value; 305 } 306 307 /** 308 * Gets the value of the schema property. 309 * 310 * @return 311 * possible object is 312 * {@link String } 313 * 314 */ 315 public String getSchema() { 316 return schema; 317 } 318 319 /** 320 * Sets the value of the schema property. 321 * 322 * @param value 323 * allowed object is 324 * {@link String } 325 * 326 */ 327 public void setSchema(String value) { 328 this.schema = value; 329 } 330 331}