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;
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.XmlElement;
022: import javax.xml.bind.annotation.XmlID;
023: import javax.xml.bind.annotation.XmlType;
024: import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
025: import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
026: import java.util.ArrayList;
027: import java.util.List;
028:
029: /**
030: * The outbound-resourceadapterType specifies information about
031: * an outbound resource adapter. The information includes fully
032: * qualified names of classes/interfaces required as part of
033: * the connector architecture specified contracts for
034: * connection management, level of transaction support
035: * provided, one or more authentication mechanisms supported
036: * and additional required security permissions.
037: * <p/>
038: * If there is no authentication-mechanism specified as part of
039: * resource adapter element then the resource adapter does not
040: * support any standard security authentication mechanisms as
041: * part of security contract. The application server ignores
042: * the security part of the system contracts in this case.
043: */
044: @XmlAccessorType(XmlAccessType.FIELD)
045: @XmlType(name="outbound-resourceadapterType",propOrder={"connectionDefinition","transactionSupport","authenticationMechanism","reauthenticationSupport"})
046: public class OutboundResourceAdapter {
047:
048: @XmlElement(name="connection-definition",required=true)
049: protected List<ConnectionDefinition> connectionDefinition;
050: @XmlElement(name="transaction-support",required=true)
051: protected TransactionSupportType transactionSupport;
052: @XmlElement(name="authentication-mechanism")
053: protected List<AuthenticationMechanism> authenticationMechanism;
054: @XmlElement(name="reauthentication-support")
055: protected boolean reauthenticationSupport;
056: @XmlAttribute
057: @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
058: @XmlID
059: protected String id;
060:
061: public List<ConnectionDefinition> getConnectionDefinition() {
062: if (connectionDefinition == null) {
063: connectionDefinition = new ArrayList<ConnectionDefinition>();
064: }
065: return this .connectionDefinition;
066: }
067:
068: public TransactionSupportType getTransactionSupport() {
069: return transactionSupport;
070: }
071:
072: public void setTransactionSupport(TransactionSupportType value) {
073: this .transactionSupport = value;
074: }
075:
076: public List<AuthenticationMechanism> getAuthenticationMechanism() {
077: if (authenticationMechanism == null) {
078: authenticationMechanism = new ArrayList<AuthenticationMechanism>();
079: }
080: return this .authenticationMechanism;
081: }
082:
083: /**
084: * Gets the value of the reauthenticationSupport property.
085: */
086: public boolean isReauthenticationSupport() {
087: return reauthenticationSupport;
088: }
089:
090: /**
091: * Sets the value of the reauthenticationSupport property.
092: */
093: public void setReauthenticationSupport(boolean value) {
094: this .reauthenticationSupport = value;
095: }
096:
097: public String getId() {
098: return id;
099: }
100:
101: public void setId(String value) {
102: this.id = value;
103: }
104:
105: }
|