/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.openejb.jee.oejb2; import java.util.ArrayList; import java.util.List; import java.util.Properties; import javax.xml.bind.JAXBElement; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElementRef; import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlElements; import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import org.apache.openejb.jee.jpa.unit.Persistence; import org.apache.openejb.jee.oejb3.PropertiesAdapter; /** * <p>Java class for openejb-jarType complex type. * <p/> * <p>The following schema fragment specifies the expected content contained within this class. * <p/> * <pre> * <complexType name="openejb-jarType"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element ref="{http://geronimo.apache.org/xml/ns/deployment-1.2}environment" minOccurs="0"/> * <element ref="{http://geronimo.apache.org/xml/ns/naming-1.2}cmp-connection-factory" minOccurs="0"/> * <element name="ejb-ql-compiler-factory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="db-syntax-factory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="enforce-foreign-key-constraints" type="{http://geronimo.apache.org/xml/ns/deployment-1.2}emptyType" minOccurs="0"/> * <element name="enterprise-beans"> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <choice maxOccurs="unbounded" minOccurs="0"> * <element name="session" type="{http://tomee.apache.org/xml/ns/openejb-jar-2.2}session-beanType"/> * <element name="entity" type="{http://tomee.apache.org/xml/ns/openejb-jar-2.2}entity-beanType"/> * <element name="message-driven" type="{http://tomee.apache.org/xml/ns/openejb-jar-2.2}message-driven-beanType"/> * </choice> * </restriction> * </complexContent> * </complexType> * </element> * <element name="relationships" type="{http://tomee.apache.org/xml/ns/openejb-jar-2.2}relationshipsType" minOccurs="0"/> * <element ref="{http://geronimo.apache.org/xml/ns/naming-1.2}message-destination" maxOccurs="unbounded" minOccurs="0"/> * <element ref="{http://geronimo.apache.org/xml/ns/j2ee/application-1.2}security" minOccurs="0"/> * <element ref="{http://geronimo.apache.org/xml/ns/deployment-1.2}service" maxOccurs="unbounded" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "openejb-jarType", namespace = "http://tomee.apache.org/xml/ns/openejb-jar-2.2", propOrder = { "environment", "properties", "cmpConnectionFactory", "ejbQlCompilerFactory", "dbSyntaxFactory", "enforceForeignKeyConstraints", "enterpriseBeans", "ejbRelation", "messageDestination", "security", "service", "persistence" }) public class OpenejbJarType { @XmlElement(name = "properties") @XmlJavaTypeAdapter(PropertiesAdapter.class) protected Properties properties; @XmlElement(name = "environment", namespace = "http://geronimo.apache.org/xml/ns/deployment-1.2") protected EnvironmentType environment; @XmlElement(name = "cmp-connection-factory", namespace = "http://geronimo.apache.org/xml/ns/naming-1.2") protected ResourceLocatorType cmpConnectionFactory; @XmlElement(name = "ejb-ql-compiler-factory") protected String ejbQlCompilerFactory; @XmlElement(name = "db-syntax-factory") protected String dbSyntaxFactory; @XmlElement(name = "enforce-foreign-key-constraints") protected EmptyType enforceForeignKeyConstraints; @XmlElementWrapper(name = "enterprise-beans") @XmlElements({ @XmlElement(name = "message-driven", required = true, type = MessageDrivenBeanType.class), @XmlElement(name = "session", required = true, type = SessionBeanType.class), @XmlElement(name = "entity", required = true, type = EntityBeanType.class)}) protected List<EnterpriseBean> enterpriseBeans = new ArrayList<EnterpriseBean>(); @XmlElementWrapper(name = "relationships") @XmlElement(name = "ejb-relation", required = true) protected List<EjbRelationType> ejbRelation; @XmlElement(name = "message-destination", namespace = "http://geronimo.apache.org/xml/ns/naming-1.2") protected List<MessageDestinationType> messageDestination; @XmlElementRef(name = "security", namespace = "http://geronimo.apache.org/xml/ns/j2ee/application-1.2", type = JAXBElement.class) protected JAXBElement<? extends AbstractSecurityType> security; @XmlElementRef(name = "service", namespace = "http://geronimo.apache.org/xml/ns/deployment-1.2", type = JAXBElement.class) protected List<JAXBElement<? extends AbstractServiceType>> service; @XmlElementRef(name = "persistence", namespace = "http://java.sun.com/xml/ns/persistence", type = Persistence.class) protected List<Persistence> persistence; /** * Gets the value of the environment property. * * @return possible object is * {@link EnvironmentType } */ public EnvironmentType getEnvironment() { return environment; } /** * Sets the value of the environment property. * * @param value allowed object is * {@link EnvironmentType } */ public void setEnvironment(final EnvironmentType value) { this.environment = value; } /** * Gets the value of the cmpConnectionFactory property. * * @return possible object is * {@link ResourceLocatorType } */ public ResourceLocatorType getCmpConnectionFactory() { return cmpConnectionFactory; } /** * Sets the value of the cmpConnectionFactory property. * * @param value allowed object is * {@link ResourceLocatorType } */ public void setCmpConnectionFactory(final ResourceLocatorType value) { this.cmpConnectionFactory = value; } /** * Gets the value of the ejbQlCompilerFactory property. * * @return possible object is * {@link String } */ public String getEjbQlCompilerFactory() { return ejbQlCompilerFactory; } /** * Sets the value of the ejbQlCompilerFactory property. * * @param value allowed object is * {@link String } */ public void setEjbQlCompilerFactory(final String value) { this.ejbQlCompilerFactory = value; } /** * Gets the value of the dbSyntaxFactory property. * * @return possible object is * {@link String } */ public String getDbSyntaxFactory() { return dbSyntaxFactory; } public void setDbSyntaxFactory(final String value) { this.dbSyntaxFactory = value; } public boolean isEnforceForeignKeyConstraints() { return enforceForeignKeyConstraints != null; } public void setEnforceForeignKeyConstraints(final boolean value) { this.enforceForeignKeyConstraints = value ? new EmptyType() : null; } public List<EnterpriseBean> getEnterpriseBeans() { return enterpriseBeans; } public List<EjbRelationType> getEjbRelation() { if (ejbRelation == null) { ejbRelation = new ArrayList<EjbRelationType>(); } return ejbRelation; } public void setEjbRelation(final List<EjbRelationType> ejbRelation) { this.ejbRelation = ejbRelation; } public List<MessageDestinationType> getMessageDestination() { if (messageDestination == null) { messageDestination = new ArrayList<MessageDestinationType>(); } return this.messageDestination; } public JAXBElement<? extends AbstractSecurityType> getSecurity() { return security; } public void setSecurity(final JAXBElement<? extends AbstractSecurityType> security) { this.security = security; } public List<JAXBElement<? extends AbstractServiceType>> getService() { if (service == null) { service = new ArrayList<JAXBElement<? extends AbstractServiceType>>(); } return this.service; } public List<Persistence> getPersistence() { if (persistence == null) { persistence = new ArrayList<Persistence>(); } return persistence; } public Properties getProperties() { if (properties == null) { properties = new Properties(); } return properties; } }