001: /**
002: * Licensed to the Apache Software Foundation (ASF) under one or more
003: * contributor license agreements. See the NOTICE file distributed with
004: * this work for additional information regarding copyright ownership.
005: * The ASF licenses this file to You under the Apache License, Version 2.0
006: * (the "License"); you may not use this file except in compliance with
007: * the License. You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */package org.apache.openejb.jee.jpa;
017:
018: import javax.xml.bind.annotation.XmlAccessType;
019: import javax.xml.bind.annotation.XmlAccessorType;
020: import javax.xml.bind.annotation.XmlAttribute;
021: import javax.xml.bind.annotation.XmlType;
022:
023: /**
024: *
025: *
026: * @Target({TYPE}) @Retention(RUNTIME)
027: * public @interface DiscriminatorColumn {
028: * String name() default "DTYPE";
029: * DiscriminatorType discriminatorType() default STRING;
030: * String columnDefinition() default "";
031: * int length() default 31;
032: * }
033: *
034: *
035: *
036: * <p>Java class for discriminator-column complex type.
037: *
038: * <p>The following schema fragment specifies the expected content contained within this class.
039: *
040: * <pre>
041: * <complexType name="discriminator-column">
042: * <complexContent>
043: * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
044: * <attribute name="column-definition" type="{http://www.w3.org/2001/XMLSchema}string" />
045: * <attribute name="discriminator-type" type="{http://java.sun.com/xml/ns/persistence/orm}discriminator-type" />
046: * <attribute name="length" type="{http://www.w3.org/2001/XMLSchema}int" />
047: * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
048: * </restriction>
049: * </complexContent>
050: * </complexType>
051: * </pre>
052: *
053: *
054: */
055: @XmlAccessorType(XmlAccessType.FIELD)
056: @XmlType(name="discriminator-column")
057: public class DiscriminatorColumn {
058:
059: @XmlAttribute(name="column-definition")
060: protected String columnDefinition;
061: @XmlAttribute(name="discriminator-type")
062: protected DiscriminatorType discriminatorType;
063: @XmlAttribute
064: protected Integer length;
065: @XmlAttribute
066: protected String name;
067:
068: /**
069: * Gets the value of the columnDefinition property.
070: *
071: * @return
072: * possible object is
073: * {@link String }
074: *
075: */
076: public String getColumnDefinition() {
077: return columnDefinition;
078: }
079:
080: /**
081: * Sets the value of the columnDefinition property.
082: *
083: * @param value
084: * allowed object is
085: * {@link String }
086: *
087: */
088: public void setColumnDefinition(String value) {
089: this .columnDefinition = value;
090: }
091:
092: /**
093: * Gets the value of the discriminatorType property.
094: *
095: * @return
096: * possible object is
097: * {@link DiscriminatorType }
098: *
099: */
100: public DiscriminatorType getDiscriminatorType() {
101: return discriminatorType;
102: }
103:
104: /**
105: * Sets the value of the discriminatorType property.
106: *
107: * @param value
108: * allowed object is
109: * {@link DiscriminatorType }
110: *
111: */
112: public void setDiscriminatorType(DiscriminatorType value) {
113: this .discriminatorType = value;
114: }
115:
116: /**
117: * Gets the value of the length property.
118: *
119: * @return
120: * possible object is
121: * {@link Integer }
122: *
123: */
124: public Integer getLength() {
125: return length;
126: }
127:
128: /**
129: * Sets the value of the length property.
130: *
131: * @param value
132: * allowed object is
133: * {@link Integer }
134: *
135: */
136: public void setLength(Integer value) {
137: this .length = value;
138: }
139:
140: /**
141: * Gets the value of the name property.
142: *
143: * @return
144: * possible object is
145: * {@link String }
146: *
147: */
148: public String getName() {
149: return name;
150: }
151:
152: /**
153: * Sets the value of the name property.
154: *
155: * @param value
156: * allowed object is
157: * {@link String }
158: *
159: */
160: public void setName(String value) {
161: this.name = value;
162: }
163:
164: }
|