[jboss-cvs] JBossAS SVN: r100091 - in projects/javaee/trunk: jboss-connector-api_1.5_spec and 29 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Jan 28 17:28:16 EST 2010
Author: smcgowan at redhat.com
Date: 2010-01-28 17:28:11 -0500 (Thu, 28 Jan 2010)
New Revision: 100091
Added:
projects/javaee/trunk/jboss-connector-api_1.5_spec/
projects/javaee/trunk/jboss-connector-api_1.5_spec/pom.xml
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/NotSupportedException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/Referenceable.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/ResourceException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Connection.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionFactory.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionMetaData.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionSpec.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/IndexedRecord.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Interaction.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/InteractionSpec.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/LocalTransaction.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MappedRecord.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MessageListener.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Record.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/RecordFactory.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceWarning.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSet.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSetInfo.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Streamable.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/package.html
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/package.html
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ActivationSpec.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/BootstrapContext.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/CommException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEvent.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEventListener.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionManager.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/EISSystemException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/IllegalStateException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/InvalidPropertyException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransaction.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransactionException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnection.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapter.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAllocationException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SecurityException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SharingViolationException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/UnavailableException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/XATerminator.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/package.html
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/package.html
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/GenericCredential.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/PasswordCredential.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/package.html
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/ExecutionContext.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/Work.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkAdapter.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkCompletedException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkEvent.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkListener.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkManager.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkRejectedException.java
projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/package.html
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableUnavailableException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/HintsContext.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/RetryableWorkRejectedException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/SecurityContext.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/TransactionContext.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/pom.xml
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/etc/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/etc/default.mf
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Generated.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PostConstruct.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PreDestroy.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resource.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resources.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DeclareRoles.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DenyAll.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/PermitAll.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RolesAllowed.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RunAs.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/AccessLocalException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ActivationConfigProperty.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ApplicationException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ConcurrentAccessException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/CreateException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/DuplicateKeyException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJB.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBAccessException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBContext.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBHome.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalHome.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalObject.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBMetaData.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBObject.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRequiredException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRolledbackException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBs.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EnterpriseBean.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityBean.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityContext.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/FinderException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Handle.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/HomeHandle.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Init.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Local.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/LocalHome.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDriven.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenBean.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenContext.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEJBException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEntityException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchObjectLocalException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ObjectNotFoundException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PostActivate.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PrePassivate.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remote.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoteHome.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remove.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoveException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionBean.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionContext.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionSynchronization.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateful.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateless.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimedObject.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timeout.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timer.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerHandle.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerService.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttribute.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttributeType.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagement.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagementType.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRequiredLocalException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRolledbackLocalException.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/spi/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/spi/HandleDelegate.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/AroundInvoke.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeClassInterceptors.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeDefaultInterceptors.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/Interceptors.java
projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/InvocationContext.java
projects/javaee/trunk/jboss-el-api_2.2_spec/
Removed:
projects/javaee/trunk/jboss-el-api_1.2_spec/
Modified:
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/NotSupportedException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/Referenceable.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/ResourceException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Connection.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionFactory.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionMetaData.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionSpec.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/IndexedRecord.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Interaction.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/InteractionSpec.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/LocalTransaction.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MappedRecord.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MessageListener.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Record.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/RecordFactory.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceWarning.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSet.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSetInfo.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Streamable.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Activation.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ActivationSpec.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AdministeredObject.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AuthenticationMechanism.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/BootstrapContext.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/CommException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConfigProperty.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinition.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinitions.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEvent.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEventListener.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionManager.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Connector.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/EISSystemException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/IllegalStateException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/InvalidPropertyException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransaction.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransactionException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnection.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapter.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAllocationException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityPermission.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SharingViolationException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/TransactionSupport.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/UnavailableException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/XATerminator.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/GenericCredential.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/PasswordCredential.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWork.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWorkManager.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/ExecutionContext.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/Work.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkAdapter.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkCompletedException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContext.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextErrorCodes.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextLifecycleListener.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextProvider.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkEvent.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkListener.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkManager.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkRejectedException.java
projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/package.html
projects/javaee/trunk/jboss-ejb-api_3.1_spec/pom.xml
projects/javaee/trunk/jboss-el-api_2.2_spec/pom.xml
projects/javaee/trunk/jboss-spec-parent/pom.xml
projects/javaee/trunk/jboss-transaction-api_1.0_spec/pom.xml
projects/javaee/trunk/pom.xml
Log:
JBEE-15 - add jboss-ejb-api_3.0_spec, jboss-connector-api_1.5_spec, adjust el spec version
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/pom.xml
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/pom.xml (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/pom.xml 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,39 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.spec</groupId>
+ <artifactId>jboss-spec-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ <relativePath>../jboss-spec-parent/pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.spec.javax.resource</groupId>
+ <artifactId>jboss-connector-api_1.5_spec</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+ <name>JBoss J2EE Connector Architecture 1.5 API</name>
+ <url>http://www.jboss.org</url>
+ <description>The J2EE Connector Architecture 1.5 API classes</description>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <dependencies>
+ <!-- For SerialVersion -->
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.spec.javax.transaction</groupId>
+ <artifactId>jboss-transaction-api_1.0_spec</artifactId>
+ </dependency>
+ </dependencies>
+</project>
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/NotSupportedException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/NotSupportedException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/NotSupportedException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,83 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource;
+
+/**
+ * A NotSupportedException is thrown to indicate that the callee (resource
+ * adapter or application server for system contracts) cannot execute an
+ * operation because the operation is not a supported feature. For example, if
+ * the transaction support level for a resource adapter is NO_TRANSACTION, an
+ * invocation of ManagedConnection.getXAResource method should throw
+ * NotSupportedException exception.
+ */
+public class NotSupportedException extends ResourceException
+{
+ /**
+ * Create a not supported exception.
+ */
+ public NotSupportedException()
+ {
+ super();
+ }
+
+ /**
+ * Create a not supported exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public NotSupportedException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create a not supported exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public NotSupportedException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create a not supported exception with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public NotSupportedException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create a not supported exception with an error.
+ *
+ * @param throwable the error
+ */
+ public NotSupportedException(Throwable throwable)
+ {
+ super(throwable);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/Referenceable.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/Referenceable.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/Referenceable.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,45 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource;
+
+import javax.naming.Reference;
+
+/**
+ * The Referenceable interface extends the javax.naming.Referenceable
+ * interface. It enables support for the JNDI Reference mechanism for the
+ * registration of the connection factory in the JNDI name space. Note that the
+ * implementation and structure of a Reference is specific to an application
+ * server.
+ *
+ * The implementation class for a connection factory interface is required to
+ * implement both the java.io.Serializable and the javax.resource.Referenceable
+ * interfaces to support JNDI registration.
+ */
+public interface Referenceable extends javax.naming.Referenceable
+{
+ /**
+ * Sets the reference instance
+ *
+ * @param reference the reference
+ */
+ void setReference(Reference reference);
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/ResourceException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/ResourceException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/ResourceException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,167 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource;
+
+import org.jboss.util.id.SerialVersion;
+
+/**
+ * This is the root exception for the exception hierarchy defined for the
+ * connector architecture.
+ *
+ * A ResourceException contains three items, the first two of which are set
+ * from the constructor. The first is a standard message string which is
+ * accessed via the getMessage() method. The second is an errorCode which is
+ * accessed via the getErrorCode() method. The third is a linked exception
+ * which provides more information from a lower level in the resource manager.
+ * Linked exceptions are accessed via get/setLinkedException.
+ */
+public class ResourceException extends Exception
+{
+ /** @since 4.0.2 */
+ static final long serialVersionUID;
+ static
+ {
+ if (SerialVersion.version == SerialVersion.LEGACY)
+ serialVersionUID = 4770679801401540475L;
+ else
+ serialVersionUID = 547071213627824490L;
+ }
+
+ /** The error code */
+ private String errorCode;
+
+ /** The linked exception */
+ private Exception linkedException;
+
+ /**
+ * Create an exception with a null reason.
+ */
+ public ResourceException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public ResourceException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public ResourceException(String reason, String errorCode)
+ {
+ super(reason);
+ this.errorCode = errorCode;
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param throwable the linked error
+ */
+ public ResourceException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param throwable the linked error
+ */
+ public ResourceException(Throwable throwable)
+ {
+ super(throwable);
+ }
+
+ /**
+ * Get the error code.
+ *
+ * @return the error code
+ */
+ public String getErrorCode()
+ {
+ return errorCode;
+ }
+
+ /**
+ * Get any linked exception.
+ *
+ * @return the linked exception
+ */
+ public Exception getLinkedException()
+ {
+ return linkedException;
+ }
+
+ /**
+ * Get the message composed of the reason and error code.
+ *
+ * @return message composed of the reason and error code.
+ */
+ public String getMessage()
+ {
+ String msg = super.getMessage();
+ String ec = getErrorCode();
+ if ((msg == null) && (ec == null))
+ {
+ return null;
+ }
+ if ((msg != null) && (ec != null))
+ {
+ return (msg + ", error code: " + ec);
+ }
+ return ((msg != null) ? msg : ("error code: " + ec));
+ }
+
+ /**
+ * Set the error code.
+ *
+ * @param errorCode code the error code
+ */
+ public void setErrorCode(String errorCode)
+ {
+ this.errorCode = errorCode;
+ }
+
+ /**
+ * Set a linked exception.
+ *
+ * @deprecated use initCause
+ * @param linkedException the linked exception
+ */
+ public void setLinkedException(Exception linkedException)
+ {
+ this.linkedException = linkedException;
+ initCause(linkedException);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Connection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Connection.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Connection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,62 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * The Connection provides a handle for use by the application to access an
+ * underlying physical connection.
+ *
+ * The client calls the getConnection() method on a ConnectionFactory object to
+ * get a Connection.
+ */
+public interface Connection
+{
+ /**
+ * Closes a connection
+ */
+ public void close() throws ResourceException;
+
+ /**
+ * Creates a new interaction associated with this connection.
+ */
+ public Interaction createInteraction() throws ResourceException;
+
+ /**
+ * Gets a LocalTransaction object which allows the client to manage local
+ * transactions for the connection.
+ */
+ public LocalTransaction getLocalTransaction() throws ResourceException;
+
+ /**
+ * Gets meta data for the underlying resource represented by this
+ * connection.
+ */
+ public ConnectionMetaData getMetaData() throws ResourceException;
+
+ /**
+ * Gets information on ResultSet functionality supported by the underlying
+ * resource for the connection.
+ */
+ public ResultSetInfo getResultSetInfo() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionFactory.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,65 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import java.io.Serializable;
+
+import javax.resource.Referenceable;
+import javax.resource.ResourceException;
+
+/**
+ * The ConnectionFactory provides an interface for getting a Connection from
+ * the Resource adapter.
+ *
+ * The application retrieves a reference to the ConnectionFactory through a
+ * JNDI lookup.
+ *
+ * ConnectionFactory extends java.io.Serializable and
+ * javax.resource.Referenceable in order to support JNDI lookup.
+ */
+public interface ConnectionFactory extends Serializable, Referenceable
+{
+ /**
+ * Gets a connection from the resource adapter. When using this method the
+ * client does not pass any security information, and wants the container to
+ * manage sign-on. This is called container managed sign-on.
+ */
+ public Connection getConnection() throws ResourceException;
+
+ /**
+ * Gets a connection from the resource adapter. When using this method the
+ * client passes in the security information. This is called component
+ * managed sign-on.
+ */
+ public Connection getConnection(ConnectionSpec properties) throws ResourceException;
+
+ /**
+ * Gets a RecordFactory instance for use in creating Record objects.
+ */
+ public RecordFactory getRecordFactory() throws ResourceException;
+
+ /**
+ * Gets metadata for the resource adapter. This call does not require an
+ * active connection.
+ */
+ public ResourceAdapterMetaData getMetaData() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionMetaData.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionMetaData.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionMetaData.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,54 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * The ConnectionMetaData provides information about the underlying resources
+ * for the connection.
+ */
+public interface ConnectionMetaData
+{
+ /**
+ * Gets the product name of the underlying resource for the connection.
+ *
+ * @return Product name of underlying resource.
+ */
+ public String getEISProductName() throws ResourceException;
+
+ /**
+ * Gets the product version of the underlying resource for the connection.
+ *
+ * @return Product version name of underlying resource.
+ */
+ public String getEISProductVersion() throws ResourceException;
+
+ /**
+ * Gets the user name for the connection to the underlying resource as known
+ * to the underlying resource. This name corresponds to the principal under
+ * whose context the connection was first made.
+ *
+ * @return Product name of underlying resource.
+ */
+ public String getUserName() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionSpec.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionSpec.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ConnectionSpec.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+/**
+ * An ConnectionSpec holds connection specific properties for use by a
+ * ConnectionFactory in creating a Connection.n Connection in order to execute
+ * a function on the underlying resource.
+ *
+ * The ConnectionSpec interface should be implemented as a JavaBean in order
+ * for ease of tool support.
+ *
+ * A standard set of properties are defined in the specification. In addition
+ * an implementation may implement additional properties.
+ */
+public interface ConnectionSpec
+{
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/IndexedRecord.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/IndexedRecord.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/IndexedRecord.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,30 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+/**
+ * The IndexedRecord interface is used for list oriented representations of the
+ * Record elements.
+ */
+public interface IndexedRecord extends Record, java.util.List, java.io.Serializable
+{
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Interaction.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Interaction.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Interaction.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,88 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * The Interaction enables a component to execute functions on the underlying
+ * resource. An object implementing the Interaction interface supports two
+ * execute() methods for interacting with the underlying resource.
+ *
+ * An Interaction is created from a Connection and maintains an association
+ * with the Connection for its entire lifetime.
+ * @version $Revision: 37459 $
+ */
+public interface Interaction
+{
+ /**
+ * Clears all warnings reported by this Interaction.
+ *
+ * @exception ResourceException Thrown if operation fails.
+ */
+ public void clearWarnings() throws ResourceException;
+
+ /**
+ * Closes an interaction
+ *
+ * @exception ResourceException Thrown if operation fails.
+ */
+ public void close() throws ResourceException;
+
+ /**
+ * Executes the interaction specified by the InteractionSpec with the
+ * specified input.
+ *
+ * @param spec Represents the target function on the underlying resource.
+ * @param input Input Record @returns Record Output if successful, null if
+ * not.
+ * @exception ResourceException Thrown if Interaction fails.
+ */
+ public Record execute(InteractionSpec spec, Record input) throws ResourceException;
+
+ /**
+ * Executes the interaction specified by the InteractionSpec with the
+ * specified input.
+ *
+ * @param spec Represents the target function on the underlying resource.
+ * @param input Input Record
+ * @param output Output record @returns boolean True if successful, false if
+ * not
+ * @exception ResourceException Thrown if Interaction fails.
+ */
+ public boolean execute(InteractionSpec spec, Record input, Record output) throws ResourceException;
+
+ /**
+ * Gets the connection associated with this interaction.
+ * @returns Connection Associated connection
+ *
+ */
+ public Connection getConnection();
+
+ /**
+ * Gets the first warning for this interaction. @returns ResourceWarning
+ * First warning.
+ *
+ * @exception ResourceException Thrown if operation fails.
+ */
+ public ResourceWarning getWarnings() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/InteractionSpec.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/InteractionSpec.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/InteractionSpec.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,53 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import java.io.Serializable;
+
+/**
+ * An InteractionSpec holds properties for use by an Interaction in order to
+ * execute a function on the underlying resource.
+ *
+ * There is a set of standard properties which are used to give hints to an
+ * Interaction object about the requirements of a ResultSet.
+ *
+ * FetchSize, FetchDirection, MaxFieldSize, ResultSetType, ResultSetConcurrency
+ *
+ * A specific implementation may implement additional properties.
+ */
+public interface InteractionSpec extends Serializable
+{
+ /**
+ * Execution requires only a send to the underlying resource.
+ */
+ public static final int SYNC_SEND = 0;
+
+ /**
+ * Execution requires only a send to the underlying resource.
+ */
+ public static final int SYNC_SEND_RECEIVE = 1;
+
+ /**
+ * Execution results in a synchronous receive of the output Record
+ */
+ public static final int SYNC_RECEIVE = 2;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/LocalTransaction.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/LocalTransaction.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/LocalTransaction.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * The LocalTransaction interface is the transaction demarcation interface for
+ * transactions local to the resource manager. This interface is used for
+ * application level transaction demarcation, the spi.LocalTransaction
+ * interface is used for transaction management within a resource adapter.
+ *
+ * Implementation of this interface is optional for a resource manager.
+ */
+public interface LocalTransaction
+{
+ /**
+ * Begins a local transaction on the userlying resource.
+ */
+ public void begin() throws ResourceException;
+
+ /**
+ * Commits a local transaction on the userlying resource.
+ */
+ public void commit() throws ResourceException;
+
+ /**
+ * Rolls back a local transaction on the userlying resource.
+ */
+ public void rollback() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MappedRecord.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MappedRecord.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MappedRecord.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,33 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import java.io.Serializable;
+import java.util.Map;
+
+/**
+ * The MappedRecord interface is used for key-value map based representation of
+ * the Record elements.
+ */
+public interface MappedRecord extends Record, Map, Serializable
+{
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MessageListener.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MessageListener.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/MessageListener.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * A request/response message listener that message driven beans may implement
+ */
+public interface MessageListener
+{
+ /**
+ * Request response style message listener
+ *
+ * @param inputData the input data
+ * @return the response or null
+ * @throws ResourceException for any error
+ */
+ Record onMessage(Record inputData) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Record.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Record.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Record.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,77 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import java.io.Serializable;
+
+/**
+ * The Record interface is the base interface for representing input and output
+ * for an Interaction.
+ *
+ * A Record can be extended in several ways:
+ * <ul>
+ * <li>MappedRecord based on a Map
+ * <li>IndexedRecord based on a List
+ * <li>ResultSet based on a java.sql.ResultSet
+ * <li>Arbitrary JavaBean
+ * </ul>
+ *
+ * Both MappedRecord and IndexedRecord support heirarchical structures of
+ * Records with Records within Records.
+ */
+public interface Record extends Cloneable, Serializable
+{
+ /**
+ * Creae a copy of this Record
+ */
+ public Object clone() throws CloneNotSupportedException;
+
+ /**
+ * Compare two Records for equality
+ */
+ public boolean equals(Object other);
+
+ /*
+ * Return a hashcode for this Record
+ */
+ public int hashCode();
+
+ /**
+ * Get the name of this Record.
+ */
+ public String getRecordName();
+
+ /**
+ * Set the name of this Record.
+ */
+ public void setRecordName(String name);
+
+ /**
+ * Get the short description of this Record
+ */
+ public String getRecordShortDescription();
+
+ /**
+ * Set the short description of this Record
+ */
+ public void setRecordShortDescription(String description);
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/RecordFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/RecordFactory.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/RecordFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * The RecordFactory interface is used for creating MappedRecord and
+ * IndexedRecord instances.
+ */
+public interface RecordFactory
+{
+ /**
+ * Creates a MappedRecord with the specified name. The name is used as a key
+ * into the MetaData.
+ */
+ public MappedRecord createMappedRecord(String recordName) throws ResourceException;
+
+ /**
+ * Creates a IndexedRecord with the specified name. The name is used as a
+ * key into the MetaData.
+ */
+ public IndexedRecord createIndexedRecord(String recordName) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,96 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+/**
+ * The ResourceAdaptetMetaData provides information about the resource adapters
+ * implementation.
+ *
+ * The resource adapter does not require an active connection to exist in order
+ * for the client to retrieve and use this data.
+ * @version $Revision: 37459 $
+ */
+public interface ResourceAdapterMetaData
+{
+ /**
+ * Gets the resource adapter's name.
+ *
+ * @return Resource adapter name.
+ */
+ public String getAdapterName();
+
+ /**
+ * Gets the resource adapter's short description.
+ *
+ * @return Resource adapter short description.
+ */
+ public String getAdapterShortDescription();
+
+ /**
+ * Gets the resource adapter vendor's name.
+ *
+ * @return Resource adapter vendor name.
+ */
+ public String getAdapterVendorName();
+
+ /**
+ * Gets the resource adapter version.
+ *
+ * @return Resource adapter version.
+ */
+ public String getAdapterVersion();
+
+ /**
+ * Gets information on the InteractionSpec types supported by this resource
+ * adapter.
+ *
+ * @return Array of InteractionSpec names supported.
+ */
+ public String[] getInteractionSpecsSupported();
+
+ /**
+ * Gets the Connector specification version supported by this adapter.
+ *
+ * @return Connector specification version.
+ */
+ public String getSpecVersion();
+
+ /**
+ * Returns true if the resource adapter Interaction implementation supports
+ * the method boolean execute( InteractionSpec spec, Record input, Record
+ * output ), otherwise returns false
+ */
+ public boolean supportsExecuteWithInputAndOutputRecord();
+
+ /**
+ * Returns true if the resource adapter Interaction implementation supports
+ * the method boolean execute( InteractionSpec spec, Record input ),
+ * otherwise returns false
+ */
+ public boolean supportsExecuteWithInputRecordOnly();
+
+ /**
+ * Returns true if the resource adapter implementation implements the
+ * LocalTransaction interface and supports local transaction demarcation.
+ */
+ public boolean supportsLocalTransactionDemarcation();
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceWarning.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceWarning.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResourceWarning.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,96 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * ResourceWarning provides information on warnings generated by the underlying
+ * resource. They are chained to an Interaction object for later retrieval.
+ */
+public class ResourceWarning extends ResourceException
+{
+ /**
+ * Create a warning
+ */
+ public ResourceWarning()
+ {
+ super();
+ }
+
+ /**
+ * Create a warning with a reason.
+ */
+ public ResourceWarning(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create a warning with a reason and an errorCode.
+ */
+ public ResourceWarning(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create a warning with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public ResourceWarning(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create a warning with an error.
+ *
+ * @param throwable the error
+ */
+ public ResourceWarning(Throwable throwable)
+ {
+ super(throwable);
+ }
+
+ /**
+ * Set a linked warning.
+ *
+ * @deprecated use initCause()
+ */
+ public void setLinkedWarning(ResourceWarning linkedWarning)
+ {
+ setLinkedException(linkedWarning);
+ }
+
+ /**
+ * Get any linked warning.
+ *
+ * @deprecated use getCause()
+ */
+ public ResourceWarning getLinkedWarning()
+ {
+ return (ResourceWarning) getLinkedException();
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSet.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSet.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSet.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,32 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+/**
+ * A ResultSet represents tabular data returned from the underlying resource by
+ * the execution of an interaction. The cci.ResultSet is based on the JDBC
+ * result set.
+ * @version $Revision: 37459 $
+ */
+public interface ResultSet extends Record, java.sql.ResultSet
+{
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSetInfo.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSetInfo.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/ResultSetInfo.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,92 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import javax.resource.ResourceException;
+
+/**
+ * The interface ResultSetInfo provides information on the support for the
+ * ResultSet interface by an underlying resource. A component can retrieve a
+ * ResultSetInfo from a Connection instance.
+ *
+ * A resource only needs to support this interface if it also supports the
+ * ResultSet interface.
+ */
+public interface ResultSetInfo
+{
+ /**
+ * Indicates whether or not a visible row delete can be detected.
+ */
+ public boolean deletesAreDetected(int type) throws ResourceException;
+
+ /**
+ * Indicates whether or not a visible row insert can be detected.
+ */
+ public boolean insertsAreDetected(int type) throws ResourceException;
+
+ /**
+ * Indicates whether deletes made by others are visible.
+ */
+ public boolean othersDeletesAreVisible(int type) throws ResourceException;
+
+ /**
+ * Indicates whether inserts made by others are visible.
+ */
+ public boolean othersInsertsAreVisible(int type) throws ResourceException;
+
+ /**
+ * Indicates whether updates made by others are visible.
+ */
+ public boolean othersUpdatesAreVisible(int type) throws ResourceException;
+
+ /**
+ * Indicates whether deletes made by self are visible.
+ */
+ public boolean ownDeletesAreVisible(int type) throws ResourceException;
+
+ /**
+ * Indicates whether inserts made by self are visible.
+ */
+ public boolean ownInsertsAreVisible(int type) throws ResourceException;
+
+ /**
+ * Indicates whether updates made by self are visible.
+ */
+ public boolean ownUpdatesAreVisible(int type) throws ResourceException;
+
+ /**
+ * Indicates whether or not an resource adapter supports the specified type
+ * of ResultSet.
+ */
+ public boolean supportsResultSetType(int type) throws ResourceException;
+
+ /**
+ * Indicates whether or not a resource adapter supports the concurrency type
+ * in combination with the given ResultSet type.
+ */
+ public boolean supportsResultTypeConcurrency(int type, int concurrency) throws ResourceException;
+
+ /**
+ * Indicates whether or not a visible row update can be detected.
+ */
+ public boolean updatesAreDetected(int type) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Streamable.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Streamable.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/Streamable.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,45 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.cci;
+
+import java.io.InputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+
+/**
+ * The Streamable interface allows a resource adapter to interact with a Record
+ * as a stream of bytes.
+ *
+ * The Streamable interface is used by a resource adapter.
+ */
+public interface Streamable
+{
+ /**
+ * Read the Streamable from the specified InputStream.
+ */
+ public void read(InputStream istream) throws IOException;
+
+ /**
+ * Write the Streamable to the specified OutputStream.
+ */
+ public void write(OutputStream ostream) throws IOException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/package.html
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/package.html (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/cci/package.html 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+ <head>
+ <!-- $Id: package.html 18252 2003-12-18 17:14:00Z ejort $ -->
+ <!--
+
+ JBoss: The OpenSource J2EE WebOS
+
+ Distributable under LGPL license.
+ See terms of license at gnu.org.
+
+ -->
+ </head>
+
+ <body bgcolor="white">
+ <p>J2EE Connector API - Common Client Interface.
+
+ <h2>Package Specification</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/1.4/docs/api/index.html">Specified javadocs</a>
+ </ul>
+
+ <h2>Related Documentation</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/connector/download.html">The specification</a>
+ </ul>
+
+ <h2>Package Status</h2>
+ <ul>
+ <li><font color="green"><b>STABLE</b></font>
+ </ul>
+
+ <!-- Put @see and @since tags down here. -->
+
+ </body>
+</html>
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/package.html
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/package.html (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/package.html 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+ <head>
+ <!-- $Id: package.html 18252 2003-12-18 17:14:00Z ejort $ -->
+ <!--
+
+ JBoss: The OpenSource J2EE WebOS
+
+ Distributable under LGPL license.
+ See terms of license at gnu.org.
+
+ -->
+ </head>
+
+ <body bgcolor="white">
+ <p>J2EE Connector API.
+
+ <h2>Package Specification</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/1.4/docs/api/index.html">Specified javadocs</a>
+ </ul>
+
+ <h2>Related Documentation</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/connector/download.html">The specification</a>
+ </ul>
+
+ <h2>Package Status</h2>
+ <ul>
+ <li><font color="green"><b>STABLE</b></font>
+ </ul>
+
+ <!-- Put @see and @since tags down here. -->
+
+ </body>
+</html>
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ActivationSpec.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ActivationSpec.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ActivationSpec.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+/**
+ * A marker interface holding the configuration of a message endpoint.
+ *
+ * An instance must be a javabean and be serializable.
+ */
+public interface ActivationSpec extends ResourceAdapterAssociation
+{
+ /**
+ * Optional method that can be used to check configuration by a deployment
+ * tool.
+ *
+ * @throws InvalidPropertyException for invalid configuration
+ */
+ void validate() throws InvalidPropertyException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,82 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A ApplicationServerInternalException is thrown to indicate error conditions
+ * specific to the Applcation server. This could include such errors as
+ * configuration related or implementation mechanism related errors.
+ */
+public class ApplicationServerInternalException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public ApplicationServerInternalException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public ApplicationServerInternalException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public ApplicationServerInternalException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public ApplicationServerInternalException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public ApplicationServerInternalException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/BootstrapContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/BootstrapContext.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/BootstrapContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,57 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.util.Timer;
+
+import javax.resource.spi.work.WorkManager;
+
+/**
+ * Used to pass context to the resource adapter start(BootstrapContext) method.
+ */
+public interface BootstrapContext
+{
+ /**
+ * Creates a new Timer that can be used to perform period work.
+ *
+ * @return the timer instance
+ * @throws UnavailableException when not timer is available. It can be
+ * retried later.
+ */
+ Timer createTimer() throws UnavailableException;
+
+ /**
+ * Get the work manager, the resource adapter should use this for all work
+ * on new threads.
+ *
+ * @return the work manager
+ */
+ WorkManager getWorkManager();
+
+ /**
+ * Get the XATerminator. The resource adapter should use this to gain access
+ * to the transaction and crash recovery.
+ *
+ * @return the XATerminator
+ */
+ XATerminator getXATerminator();
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/CommException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/CommException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/CommException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,77 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A CommException indicates error conditions related to failed or interrupted
+ * communication with an underlying resource. examples include: communication
+ * protocol error or connection loss due to server failure.
+ */
+public class CommException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public CommException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ */
+ public CommException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ */
+ public CommException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public CommException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public CommException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEvent.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEvent.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEvent.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,224 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.io.Serializable;
+import java.io.ObjectStreamField;
+import java.io.ObjectInputStream;
+import java.io.IOException;
+import java.io.ObjectOutputStream;
+import java.util.EventObject;
+
+import org.jboss.util.id.SerialVersion;
+
+/**
+ * The ConnectionEvent class provides information about the source of a
+ * Connection related event. A ConnectionEvent contains:
+ * <ul>
+ *
+ * <li>Type of connection event.</li>
+ * <li>Managed connection instance that generated the event.</li>
+ * <li>Connection handle associated with the managed connection.</li>
+ * <li>Optionally an exception indicating an error.</li>
+ * </ul>
+ * <p>
+ * This class is used for the following types of notifications:
+ * <ul>
+ *
+ * <li>Connection closed</li>
+ * <li>Local transaction started</li>
+ * <li>Local transaction commited</li>
+ * <li>Local transaction rolled back</li>
+ * <li>Connection error occurred</li>
+ * </ul>
+ * @version $Revision: 37459 $
+ */
+public class ConnectionEvent extends EventObject
+{
+ /** @since 4.0.2 */
+ static final long serialVersionUID;
+
+ // Constants -----------------------------------------------------
+ /**
+ * These field names match the j2ee 1.4.1 ri version names
+ */
+ private static final ObjectStreamField[] serialPersistentFields;
+ private static final int ID_IDX = 0;
+ private static final int EXCEPTION_IDX = 1;
+ private static final int CONN_HANDLE_IDX = 2;
+
+ static
+ {
+ if (SerialVersion.version == SerialVersion.LEGACY)
+ {
+ serialVersionUID = 2776168349823367611L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField id int */
+ new ObjectStreamField("id", int.class),
+ /** @serialField e Exception */
+ new ObjectStreamField("e", Exception.class),
+ /** @serialField connectionHandle Object */
+ new ObjectStreamField("connectionHandle", Object.class)
+ };
+ }
+ else
+ {
+ // j2ee 1.4.1 RI values
+ serialVersionUID = 5611772461379563249L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField id int */
+ new ObjectStreamField("id", int.class),
+ /** @serialField exception Exception */
+ new ObjectStreamField("exception", Exception.class),
+ /** @serialField connectionHandle Object */
+ new ObjectStreamField("connectionHandle", Object.class)
+ };
+ }
+ }
+
+ /**
+ * Connection has been closed
+ */
+ public static final int CONNECTION_CLOSED = 1;
+
+ /**
+ * Local transaction has been started
+ */
+ public static final int LOCAL_TRANSACTION_STARTED = 2;
+
+ /**
+ * Local transaction has been committed
+ */
+ public static final int LOCAL_TRANSACTION_COMMITTED = 3;
+
+ /**
+ * Local transaction has been rolled back
+ */
+ public static final int LOCAL_TRANSACTION_ROLLEDBACK = 4;
+
+ /**
+ * Connection error has occurred
+ */
+ public static final int CONNECTION_ERROR_OCCURRED = 5;
+
+ /** Type of event */
+ protected int id;
+
+ /** The exception */
+ private Exception e = null;
+ /** The connectionHandle */
+ private Object connectionHandle = null;
+
+ /**
+ * Create a new ConnectionEvent
+ *
+ * @param source the source of the event
+ * @param eid the event id
+ */
+ public ConnectionEvent(ManagedConnection source, int eid)
+ {
+ super(source);
+ id = eid;
+ }
+
+ /**
+ * Create a new ConnectionEvent
+ *
+ * @param source the source of the event
+ * @param eid the event id
+ * @param exception the exception associated with the event
+ */
+ public ConnectionEvent(ManagedConnection source, int eid, Exception exception)
+ {
+ super(source);
+ id = eid;
+ e = exception;
+ }
+
+ /**
+ * Get the event type
+ *
+ * @return the event id
+ */
+ public int getId()
+ {
+ return id;
+ }
+
+ /**
+ * Get the exception
+ *
+ * @return the exception
+ */
+ public Exception getException()
+ {
+ return e;
+ }
+
+ /**
+ * Set the ConnectionHandle
+ *
+ * @param connectionHandle the connection handle
+ */
+ public void setConnectionHandle(Object connectionHandle)
+ {
+ this.connectionHandle = connectionHandle;
+ }
+
+ /**
+ * Get the ConnectionHandle
+ *
+ * @return the connection handle
+ */
+ public Object getConnectionHandle()
+ {
+ return connectionHandle;
+ }
+
+ // Private -------------------------------------------------------
+ private void readObject(ObjectInputStream ois)
+ throws ClassNotFoundException, IOException
+ {
+ ObjectInputStream.GetField fields = ois.readFields();
+ String name = serialPersistentFields[ID_IDX].getName();
+ this.id = fields.get(name, CONNECTION_ERROR_OCCURRED);
+ name = serialPersistentFields[EXCEPTION_IDX].getName();
+ this.e = (Exception) fields.get(name, null);
+ name = serialPersistentFields[CONN_HANDLE_IDX].getName();
+ this.connectionHandle = fields.get(name, null);
+ }
+
+ private void writeObject(ObjectOutputStream oos)
+ throws IOException
+ {
+ // Write j2ee 1.4.1 RI field names
+ ObjectOutputStream.PutField fields = oos.putFields();
+ String name = serialPersistentFields[ID_IDX].getName();
+ fields.put(name, id);
+ name = serialPersistentFields[EXCEPTION_IDX].getName();
+ fields.put(name, e);
+ name = serialPersistentFields[CONN_HANDLE_IDX].getName();
+ fields.put(name, connectionHandle);
+ oos.writeFields();
+ }
+
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEventListener.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEventListener.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionEventListener.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,69 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.util.EventListener;
+
+/**
+ * The ConnectionEventListener interface provides for a callback mechanism to
+ * enable objects to listen for events of the ConnectionEvent class.
+ *
+ * An Application server uses these events to manage its connection pools.
+ */
+public interface ConnectionEventListener extends EventListener
+{
+
+ /**
+ * Notifies the listener that a connection has been closed
+ *
+ * @param event the closed event
+ */
+ void connectionClosed(ConnectionEvent event);
+
+ /**
+ * Local transaction has been started
+ *
+ * @param event the local transaction started event
+ */
+ void localTransactionStarted(ConnectionEvent event);
+
+ /**
+ * Local transaction has been committed
+ *
+ * @param event the local transaction committed event
+ */
+ void localTransactionCommitted(ConnectionEvent event);
+
+ /**
+ * Local transaction has been rolled back
+ *
+ * @param the local transaction rolled back event
+ */
+ void localTransactionRolledback(ConnectionEvent event);
+
+ /**
+ * Connection error has occurred
+ *
+ * @param the connection error event
+ */
+ void connectionErrorOccurred(ConnectionEvent event);
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionManager.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,52 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.io.Serializable;
+
+import javax.resource.ResourceException;
+
+/**
+ * The ConnectionManager interface provides the hook which allows a resource
+ * adapter to pass a connection to the Application Server. The Application
+ * Server implements this interface in order to control QoS services to the
+ * resource adapter for connection pools.
+ */
+
+public interface ConnectionManager extends Serializable
+{
+ /**
+ * Gets called by the resource adapter's connection factory. The resource adapter
+ * uses this method to pass its managed connection factory to the connection manager.
+ *
+ * @param mcf the managed connection factory
+ * @param cxRequestInfo the connection request info
+ * @return the connection handle
+ * @throws ResourceException for an generic error
+ * @throws ApplicationServerInternalException for problems in the application server
+ * @throws SecurityException for security problems
+ * @throws ResourceAllocationException for problems allocating resources
+ * @throws ResourceAdapterInternalException for errors from the resource adapter
+ */
+ public Object allocateConnection(ManagedConnectionFactory mcf, ConnectionRequestInfo cxRequestInfo)
+ throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+/**
+ * The ConnectionRequestInfo allows a resource adapter to pass its own
+ * information along with a request for a connection. In order to make use of
+ * this functionality, a resource adapter needs to extend this interface and
+ * add it's information.
+ */
+public interface ConnectionRequestInfo
+{
+ /**
+ * Tests object for equality
+ *
+ * @param other the object to test
+ * @return true when equal, false otherwise
+ */
+ public boolean equals(Object other);
+
+ /**
+ * Generates a hashCode for this object
+ *
+ * @return the hash code
+ */
+ public int hashCode();
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A marker interface for connections that support the lazy connection
+ * association optimization.
+ */
+public interface DissociatableManagedConnection
+{
+ /**
+ * Invoked by the application server to dissociate the managed connection
+ * from all handles.
+ *
+ * @throws ResourceException for any error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ * @throws IllegalStateException if the state cannot be cleaned up, e.g. a
+ * transaction is in progress
+ */
+ void dissociateConnections() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/EISSystemException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/EISSystemException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/EISSystemException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,77 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A EISSystemException is used to indicate EIS specific error conditios.
+ * Common error conditions are failure of the EIS, communication failure or an
+ * EIS specific failure during creation of a new connection.
+ */
+public class EISSystemException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public EISSystemException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ */
+ public EISSystemException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ */
+ public EISSystemException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public EISSystemException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public EISSystemException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/IllegalStateException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/IllegalStateException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/IllegalStateException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,75 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A IllegalStateException is thrown when a method has been invoked on an
+ * object which is in the wrong state to execute the method.
+ */
+public class IllegalStateException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public IllegalStateException()
+ {
+ super();
+ }
+ /**
+ * Create an exception with a reason.
+ */
+ public IllegalStateException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ */
+ public IllegalStateException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public IllegalStateException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public IllegalStateException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/InvalidPropertyException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/InvalidPropertyException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/InvalidPropertyException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,117 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.beans.PropertyDescriptor;
+
+import javax.resource.ResourceException;
+
+import org.jboss.util.id.SerialVersion;
+
+/**
+ * Represents invalid configuration properties
+ */
+public class InvalidPropertyException extends ResourceException
+{
+ /** @since 4.0.2 */
+ static final long serialVersionUID;
+ static
+ {
+ if (SerialVersion.version == SerialVersion.LEGACY)
+ serialVersionUID = -2395559483586818078L;
+ else
+ serialVersionUID = -485903720300735741L;
+ }
+
+ /** The invalidProperties */
+ PropertyDescriptor[] invalidProperties;
+
+ /**
+ * Create an invalid property exception.
+ */
+ public InvalidPropertyException()
+ {
+ super();
+ }
+
+ /**
+ * Create an invalid property exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public InvalidPropertyException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an invalid property exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public InvalidPropertyException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an invalid property exception with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public InvalidPropertyException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create an invalid property exception with an error.
+ *
+ * @param throwable the error
+ */
+ public InvalidPropertyException(Throwable throwable)
+ {
+ super(throwable);
+ }
+
+ /**
+ * Get the invalid property descriptors
+ *
+ * @return an array of invalid property descriptors
+ */
+ public PropertyDescriptor[] getInvalidPropertyDescriptors()
+ {
+ return invalidProperties;
+ }
+
+ /**
+ * Set the invalid property descriptors
+ *
+ * @param an array of invalid property descriptors
+ */
+ public void setInvalidPropertyDescriptors(PropertyDescriptor[] invalidProperties)
+ {
+ this.invalidProperties = invalidProperties;
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,45 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * An optioanl mixin interface for connection managers that support the lazy connection
+ * association optimization.
+ */
+public interface LazyAssociatableConnectionManager
+{
+ /**
+ * Invoked by a resource adapter to lazily associate a connection handle with the managed connection
+ *
+ * @param connection the connection handle
+ * @param mcf the managed connection factory
+ * @param cxRequestInfo the connection request info
+ * @throws ResourceException for an generic error
+ * @throws ApplicationServerInternalException for problems in the application server
+ * @throws SecurityException for security problems
+ * @throws ResourceAllocationException for problems allocating resources
+ * @throws ResourceAdapterInternalException for errors from the resource adapter
+ */
+ void associateConnection(Object connection, ManagedConnectionFactory mcf, ConnectionRequestInfo cxReqInfo) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * An optioanl mixin interface for connection managers that support the lazy connection
+ * enlistment optimization.
+ */
+public interface LazyEnlistableConnectionManager
+{
+ /**
+ * Invoked by a resource adapter to lazily enlist a connection handle with the managed connection
+ *
+ * @param mc the managed connection
+ * @throws ResourceException for an generic error
+ * @throws ApplicationServerInternalException for problems in the application server
+ * @throws ResourceAllocationException for problems allocating resources
+ * @throws ResourceAdapterInternalException for errors from the resource adapter
+ */
+ void lazyEnlist(ManagedConnection mc) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,30 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+/**
+ * A marker interface for connections that support the lazy connection
+ * enlistment optimization.
+ */
+public interface LazyEnlistableManagedConnection
+{
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransaction.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransaction.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransaction.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,64 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * The LocalTransaction interface is for transactions which are managed locally
+ * to the underlying resource and don't need an external transaction manager.
+ *
+ * If a resource implements the LocalTransaction interface then the Application
+ * Server can choose to do local transacton optimization.
+ */
+public interface LocalTransaction
+{
+ /**
+ * Begins a local transaction on the userlying resource.
+ *
+ * @throws ResourceException for a generic error
+ * @throws LocalTransactionException for an error in transaciton management
+ * @throws ResourceAdapterInternalException for an internal error in the resource adapter
+ * @throws EISSystemException for an EIS specific exception
+ */
+ public void begin() throws ResourceException;
+
+ /**
+ * Commits a local transaction on the userlying resource.
+ *
+ * @throws ResourceException for a generic error
+ * @throws LocalTransactionException for an error in transaciton management
+ * @throws ResourceAdapterInternalException for an internal error in the resource adapter
+ * @throws EISSystemException for an EIS specific exception
+ */
+ public void commit() throws ResourceException;
+
+ /**
+ * Rolls back a local transaction on the userlying resource.
+ *
+ * @throws ResourceException for a generic error
+ * @throws LocalTransactionException for an error in transaciton management
+ * @throws ResourceAdapterInternalException for an internal error in the resource adapter
+ * @throws EISSystemException for an EIS specific exception
+ */
+ public void rollback() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransactionException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransactionException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/LocalTransactionException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,79 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A LocalTransactionException represents various error conditions related to
+ * local transaction management. Common error conditions which are indicated by
+ * this exception include failure to commit, attempt to start a transaction
+ * while inside a transaction, or any resource adapter transaction related
+ * error condition.
+ */
+public class LocalTransactionException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public LocalTransactionException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ */
+ public LocalTransactionException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ */
+ public LocalTransactionException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public LocalTransactionException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public LocalTransactionException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnection.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,143 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.io.PrintWriter;
+
+import javax.resource.ResourceException;
+import javax.security.auth.Subject;
+import javax.transaction.xa.XAResource;
+
+/**
+ * A ManagedConnection instance represents a connection to the underlying
+ * recource. A ManagedConnection provides access to the two transaction
+ * interfaces, XAResource and LocalTransaction. These interfaces are used to
+ * manage transactions on the resource.
+ */
+public interface ManagedConnection
+{
+ /**
+ * Creates a new connection handle for the underlying connection.
+ *
+ * @param subject the subject
+ * @param cxRequestInfo the connection request info
+ * @throws ResourceException for a generic error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ * @throws SecurityException for a security problem
+ * @throws CommException for a communication failure with the EIS
+ * @throws EISSystemException for an error from the EIS
+ */
+ public Object getConnection(Subject subject, ConnectionRequestInfo cxRequestInfo) throws ResourceException;
+
+ /**
+ * Destroys the connection to the underlying resource.
+ *
+ * @throws ResourceException for a generic error
+ * @throws IllegalStateException if the connection is not a legal state for destruction
+ */
+ public void destroy() throws ResourceException;
+
+ /**
+ * Application server calls this to force cleanup of connection.
+ * @throws ResourceException for a generic error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ * @throws IllegalStateException if the connection is not a legal state for cleanup
+ */
+ public void cleanup() throws ResourceException;
+
+ /**
+ * Associates a new application level connection handle with the connection.
+ *
+ * @param connection the connection
+ * @throws ResourceException for a generic error
+ * @throws IllegalStateException for an illegal state
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ */
+ public void associateConnection(Object connection) throws ResourceException;
+
+ /**
+ * Adds a connection event listener
+ *
+ * @param listener the listener
+ */
+ public void addConnectionEventListener(ConnectionEventListener listener);
+
+ /**
+ * Removes a connection event listener
+ *
+ * @param listener the listener
+ */
+ public void removeConnectionEventListener(ConnectionEventListener listener);
+
+ /**
+ * Returns an XAResource instance.
+ *
+ * @return the XAResource
+ * @throws ResourceException for a generic error
+ * @throws NotSupportedException if not supported
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ */
+ public XAResource getXAResource() throws ResourceException;
+
+ /**
+ * Returns a LocalTransaction instance.
+ *
+ * @return the local transaction
+ * @throws ResourceException for a generic error
+ * @throws NotSupportedException if not supported
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ */
+ public LocalTransaction getLocalTransaction() throws ResourceException;
+
+ /**
+ * Gets metadata inormation for this instances underlying resource manager
+ * instance.
+ *
+ * @return the managed connection meta data
+ * @throws ResourceException for a generic error
+ * @throws NotSupportedException if not supported
+ */
+ public ManagedConnectionMetaData getMetaData() throws ResourceException;
+
+ /**
+ * Gets the logwriter for this instance.
+ *
+ * @return the log writer
+ * @throws ResourceException for a generic error
+ */
+ public PrintWriter getLogWriter() throws ResourceException;
+
+ /**
+ * Sets the logwriter for this instance.
+ *
+ * @param out the writer
+ * @throws ResourceException for a generic error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ */
+ public void setLogWriter(PrintWriter out) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,125 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.io.PrintWriter;
+import java.io.Serializable;
+import java.util.Set;
+
+import javax.resource.ResourceException;
+import javax.security.auth.Subject;
+
+/**
+ * A ManagedConnectionFactory is a factory for the creation of
+ * ManagedConnection objects and ConnectionFactory objects. It provides methods
+ * which can be used to match ManagedConnetions.
+ */
+public interface ManagedConnectionFactory extends Serializable
+{
+ /**
+ * Creates a connection factory instance. The connection manager is provided
+ * by the resource adapter.
+ *
+ * @return the connection factory
+ * @throws ResourceException for a generic error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ */
+ public Object createConnectionFactory() throws ResourceException;
+
+ /**
+ * Creates a connection factory instance. the connection manager is provided
+ * by the application server
+ *
+ * @param cxManager the connection manager
+ * @return the connection factory
+ * @throws ResourceException for a generic error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ */
+ public Object createConnectionFactory(ConnectionManager cxManager) throws ResourceException;
+
+ /**
+ * Creates a new ManagedConnection
+ *
+ * @param subject the subject
+ * @param cxRequestInfo the connection request info
+ * @return the managed connection
+ * @throws ResourceException for a generic error
+ * @throws ResourceAllocationException for an error allocting resources
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ * @throws SecurityException for a security problem
+ * @throws EISSystemException for an error from the EIS
+ */
+ public ManagedConnection createManagedConnection(Subject subject, ConnectionRequestInfo cxRequestInfo)
+ throws ResourceException;
+
+ /**
+ * Returns a matching connection from the set.
+ *
+ * @param connectionSet the connection set
+ * @param subject the subject
+ * @param cxRequestInfo the connection request info
+ * @return the managed connection
+ * @throws ResourceException for a generic error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ * @throws SecurityException for a security problem
+ * @throws NotSupportedException if not supported
+ */
+ public ManagedConnection matchManagedConnections(Set connectionSet, Subject subject,
+ ConnectionRequestInfo cxRequestInfo) throws ResourceException;
+
+ /**
+ * Gets the logwriter for this instance.
+ *
+ * @return the log writer
+ * @throws ResourceException for a generic error
+ */
+ public PrintWriter getLogWriter() throws ResourceException;
+
+ /**
+ * Sets the logwriter for this instance.
+ *
+ * @param out the log writer
+ * @throws ResourceException for a generic error
+ * @throws ResourceAdapterInternalException for an internal error in the
+ * resource adapter
+ */
+ public void setLogWriter(PrintWriter out) throws ResourceException;
+
+ /**
+ * Tests object for equality
+ *
+ * @param other the other object
+ * @return true when equals, false otherwise
+ */
+ public boolean equals(Object other);
+
+ /**
+ * Generates a hashCode for this object
+ *
+ * @return the hash code
+ */
+ public int hashCode();
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,66 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * The ManagedConnectionMetaData interface provides information about the
+ * underlying resource associated with a ManagedConnetion. The Application
+ * Server can use this information to get information at runtime from the
+ * underlying resource.
+ */
+public interface ManagedConnectionMetaData
+{
+ /**
+ * Returns product name of the underlying resource.
+ *
+ * @return the product name
+ * @throws ResourceException for a generic error
+ */
+ public String getEISProductName() throws ResourceException;
+
+ /**
+ * Returns product version of the underlying resource.
+ *
+ * @return the product version
+ * @throws ResourceException for a generic error
+ */
+ public String getEISProductVersion() throws ResourceException;
+
+ /**
+ * Returns the maximum supported number of connections allowed to the
+ * underlying resource.
+ *
+ * @return the maximum number of connections
+ * @throws ResourceException for a generic error
+ */
+ public int getMaxConnections() throws ResourceException;
+
+ /**
+ * Returns user name associated with the underlying connection.
+ *
+ * @return the user name
+ * @throws ResourceException for a generic error
+ */
+ public String getUserName() throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapter.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapter.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapter.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,73 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+import javax.resource.spi.endpoint.MessageEndpointFactory;
+import javax.transaction.xa.XAResource;
+
+/**
+ * Operations for lifecycle management and message endpoint configuration.
+ * Implementations of this interface must be javabeans
+ */
+public interface ResourceAdapter
+{
+ /**
+ * Used to bootstrap the resource adapter
+ *
+ * @param ctx the bootstrap context
+ * @throws ResourceAdapterInternalException for a bootstrap failure
+ */
+ void start(BootstrapContext ctx) throws ResourceAdapterInternalException;
+
+ /**
+ * Used to stop the resource adapter
+ */
+ void stop();
+
+ /**
+ * Activates the endpoint factory
+ *
+ * @param endpointFactory the endpoint factory
+ * @param spec the activation spec
+ * @throws ResourceException for a generic error
+ * @throws NotSupportedException for incorrect activation
+ */
+ void endpointActivation(MessageEndpointFactory endpointFactory, ActivationSpec spec) throws ResourceException;
+
+ /**
+ * Deactivates the endpoint
+ *
+ * @param endpointFactory the endpoint factory
+ * @param spec the activation spec
+ */
+ void endpointDeactivation(MessageEndpointFactory endpointFactory, ActivationSpec spec);
+
+ /**
+ * Called by the application server during recovery
+ *
+ * @param specs the activation specs
+ * @return the XAResources used to perform the recovery
+ * @throws ResourceException for a generic error
+ */
+ XAResource[] getXAResources(ActivationSpec[] specs) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * Interface used to associate the resource adapter with objects that implement
+ * this interface.
+ */
+public interface ResourceAdapterAssociation
+{
+ /**
+ * Retrieve the resource adapter
+ *
+ * @return the resource adapter
+ */
+ ResourceAdapter getResourceAdapter();
+
+ /**
+ * Set the resource adapter
+ *
+ * @param the resource adapter
+ * @throws ResourceException for any error
+ * @throws ResourceAdapterInternalException for an error in the resource adapter
+ * @throws IllegalStateException if invoked more than once
+ */
+ void setResourceAdapter(ResourceAdapter ra) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,78 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A ResourceAdapterInternalException indicates any system level error
+ * conditions related to a resource adapter. Examples are invalid
+ * configuration, failure to create a connection to an underlying resource,
+ * other error condition internal to the resource adapter.
+ */
+public class ResourceAdapterInternalException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public ResourceAdapterInternalException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ */
+ public ResourceAdapterInternalException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ */
+ public ResourceAdapterInternalException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public ResourceAdapterInternalException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public ResourceAdapterInternalException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAllocationException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAllocationException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ResourceAllocationException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,75 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A ResourceAllocationException can be thrown to indicate a failure to
+ * allocate system resources such as threads or physical connections.
+ */
+public class ResourceAllocationException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public ResourceAllocationException()
+ {
+ super();
+ }
+ /**
+ * Create an exception with a reason.
+ */
+ public ResourceAllocationException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ */
+ public ResourceAllocationException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public ResourceAllocationException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public ResourceAllocationException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SecurityException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SecurityException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SecurityException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,78 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * A SecurityException indicates error conditions related to the security
+ * contract between an application server and a resource adapter. Common types
+ * of conditions represented by this exception include: invalid security
+ * information - subject, failure to connect, failure to authenticate, access
+ * control exception.
+ */
+public class SecurityException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public SecurityException()
+ {
+ super();
+ }
+ /**
+ * Create an exception with a reason.
+ */
+ public SecurityException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ */
+ public SecurityException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and cause.
+ *
+ * @param reason the reason
+ * @param cause the cause
+ */
+ public SecurityException(String reason, Throwable cause)
+ {
+ super(reason, cause);
+ }
+
+ /**
+ * Create an exception with a cause.
+ *
+ * @param cause the cause
+ */
+ public SecurityException(Throwable cause)
+ {
+ super(cause);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SharingViolationException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SharingViolationException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/SharingViolationException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,80 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * Thrown when a shared connection is used in an unshareable manner.
+ */
+public class SharingViolationException extends ResourceException
+{
+ /**
+ * Create an exception.
+ */
+ public SharingViolationException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public SharingViolationException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public SharingViolationException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public SharingViolationException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create an exception with an error.
+ *
+ * @param throwable the error
+ */
+ public SharingViolationException(Throwable throwable)
+ {
+ super(throwable);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/UnavailableException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/UnavailableException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/UnavailableException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,80 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.resource.ResourceException;
+
+/**
+ * Thrown when a service is unavailable
+ */
+public class UnavailableException extends ResourceException
+{
+ /**
+ * Create an unavailable exception.
+ */
+ public UnavailableException()
+ {
+ super();
+ }
+
+ /**
+ * Create an unavailable exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public UnavailableException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an unavailable exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public UnavailableException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an unavailable exception with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public UnavailableException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create an unavailable exception with an error.
+ *
+ * @param throwable the error
+ */
+ public UnavailableException(Throwable throwable)
+ {
+ super(throwable);
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,41 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import java.util.Set;
+
+import javax.resource.ResourceException;
+
+/**
+ * A mixin interface for connection factories that can validate their managed connections
+ */
+public interface ValidatingManagedConnectionFactory
+{
+ /**
+ * Returns the invalid connections in a set
+ *
+ * @param connectionSet the set of connections to validate
+ * @return the set of invalid connections
+ * @throws ResourceException for a generic error
+ */
+ Set getInvalidConnections(Set connectionSet) throws ResourceException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/XATerminator.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/XATerminator.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/XATerminator.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,73 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi;
+
+import javax.transaction.xa.XAException;
+import javax.transaction.xa.Xid;
+
+/**
+ * Transaction completion and crash recovery
+ */
+public interface XATerminator
+{
+ /**
+ * Commit the transaction
+ *
+ * @param xid the xid
+ * @param onePhase true for one phase commit, false for two phase
+ * @throws XAException for an error
+ */
+ void commit(Xid xid, boolean onePhase) throws XAException;
+
+ /**
+ * Forget the transaction
+ *
+ * @param xid the xid
+ * @throws XAException for an error
+ */
+ void forget(Xid xid) throws XAException;
+
+ /**
+ * Prepare the transaction
+ *
+ * @param xid the xid
+ * @return Either XA_RDONLY or XA_OK
+ * @throws XAException for an error
+ */
+ int prepare(Xid xid) throws XAException;
+
+ /**
+ * Rollback the transaction
+ *
+ * @param xid the xid
+ * @throws XAException for an error
+ */
+ void rollback(Xid xid) throws XAException;
+
+ /**
+ * Retrieve xids that are recoverable
+ *
+ * @param flag the recovery option
+ * @throws XAException for an error
+ */
+ Xid[] recover(int flag) throws XAException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,63 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.endpoint;
+
+import java.lang.reflect.Method;
+
+import javax.resource.ResourceException;
+
+/**
+ * A factory for message end points
+ */
+public interface MessageEndpoint
+{
+ /**
+ * Invoked before delivery
+ *
+ * @param method the method on the endpoint
+ * @throws NoSuchMethodException when there is no such method
+ * @throws ResourceException for a generic error
+ * @throws ApplicationServerInternalException for an error in the
+ * application server
+ * @throws IllegalStateException when not in the correct state, eg. before
+ * and after delivery are not paired
+ * @throws UnavailableException when the endpoint is unavailable
+ */
+ void beforeDelivery(Method method) throws NoSuchMethodException, ResourceException;
+
+ /**
+ * Invoked after delivery
+ *
+ * @throws ResourceException for a generic error
+ * @throws ApplicationServerInternalException for an error in the
+ * application server
+ * @throws IllegalStateException when not in the correct state, eg. before
+ * and after delivery are not paired
+ * @throws UnavailableException when the endpoint is unavailable
+ */
+ void afterDelivery() throws ResourceException;
+
+ /**
+ * Release the endpoint
+ */
+ void release();
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.endpoint;
+
+import java.lang.reflect.Method;
+
+import javax.resource.spi.UnavailableException;
+import javax.transaction.xa.XAResource;
+
+/**
+ * A factory for message end points
+ */
+public interface MessageEndpointFactory
+{
+ /**
+ * Creates a message endpoint
+ *
+ * @param resource the xa resource
+ * @return the message endpoint
+ * @throws UnavailableException a transient failure in the endpoint
+ */
+ MessageEndpoint createEndpoint(XAResource resource) throws UnavailableException;
+
+ /**
+ * Tests whether the delivery is transactional for the given method
+ *
+ * @param method the method to test
+ * @return true for transacted delivery, false otherwise
+ * @throws NoSuchMethodException if there is no such method for the endpoint
+ */
+ boolean isDeliveryTransacted(Method method) throws NoSuchMethodException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/package.html
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/package.html (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/endpoint/package.html 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+ <head>
+ <!-- $Id: package.html 18252 2003-12-18 17:14:00Z ejort $ -->
+ <!--
+
+ JBoss: The OpenSource J2EE WebOS
+
+ Distributable under LGPL license.
+ See terms of license at gnu.org.
+
+ -->
+ </head>
+
+ <body bgcolor="white">
+ <p>J2EE Connector API - Message Endpoint.
+
+ <h2>Package Specification</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/1.4/docs/api/index.html">Specified javadocs</a>
+ </ul>
+
+ <h2>Related Documentation</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/connector/download.html">The specification</a>
+ </ul>
+
+ <h2>Package Status</h2>
+ <ul>
+ <li><font color="green"><b>STABLE</b></font>
+ </ul>
+
+ <!-- Put @see and @since tags down here. -->
+
+ </body>
+</html>
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/package.html
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/package.html (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/package.html 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+ <head>
+ <!-- $Id: package.html 18252 2003-12-18 17:14:00Z ejort $ -->
+ <!--
+
+ JBoss: The OpenSource J2EE WebOS
+
+ Distributable under LGPL license.
+ See terms of license at gnu.org.
+
+ -->
+ </head>
+
+ <body bgcolor="white">
+ <p>J2EE Connector API - System Programmer Interface.
+
+ <h2>Package Specification</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/1.4/docs/api/index.html">Specified javadocs</a>
+ </ul>
+
+ <h2>Related Documentation</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/connector/download.html">The specification</a>
+ </ul>
+
+ <h2>Package Status</h2>
+ <ul>
+ <li><font color="green"><b>STABLE</b></font>
+ </ul>
+
+ <!-- Put @see and @since tags down here. -->
+
+ </body>
+</html>
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/GenericCredential.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/GenericCredential.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/GenericCredential.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,74 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.security;
+
+import javax.resource.spi.SecurityException;
+
+/**
+ * The interface GenericCredential defines a method of representing a security
+ * credential for a resource which is independent of the security mechanism. It
+ * can be used to wrap any type of underlying credentials, for example it could
+ * be used to wrap Kerberos credentials. This allows the resource adapter to
+ * utilize the credentials for sign-on to the EIS.
+ *
+ * @deprecated Use org.ietf.jgss.GSSCredential
+ */
+public interface GenericCredential
+{
+ /**
+ * Gets security data from the credential.
+ *
+ * @deprecated Use org.ietf.jgss.GSSCredential
+ * @return Credential data
+ */
+ public byte[] getCredentialData() throws SecurityException;
+
+ /**
+ * Returns the mechanism type for the credential
+ *
+ * @deprecated Use org.ietf.jgss.GSSCredential
+ * @return Mechanism Type
+ */
+ public String getMechType();
+
+ /**
+ * Returns the name of the principal associated with the credential
+ *
+ * @deprecated Use org.ietf.jgss.GSSCredential
+ * @return Principal name
+ */
+ public String getName();
+
+ /**
+ * Tests object for equality
+ *
+ * @deprecated Use org.ietf.jgss.GSSCredential
+ */
+ public boolean equals(Object other);
+
+ /**
+ * Generates a hashCode for this object
+ *
+ * @deprecated Use org.ietf.jgss.GSSCredential
+ */
+ public int hashCode();
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/PasswordCredential.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/PasswordCredential.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/PasswordCredential.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,115 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.security;
+
+import java.io.Serializable;
+import java.util.Arrays;
+
+import javax.resource.spi.ManagedConnectionFactory;
+
+/**
+ * The class PasswordCredential is a placeholder for username and password.
+ * @version $Revision: 37459 $
+ */
+public final class PasswordCredential implements Serializable
+{
+ static final long serialVersionUID = -1770833344350711674L;
+
+ /** The userName */
+ private String userName;
+ /** The password */
+ private char[] password;
+
+ /** The managed connection factory */
+ private ManagedConnectionFactory mcf = null;
+
+ /**
+ * Constructor, creates a new password credential
+ *
+ * @param userName the user name
+ * @param password the password
+ */
+ public PasswordCredential(String userName, char[] password)
+ {
+ this.userName = userName;
+ this.password = password;
+ }
+
+ /**
+ * Returns the username
+ *
+ * @return Username
+ */
+ public String getUserName()
+ {
+ return userName;
+ }
+
+ /**
+ * Returns the password
+ *
+ * @return password
+ */
+ public char[] getPassword()
+ {
+ return password;
+ }
+
+ /**
+ * Get the managed connection factory associated with this username password
+ * pair.
+ *
+ * @return the managed connection factory
+ */
+ public ManagedConnectionFactory getManagedConnectionFactory()
+ {
+ return mcf;
+ }
+
+ /**
+ * Set the managed connection factory associated with this username password
+ * pair.
+ *
+ * @param mcf the managed connection factory
+ */
+ public void setManagedConnectionFactory(ManagedConnectionFactory mcf)
+ {
+ this.mcf = mcf;
+ }
+
+ public boolean equals(Object other)
+ {
+ if (this == other)
+ return true;
+ if (other == null || getClass() != other.getClass())
+ return false;
+ final PasswordCredential otherCredential = (PasswordCredential) other;
+ if( userName == null && userName != otherCredential.userName )
+ return false;
+ return userName.equals(otherCredential.userName) && Arrays.equals(password, otherCredential.password);
+ }
+
+ public int hashCode()
+ {
+ return userName.hashCode();
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/package.html
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/package.html (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/security/package.html 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+ <head>
+ <!-- $Id: package.html 18252 2003-12-18 17:14:00Z ejort $ -->
+ <!--
+
+ JBoss: The OpenSource J2EE WebOS
+
+ Distributable under LGPL license.
+ See terms of license at gnu.org.
+
+ -->
+ </head>
+
+ <body bgcolor="white">
+ <p>J2EE Connector API - Security.
+
+ <h2>Package Specification</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/1.4/docs/api/index.html">Specified javadocs</a>
+ </ul>
+
+ <h2>Related Documentation</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/connector/download.html">The specification</a>
+ </ul>
+
+ <h2>Package Status</h2>
+ <ul>
+ <li><font color="green"><b>STABLE</b></font>
+ </ul>
+
+ <!-- Put @see and @since tags down here. -->
+
+ </body>
+</html>
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/ExecutionContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/ExecutionContext.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/ExecutionContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,81 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+import javax.resource.NotSupportedException;
+import javax.transaction.xa.Xid;
+
+/**
+ * An execution context provides context information for work, e.g.
+ * transaction, security, etc.
+ */
+public class ExecutionContext
+{
+ /** The xid */
+ private Xid xid;
+ /** The timeout */
+ private long timeout = WorkManager.UNKNOWN;
+
+ /**
+ * Get the xid
+ *
+ * @return the xid
+ */
+ public Xid getXid()
+ {
+ return xid;
+ }
+
+ /**
+ * Set the xid
+ *
+ * @param xid the xid
+ */
+ public void setXid(Xid xid)
+ {
+ this.xid = xid;
+ }
+
+ /**
+ * Get the transaction timeout
+ *
+ * @return the transaction timeout or WorkManager.UNKNOWN for an invalid or
+ * unspecified value
+ */
+ public long getTransactionTimeout()
+ {
+ return timeout;
+ }
+
+ /**
+ * Set the transaction timeout
+ *
+ * @param timeout the timeout
+ * @throws NotSupportedException for an invalid timeout
+ */
+ public void setTransactionTimeout(long timeout) throws NotSupportedException
+ {
+ if (timeout < 0)
+ throw new NotSupportedException("Illegal timeout " + timeout);
+ this.timeout = timeout;
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/Work.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/Work.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/Work.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,33 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+/**
+ * Work submitted to a work manager
+ */
+public interface Work extends Runnable
+{
+ /**
+ * Invoked by the work manager as a hint to stop processing
+ */
+ void release();
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkAdapter.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkAdapter.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkAdapter.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+/**
+ * A helper for work listener implementations
+ */
+public class WorkAdapter implements WorkListener
+{
+ public void workAccepted(WorkEvent e)
+ {
+ }
+
+ public void workCompleted(WorkEvent e)
+ {
+ }
+
+ public void workRejected(WorkEvent e)
+ {
+ }
+
+ public void workStarted(WorkEvent e)
+ {
+ }
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkCompletedException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkCompletedException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkCompletedException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,80 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+import javax.resource.ResourceException;
+
+/**
+ * An error thrown when work is completed.
+ */
+public class WorkCompletedException extends WorkException
+{
+ /**
+ * Create an exception.
+ */
+ public WorkCompletedException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public WorkCompletedException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public WorkCompletedException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public WorkCompletedException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create an exception with an error.
+ *
+ * @param throwable the error
+ */
+ public WorkCompletedException(Throwable throwable)
+ {
+ super(throwable);
+ }
+}
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkEvent.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkEvent.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkEvent.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,203 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+import java.util.EventObject;
+import java.io.ObjectStreamField;
+import java.io.ObjectInputStream;
+import java.io.IOException;
+import java.io.ObjectOutputStream;
+
+import org.jboss.util.id.SerialVersion;
+
+/**
+ * Events that occur on work
+ * @version $Revision: 37459 $
+ */
+public class WorkEvent extends EventObject
+{
+ /** @since 4.0.2 */
+ static final long serialVersionUID;
+
+ // Constants -----------------------------------------------------
+ /**
+ * These field names match the j2ee 1.4.1 ri version names
+ */
+ private static final ObjectStreamField[] serialPersistentFields;
+ private static final int TYPE_IDX = 0;
+ private static final int WORK_IDX = 1;
+ private static final int EXCPEPTION_IDX = 2;
+ private static final int DURATION_IDX = 2;
+
+ /** The WORK_ACCEPTED value */
+ public static final int WORK_ACCEPTED = 1;
+ /** The WORK_REJECTED value */
+ public static final int WORK_REJECTED = 2;
+ /** The WORK_STARTED value */
+ public static final int WORK_STARTED = 3;
+ /** The WORK_COMPLETED value */
+ public static final int WORK_COMPLETED = 4;
+
+ static
+ {
+ if (SerialVersion.version == SerialVersion.LEGACY)
+ {
+ serialVersionUID = 6971276136970053051L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField type int */
+ new ObjectStreamField("type", int.class),
+ /** @serialField work Work */
+ new ObjectStreamField("work", Work.class),
+ /** @serialField exception WorkException */
+ new ObjectStreamField("e", WorkException.class),
+ /** @serialField startDuration long */
+ new ObjectStreamField("startDuration", long.class)
+ };
+ }
+ else
+ {
+ // j2ee 1.4.1 RI values
+ serialVersionUID = -3063612635015047218L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField type int */
+ new ObjectStreamField("type", int.class),
+ /** @serialField work Work */
+ new ObjectStreamField("work", Work.class),
+ /** @serialField exception WorkException */
+ new ObjectStreamField("exception", WorkException.class),
+ /** @serialField startDuration long */
+ new ObjectStreamField("startDuration", long.class)
+ };
+ }
+ }
+
+ /** The event type */
+ private int type;
+ /** The work */
+ private Work work;
+ /** The exception */
+ private WorkException e;
+ /** The start delay in millis */
+ private long startDuration;
+
+ /**
+ * Create a new WorkEvent
+ *
+ * @param source the source of the event
+ * @param type the type
+ * @param work the work
+ * @param e the exception
+ */
+ public WorkEvent(Object source, int type, Work work, WorkException e)
+ {
+ this(source, type, work, e, 0l);
+ }
+
+ /**
+ * Create a new WorkEvent
+ *
+ * @param source the source of the event
+ * @param type the type
+ * @param work the work
+ * @param e the exception
+ * @param startDuration the delay in the start in milliseconds
+ */
+ public WorkEvent(Object source, int type, Work work, WorkException e, long startDuration)
+ {
+ super(source);
+ this.type = type;
+ this.work = work;
+ this.e = e;
+ this.startDuration = startDuration;
+ }
+
+ /**
+ * Get the type
+ *
+ * @return the type
+ */
+ public int getType()
+ {
+ return type;
+ }
+
+ /**
+ * Get the work
+ *
+ * @return the work
+ */
+ public Work getWork()
+ {
+ return work;
+ }
+
+ /**
+ * Get the exception
+ *
+ * @return the work exception
+ */
+ public WorkException getException()
+ {
+ return e;
+ }
+
+ /**
+ * Get the start duration
+ *
+ * @return the start duration
+ */
+ public long getStartDuration()
+ {
+ return startDuration;
+ }
+
+ // Private -------------------------------------------------------
+ private void readObject(ObjectInputStream ois)
+ throws ClassNotFoundException, IOException
+ {
+ ObjectInputStream.GetField fields = ois.readFields();
+ String name = serialPersistentFields[TYPE_IDX].getName();
+ this.type = fields.get(name, 0);
+ name = serialPersistentFields[WORK_IDX].getName();
+ this.work = (Work) fields.get(name, null);
+ name = serialPersistentFields[EXCPEPTION_IDX].getName();
+ this.e = (WorkException) fields.get(name, null);
+ name = serialPersistentFields[DURATION_IDX].getName();
+ this.startDuration = fields.get(name, 0L);
+ }
+
+ private void writeObject(ObjectOutputStream oos)
+ throws IOException
+ {
+ // Write j2ee 1.4.1 RI field names
+ ObjectOutputStream.PutField fields = oos.putFields();
+ String name = serialPersistentFields[TYPE_IDX].getName();
+ fields.put(name, type);
+ name = serialPersistentFields[WORK_IDX].getName();
+ fields.put(name, work);
+ name = serialPersistentFields[EXCPEPTION_IDX].getName();
+ fields.put(name, e);
+ name = serialPersistentFields[DURATION_IDX].getName();
+ fields.put(name, startDuration);
+ oos.writeFields();
+ }
+}
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,91 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+import javax.resource.ResourceException;
+
+/**
+ * Thrown when there is an error handling work.
+ */
+public class WorkException extends ResourceException
+{
+ /** An internal error */
+ public static final String INTERNAL = "-1";
+ /** An undefined error */
+ public static final String UNDEFINED = "0";
+ /** Expiration before work was started */
+ public static final String START_TIMED_OUT = "1";
+ /** Not allowed to do concurrent work on a transaction */
+ public static final String TX_CONCURRENT_WORK_DISALLOWED = "2";
+ /** Could not recreate the transaction context */
+ public static final String TX_RECREATE_FAILED = "3";
+
+ /**
+ * Create an exception.
+ */
+ public WorkException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public WorkException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public WorkException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public WorkException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create an exception with an error.
+ *
+ * @param throwable the error
+ */
+ public WorkException(Throwable throwable)
+ {
+ super(throwable);
+ }
+}
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkListener.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkListener.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkListener.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,59 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+import java.util.EventListener;
+
+/**
+ * Listens to events on work
+ * @version $Revision: 37459 $
+ */
+public interface WorkListener extends EventListener
+{
+ /**
+ * Invoked when work is accepted
+ *
+ * @param e the event
+ */
+ void workAccepted(WorkEvent e);
+
+ /**
+ * Invoked when work is rejected
+ *
+ * @param e the event
+ */
+ void workRejected(WorkEvent e);
+
+ /**
+ * Invoked when work is started
+ *
+ * @param e the event
+ */
+ void workStarted(WorkEvent e);
+
+ /**
+ * Invoked when work is completed
+ *
+ * @param e the event
+ */
+ void workCompleted(WorkEvent e);
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkManager.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,105 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+
+/**
+ * Interface used to associate the resource adapter with objects that implement
+ * this interface.
+ */
+public interface WorkManager
+{
+ /** Unknown/unspecified start delay */
+ static final long UNKNOWN = -1l;
+ /** No start delay */
+ static final long IMMEDIATE = 0l;
+ /** Indefinite start delay */
+ static final long INDEFINITE = Long.MAX_VALUE;
+
+ /**
+ * Executes the work, the call blocks until the work completes
+ *
+ * @param work the work
+ * @throws WorkException a generic error
+ * @throws WorkRejectedException if the work is rejected
+ * @throws WorkCompletedException if the work completes with an exception
+ */
+ void doWork(Work work) throws WorkException;
+
+ /**
+ * Executes the work, the call blocks until the work completes
+ *
+ * @param work the work
+ * @param startTimeout the wait before execution
+ * @param ctx the execution context
+ * @param listener the work listener
+ * @throws WorkException a generic error
+ * @throws WorkRejectedException if the work is rejected
+ * @throws WorkCompletedException if the work completes with an exception
+ */
+ void doWork(Work work, long startTimeout, ExecutionContext ctx, WorkListener listener) throws WorkException;
+
+ /**
+ * Executes the work, the call blocks until the work starts
+ *
+ * @param work the work
+ * @return the time elapsed until the work starts
+ * @throws WorkException a generic error
+ * @throws WorkRejectedException if the work is rejected
+ */
+ long startWork(Work work) throws WorkException;
+
+
+ /**
+ * Executes the work, the call blocks until the work starts
+ *
+ * @param work the work
+ * @param startTimeout the wait before execution
+ * @param ctx the execution context
+ * @param listener the work listener
+ * @return the time elapsed until the work starts
+ * @throws WorkException a generic error
+ * @throws WorkRejectedException if the work is rejected
+ */
+ long startWork(Work work, long startTimeout, ExecutionContext ctx, WorkListener listener) throws WorkException;
+
+ /**
+ * Executes the work, the call returns immediatley
+ *
+ * @param work the work
+ * @throws WorkException a generic error
+ * @throws WorkRejectedException if the work is rejected
+ */
+ void scheduleWork(Work work) throws WorkException;
+
+ /**
+ * Executes the work, the call returns immediately
+ *
+ * @param work the work
+ * @param startTimeout the wait before execution
+ * @param ctx the execution context
+ * @param listener the work listener
+ * @throws WorkException a generic error
+ * @throws WorkRejectedException if the work is rejected
+ */
+ void scheduleWork(Work work, long startTimeout, ExecutionContext ctx, WorkListener listener) throws WorkException;
+}
\ No newline at end of file
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkRejectedException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkRejectedException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/WorkRejectedException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,80 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.resource.spi.work;
+
+import javax.resource.ResourceException;
+
+/**
+ * Thrown when a work is rejected.
+ */
+public class WorkRejectedException extends WorkException
+{
+ /**
+ * Create an exception.
+ */
+ public WorkRejectedException()
+ {
+ super();
+ }
+
+ /**
+ * Create an exception with a reason.
+ *
+ * @param reason the reason
+ */
+ public WorkRejectedException(String reason)
+ {
+ super(reason);
+ }
+
+ /**
+ * Create an exception with a reason and an errorCode.
+ *
+ * @param reason the reason
+ * @param errorCode the error code
+ */
+ public WorkRejectedException(String reason, String errorCode)
+ {
+ super(reason, errorCode);
+ }
+
+ /**
+ * Create an exception with a reason and an error.
+ *
+ * @param reason the reason
+ * @param throwable the error
+ */
+ public WorkRejectedException(String reason, Throwable throwable)
+ {
+ super(reason, throwable);
+ }
+
+ /**
+ * Create an exception with an error.
+ *
+ * @param throwable the error
+ */
+ public WorkRejectedException(Throwable throwable)
+ {
+ super(throwable);
+ }
+}
Added: projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/package.html
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/package.html (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.5_spec/src/main/javax/resource/spi/work/package.html 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+ <head>
+ <!-- $Id: package.html 18252 2003-12-18 17:14:00Z ejort $ -->
+ <!--
+
+ JBoss: The OpenSource J2EE WebOS
+
+ Distributable under LGPL license.
+ See terms of license at gnu.org.
+
+ -->
+ </head>
+
+ <body bgcolor="white">
+ <p>J2EE Connector API - Work Management.
+
+ <h2>Package Specification</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/1.4/docs/api/index.html">Specified javadocs</a>
+ </ul>
+
+ <h2>Related Documentation</h2>
+ <ul>
+ <li><a href="http://java.sun.com/j2ee/connector/download.html">The specification</a>
+ </ul>
+
+ <h2>Package Status</h2>
+ <ul>
+ <li><font color="green"><b>STABLE</b></font>
+ </ul>
+
+ <!-- Put @see and @since tags down here. -->
+
+ </body>
+</html>
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/NotSupportedException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/NotSupportedException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/NotSupportedException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
-
package javax.resource;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* A <code>NotSupportedException</code> is thrown to indicate that
* callee (resource adapter
@@ -38,50 +40,89 @@
* @author Ram Jeyaraman
*/
-public class NotSupportedException extends javax.resource.ResourceException {
-
- /**
- * Constructs a new instance with null as its detail message.
- */
- public NotSupportedException() { super(); }
+public class NotSupportedException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public NotSupportedException(String message) {
- super(message);
- }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public NotSupportedException(Throwable cause) {
- super(cause);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 1510031578141681454L;
+ }
+ else
+ {
+ serialVersionUID = -5433838894743521833L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public NotSupportedException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public NotSupportedException(String message)
+ {
+ super(message);
+ }
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public NotSupportedException(String message, Throwable cause) {
- super(message, cause);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public NotSupportedException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public NotSupportedException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
- /**
- * Constructs a new throwable with the specified detail message and
- * error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public NotSupportedException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public NotSupportedException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/Referenceable.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/Referenceable.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/Referenceable.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource;
@@ -39,18 +39,16 @@
*
**/
-public interface Referenceable extends javax.naming.Referenceable {
-
- /** Sets the Reference instance. This method is called by the
- * deployment code to set the Reference that can be later
- * returned by the getReference method (as defined in the
- * javax.naming.Referenceable interface).
- *
- * @param reference A Reference instance
- * @see javax.naming.Referenceable#getReference
- *
- **/
- public
- void setReference(Reference reference);
-
+public interface Referenceable extends javax.naming.Referenceable
+{
+ /** Sets the Reference instance. This method is called by the
+ * deployment code to set the Reference that can be later
+ * returned by the getReference method (as defined in the
+ * javax.naming.Referenceable interface).
+ *
+ * @param reference A Reference instance
+ * @see javax.naming.Referenceable#getReference
+ *
+ **/
+ public void setReference(Reference reference);
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/ResourceException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/ResourceException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/ResourceException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
-
package javax.resource;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* This is the root interface of the exception hierarchy defined
* for the Connector architecture.
@@ -31,13 +33,13 @@
* <UL>
* <LI> A resource adapter vendor specific string describing the error.
* This string is a standard Java exception message and is available
- * through getMessage() method.
- * <LI> resource adapter vendor specific error code.
+ * through getMessage() method.</LI>
+ * <LI> resource adapter vendor specific error code.</LI>
* <LI> reference to another exception. Often a resource exception
* will be result of a lower level problem. If appropriate, this
* lower level exception can be linked to the ResourceException.
* Note, this has been deprecated in favor of J2SE release 1.4 exception
- * chaining facility.
+ * chaining facility.</LI>
* </UL>
*
* @version 1.0
@@ -45,121 +47,167 @@
* @author Ram Jeyaraman
*/
-public class ResourceException extends java.lang.Exception {
+public class ResourceException extends Exception
+{
+ /** Serial version UID */
+ private static final long serialVersionUID;
- /** Vendor specific error code */
- private String errorCode;
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /** reference to another exception */
- private Exception linkedException;
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 4770679801401540475L;
+ }
+ else
+ {
+ serialVersionUID = 547071213627824490L;
+ }
+ }
- /**
- * Constructs a new instance with null as its detail message.
- */
- public ResourceException() { super(); }
-
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public ResourceException(String message) {
- super(message);
- }
-
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public ResourceException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public ResourceException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Create a new throwable with the specified message and error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public ResourceException(String message, String errorCode) {
- super(message);
- this.errorCode = errorCode;
- }
-
- /**
- * Set the error code.
- *
- * @param errorCode the error code.
- */
- public void setErrorCode(String errorCode) {
- this.errorCode = errorCode;
- }
-
- /**
- * Get the error code.
- *
- * @return the error code.
- */
- public String getErrorCode() {
- return this.errorCode;
- }
-
- /**
- * Get the exception linked to this ResourceException
- *
- * @return linked Exception, null if none
- *
- * @deprecated J2SE release 1.4 supports a chained exception facility
- * that allows any throwable to know about another throwable, if any,
- * that caused it to get thrown. Refer to <code>getCause</code> and
- * <code>initCause</code> methods of the
- * <code>java.lang.Throwable</code> class..
- */
- public Exception getLinkedException() {
- return (linkedException);
- }
-
- /**
- * Add a linked Exception to this ResourceException.
- *
- * @param ex linked Exception
- *
- * @deprecated J2SE release 1.4 supports a chained exception facility
- * that allows any throwable to know about another throwable, if any,
- * that caused it to get thrown. Refer to <code>getCause</code> and
- * <code>initCause</code> methods of the
- * <code>java.lang.Throwable</code> class.
- */
- public void setLinkedException(Exception ex) {
- linkedException = ex;
- }
-
- /**
- * Returns a detailed message string describing this exception.
- *
- * @return a detailed message string.
- */
- public String getMessage() {
- String msg = super.getMessage();
- String ec = getErrorCode();
- if ((msg == null) && (ec == null)) {
- return null;
- }
- if ((msg != null) && (ec != null)) {
- return (msg + ", error code: " + ec);
- }
- return ((msg != null) ? msg : ("error code: " + ec));
- }
+ /** Vendor specific error code */
+ private String errorCode;
+
+ /** reference to another exception */
+ private Exception linkedException;
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public ResourceException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public ResourceException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public ResourceException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public ResourceException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Create a new throwable with the specified message and error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public ResourceException(String message, String errorCode)
+ {
+ super(message);
+ this.errorCode = errorCode;
+ }
+
+ /**
+ * Set the error code.
+ *
+ * @param errorCode the error code.
+ */
+ public void setErrorCode(String errorCode)
+ {
+ this.errorCode = errorCode;
+ }
+
+ /**
+ * Get the error code.
+ *
+ * @return the error code.
+ */
+ public String getErrorCode()
+ {
+ return this.errorCode;
+ }
+
+ /**
+ * Get the exception linked to this ResourceException
+ *
+ * @return linked Exception, null if none
+ *
+ * @deprecated J2SE release 1.4 supports a chained exception facility
+ * that allows any throwable to know about another throwable, if any,
+ * that caused it to get thrown. Refer to <code>getCause</code> and
+ * <code>initCause</code> methods of the
+ * <code>java.lang.Throwable</code> class..
+ */
+ public Exception getLinkedException()
+ {
+ return linkedException;
+ }
+
+ /**
+ * Add a linked Exception to this ResourceException.
+ *
+ * @param ex linked Exception
+ *
+ * @deprecated J2SE release 1.4 supports a chained exception facility
+ * that allows any throwable to know about another throwable, if any,
+ * that caused it to get thrown. Refer to <code>getCause</code> and
+ * <code>initCause</code> methods of the
+ * <code>java.lang.Throwable</code> class.
+ */
+ public void setLinkedException(Exception ex)
+ {
+ linkedException = ex;
+ }
+
+ /**
+ * Returns a detailed message string describing this exception.
+ *
+ * @return a detailed message string.
+ */
+ public String getMessage()
+ {
+ String msg = super.getMessage();
+ String ec = getErrorCode();
+ if ((msg == null) && (ec == null))
+ {
+ return null;
+ }
+ if ((msg != null) && (ec != null))
+ {
+ return (msg + ", error code: " + ec);
+ }
+ return ((msg != null) ? msg : ("error code: " + ec));
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Connection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Connection.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Connection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,29 +1,28 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
import javax.resource.ResourceException;
-import javax.resource.NotSupportedException;
/** A Connection represents an application-level handle that is used
@@ -42,78 +41,70 @@
* @see javax.resource.cci.Interaction
**/
-public interface Connection {
+public interface Connection
+{
- /** Creates an Interaction associated with this Connection. An
- * Interaction enables an application to execute EIS functions.
- *
- * @return Interaction instance
- * @throws ResourceException Failed to create an Interaction
- **/
- public
- Interaction createInteraction()
- throws ResourceException;
+ /** Creates an Interaction associated with this Connection. An
+ * Interaction enables an application to execute EIS functions.
+ *
+ * @return Interaction instance
+ * @throws ResourceException Failed to create an Interaction
+ **/
+ public Interaction createInteraction() throws ResourceException;
- /** Returns an LocalTransaction instance that enables a component to
- * demarcate resource manager local transactions on the Connection.
- * If a resource adapter does not allow a component to demarcate
- * local transactions on an Connection using LocalTransaction
- * interface, then the method getLocalTransaction should throw a
- * NotSupportedException.
- *
- * @return LocalTransaction instance
- *
- * @throws ResourceException Failed to return a LocalTransaction
- * instance because of a resource
- * adapter error
- * @throws NotSupportedException Demarcation of Resource manager
- * local transactions is not supported
- * on this Connection
- * @see javax.resource.cci.LocalTransaction
- **/
-
- public
- LocalTransaction getLocalTransaction() throws ResourceException;
+ /** Returns an LocalTransaction instance that enables a component to
+ * demarcate resource manager local transactions on the Connection.
+ * If a resource adapter does not allow a component to demarcate
+ * local transactions on an Connection using LocalTransaction
+ * interface, then the method getLocalTransaction should throw a
+ * NotSupportedException.
+ *
+ * @return LocalTransaction instance
+ *
+ * @throws ResourceException Failed to return a LocalTransaction
+ * instance because of a resource
+ * adapter error
+ * @throws javax.resource.NotSupportedException Demarcation of Resource manager
+ * local transactions is not supported
+ * on this Connection
+ * @see javax.resource.cci.LocalTransaction
+ **/
+ public LocalTransaction getLocalTransaction() throws ResourceException;
- /** Gets the information on the underlying EIS instance represented
- * through an active connection.
- *
- * @return ConnectionMetaData instance representing information
- * about the EIS instance
- * @throws ResourceException
- * Failed to get information about the
- * connected EIS instance. Error can be
- * resource adapter-internal, EIS-specific
- * or communication related.
- **/
- public
- ConnectionMetaData getMetaData() throws ResourceException;
+ /** Gets the information on the underlying EIS instance represented
+ * through an active connection.
+ *
+ * @return ConnectionMetaData instance representing information
+ * about the EIS instance
+ * @throws ResourceException
+ * Failed to get information about the
+ * connected EIS instance. Error can be
+ * resource adapter-internal, EIS-specific
+ * or communication related.
+ **/
+ public ConnectionMetaData getMetaData() throws ResourceException;
- /** Gets the information on the ResultSet functionality supported by
- * a connected EIS instance.
- *
- * @return ResultSetInfo instance
- * @throws ResourceException Failed to get ResultSet related
- * information
- * @throws NotSupportedException ResultSet functionality is not
- * supported
- **/
- public
- ResultSetInfo getResultSetInfo() throws ResourceException;
+ /** Gets the information on the ResultSet functionality supported by
+ * a connected EIS instance.
+ *
+ * @return ResultSetInfo instance
+ * @throws ResourceException Failed to get ResultSet related
+ * information
+ * @throws javax.resource.NotSupportedException ResultSet functionality is not
+ * supported
+ **/
+ public ResultSetInfo getResultSetInfo() throws ResourceException;
-
- /** Initiates close of the connection handle at the application level.
- * A client should not use a closed connection to interact with
- * an EIS.
- *
- * @throws ResourceException Exception thrown if close
- * on a connection handle fails.
- * <p>Any invalid connection close invocation--example,
- * calling close on a connection handle that is
- * already closed--should also throw this exception.
- *
- **/
- public
- void close() throws ResourceException;
-
+ /** Initiates close of the connection handle at the application level.
+ * A client should not use a closed connection to interact with
+ * an EIS.
+ *
+ * @throws ResourceException Exception thrown if close
+ * on a connection handle fails.
+ * <p>Any invalid connection close invocation--example,
+ * calling close on a connection handle that is
+ * already closed--should also throw this exception.
+ *
+ **/
+ public void close() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionFactory.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,33 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
-
-import java.io.PrintWriter;
import javax.resource.ResourceException;
-import javax.resource.NotSupportedException;
-
/** <code>ConnectionFactory</code> provides an interface for getting
* connection to an EIS instance. An implementation of ConnectionFactory
* interface is provided by a resource adapter.
@@ -45,98 +41,92 @@
* @see javax.resource.cci.Connection
* @see javax.resource.Referenceable
**/
-public interface ConnectionFactory
- extends java.io.Serializable,
- javax.resource.Referenceable {
-
- /** Gets a connection to an EIS instance. This getConnection variant
- * should be used when a component wants the container to manage EIS
- * sign-on. This case is termed container-managed sign-on. The
- * component does not pass any security information.
- *
- *
- * @return Connection instance
- * @throws ResourceException Failed to get a connection to
- * the EIS instance. Examples of
- * error cases are:
- * <UL>
- * <LI> Invalid configuration of ManagedConnectionFactory--
- * example: invalid server name
- * <LI> Application server-internal error--example:
- * connection pool related error
- * <LI> Communication error
- * <LI> EIS-specific error--example: EIS not active
- * <LI> Resource adapter-internal error
- * <LI> Security related error; example: invalid user
- * <LI> Failure to allocate system resources
- * </UL>
- **/
- public
- Connection getConnection() throws ResourceException;
+public interface ConnectionFactory extends java.io.Serializable, javax.resource.Referenceable
+{
+
+ /** Gets a connection to an EIS instance. This getConnection variant
+ * should be used when a component wants the container to manage EIS
+ * sign-on. This case is termed container-managed sign-on. The
+ * component does not pass any security information.
+ *
+ *
+ * @return Connection instance
+ * @throws ResourceException Failed to get a connection to
+ * the EIS instance. Examples of
+ * error cases are:
+ * <UL>
+ * <LI> Invalid configuration of ManagedConnectionFactory--
+ * example: invalid server name
+ * <LI> Application server-internal error--example:
+ * connection pool related error
+ * <LI> Communication error
+ * <LI> EIS-specific error--example: EIS not active
+ * <LI> Resource adapter-internal error
+ * <LI> Security related error; example: invalid user
+ * <LI> Failure to allocate system resources
+ * </UL>
+ **/
+ public Connection getConnection() throws ResourceException;
- /** Gets a connection to an EIS instance. A component should use
- * the getConnection variant with javax.resource.cci.ConnectionSpec
- * parameter, if it needs to pass any resource adapter specific
- * security information and connection parameters. In the component-
- * managed sign-on case, an application component passes security
- * information (example: username, password) through the
- * ConnectionSpec instance.
- *
- * <p>It is important to note that the properties passed through
- * the getConnection method should be client-specific (example:
- * username, password, language) and not related to the
- * configuration of a target EIS instance (example: port number,
- * server name). The ManagedConnectionFactory instance is configured
- * with complete set of properties required for the creation of a
- * connection to an EIS instance.
- *
- * @param properties Connection parameters and security
- * information specified as
- * ConnectionSpec instance
- * @return Connection instance
- *
- * @throws ResourceException Failed to get a connection to
- * the EIS instance. Examples of
- * error cases are:
- * <UL>
- * <LI> Invalid specification of input parameters
- * <LI> Invalid configuration of ManagedConnectionFactory--
- * example: invalid server name
- * <LI> Application server-internal error--example:
- * connection pool related error
- * <LI> Communication error
- * <LI> EIS-specific error--example: EIS not active
- * <LI> Resource adapter-internal error
- * <LI> Security related error; example: invalid user
- * <LI> Failure to allocate system resources
- * </UL>
- * @see javax.resource.cci.ConnectionSpec
- **/
- public
- Connection getConnection(ConnectionSpec properties)
- throws ResourceException;
+ /** Gets a connection to an EIS instance. A component should use
+ * the getConnection variant with javax.resource.cci.ConnectionSpec
+ * parameter, if it needs to pass any resource adapter specific
+ * security information and connection parameters. In the component-
+ * managed sign-on case, an application component passes security
+ * information (example: username, password) through the
+ * ConnectionSpec instance.
+ *
+ * <p>It is important to note that the properties passed through
+ * the getConnection method should be client-specific (example:
+ * username, password, language) and not related to the
+ * configuration of a target EIS instance (example: port number,
+ * server name). The ManagedConnectionFactory instance is configured
+ * with complete set of properties required for the creation of a
+ * connection to an EIS instance.
+ *
+ * @param properties Connection parameters and security
+ * information specified as
+ * ConnectionSpec instance
+ * @return Connection instance
+ *
+ * @throws ResourceException Failed to get a connection to
+ * the EIS instance. Examples of
+ * error cases are:
+ * <UL>
+ * <LI> Invalid specification of input parameters
+ * <LI> Invalid configuration of ManagedConnectionFactory--
+ * example: invalid server name
+ * <LI> Application server-internal error--example:
+ * connection pool related error
+ * <LI> Communication error
+ * <LI> EIS-specific error--example: EIS not active
+ * <LI> Resource adapter-internal error
+ * <LI> Security related error; example: invalid user
+ * <LI> Failure to allocate system resources
+ * </UL>
+ * @see javax.resource.cci.ConnectionSpec
+ **/
+ public Connection getConnection(ConnectionSpec properties)
+ throws ResourceException;
- /** Gets a RecordFactory instance. The RecordFactory is used for
- * the creation of generic Record instances.
- *
- * @return RecordFactory RecordFactory instance
- *
- * @throws ResourceException Failed to create a RecordFactory
- * @throws NotSupportedException Operation not supported
- **/
- public
- RecordFactory getRecordFactory() throws ResourceException;
+ /** Gets a RecordFactory instance. The RecordFactory is used for
+ * the creation of generic Record instances.
+ *
+ * @return RecordFactory RecordFactory instance
+ *
+ * @throws ResourceException Failed to create a RecordFactory
+ * @throws javax.resource.NotSupportedException Operation not supported
+ **/
+ public RecordFactory getRecordFactory() throws ResourceException;
- /** Gets metadata for the Resource Adapter. Note that the metadata
- * information is about the ResourceAdapter and not the EIS instance.
- * An invocation of this method does not require that an active
- * connection to an EIS instance should have been established.
- *
- * @return ResourceAdapterMetaData instance
- * @throws ResourceException Failed to get metadata information
- * about the resource adapter
- **/
- public
- ResourceAdapterMetaData getMetaData() throws ResourceException;
-
+ /** Gets metadata for the Resource Adapter. Note that the metadata
+ * information is about the ResourceAdapter and not the EIS instance.
+ * An invocation of this method does not require that an active
+ * connection to an EIS instance should have been established.
+ *
+ * @return ResourceAdapterMetaData instance
+ * @throws ResourceException Failed to get metadata information
+ * about the resource adapter
+ **/
+ public ResourceAdapterMetaData getMetaData() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionMetaData.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionMetaData.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionMetaData.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
@@ -36,36 +36,34 @@
* @see javax.resource.cci.ResultSetInfo
**/
-public interface ConnectionMetaData {
+public interface ConnectionMetaData
+{
- /** Returns product name of the underlying EIS instance connected
- * through the Connection that produced this metadata.
- *
- * @return Product name of the EIS instance
- * @throws ResourceException Failed to get the information for
- * the EIS instance
- **/
- public
- String getEISProductName() throws ResourceException;
+ /** Returns product name of the underlying EIS instance connected
+ * through the Connection that produced this metadata.
+ *
+ * @return Product name of the EIS instance
+ * @throws ResourceException Failed to get the information for
+ * the EIS instance
+ **/
+ public String getEISProductName() throws ResourceException;
- /** Returns product version of the underlying EIS instance.
- *
- * @return Product version of an EIS instance.
- * @throws ResourceException Failed to get the information for
- * the EIS instance
- **/
- public
- String getEISProductVersion() throws ResourceException;
+ /** Returns product version of the underlying EIS instance.
+ *
+ * @return Product version of an EIS instance.
+ * @throws ResourceException Failed to get the information for
+ * the EIS instance
+ **/
+ public String getEISProductVersion() throws ResourceException;
- /** Returns the user name for an active connection as known to
- * the underlying EIS instance. The name corresponds the resource
- * principal under whose security context a connection to the
- * EIS instance has been established.
- *
- * @return String representing the user name
- * @throws ResourceException Failed to get the information for
- * the EIS instance
- **/
- public
- String getUserName() throws ResourceException;
+ /** Returns the user name for an active connection as known to
+ * the underlying EIS instance. The name corresponds the resource
+ * principal under whose security context a connection to the
+ * EIS instance has been established.
+ *
+ * @return String representing the user name
+ * @throws ResourceException Failed to get the information for
+ * the EIS instance
+ **/
+ public String getUserName() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionSpec.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionSpec.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ConnectionSpec.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
@@ -42,6 +42,7 @@
* @see javax.resource.cci.ConnectionFactory
**/
-public interface ConnectionSpec {
+public interface ConnectionSpec
+{
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/IndexedRecord.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/IndexedRecord.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/IndexedRecord.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
@@ -30,7 +30,7 @@
* @author Rahul Sharma
* @since 0.8
**/
-public interface IndexedRecord extends Record, java.util.List,
- java.io.Serializable {
+public interface IndexedRecord extends Record, java.util.List, java.io.Serializable
+{
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Interaction.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Interaction.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Interaction.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,29 +1,28 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
import javax.resource.ResourceException;
-import javax.resource.NotSupportedException;
/** The <code>javax.resource.cci.Interaction</code> enables a component to
@@ -51,112 +50,105 @@
* @see java.sql.ResultSet
**/
-public interface Interaction {
+public interface Interaction
+{
- /** Closes the current Interaction and release all the resources
- * held for this instance by the resource adapter. The close of an
- * Interaction instance does not close the associated Connection
- * instance. It is recommended that Interaction instances be
- * closed explicitly to free any held resources.
- *
- * @throws ResourceException Failed to close the Interaction
- * instance. Invoking close on an
- * already closed Interaction should
- * also throw this exception.
- **/
- public
- void close() throws ResourceException;
+ /** Closes the current Interaction and release all the resources
+ * held for this instance by the resource adapter. The close of an
+ * Interaction instance does not close the associated Connection
+ * instance. It is recommended that Interaction instances be
+ * closed explicitly to free any held resources.
+ *
+ * @throws ResourceException Failed to close the Interaction
+ * instance. Invoking close on an
+ * already closed Interaction should
+ * also throw this exception.
+ **/
+ public void close() throws ResourceException;
+ /** Gets the Connection associated with the Interaction.
+ *
+ * @return Connection instance associated with the Interaction
+ **/
+ public Connection getConnection();
- /** Gets the Connection associated with the Interaction.
- *
- * @return Connection instance associated with the Interaction
- **/
- public
- Connection getConnection();
-
- /** Executes an interaction represented by the InteractionSpec.
- * This form of invocation takes an input Record and updates
- * the output Record.
- *
- * @param ispec InteractionSpec representing a target EIS
- * data/function module
- * @param input Input Record
- * @param output Output Record
- *
- * @return true if execution of the EIS function has been
- * successful and output Record has been updated; false
- * otherwise
- *
- * @throws ResourceException Exception if execute operation
- * fails. Examples of error cases
- * are:
- * <UL>
- * <LI> Resource adapter internal, EIS-specific or
- * communication error
- * <LI> Invalid specification of an InteractionSpec,
- * input or output record structure
- * <LI> Errors in use of input or output Record
- * <LI> Invalid connection associated with this
- * Interaction
- * </UL>
- * @throws NotSupportedException Operation not supported
- *
- **/
- public
- boolean execute(InteractionSpec ispec,
- Record input,
- Record output) throws ResourceException;
-
- /** Executes an interaction represented by the InteractionSpec.
- * This form of invocation takes an input Record and returns an
- * output Record if the execution of the Interaction has been
- * successfull.
- *
- * @param ispec InteractionSpec representing a target EIS
- * data/function module
- * @param input Input Record
-
- * @return output Record if execution of the EIS function has been
- * successful; null otherwise
- *
- * @throws ResourceException Exception if execute operation
- * fails. Examples of error cases
- * are:
- * <UL>
- * <LI> Resource adapter internal, EIS-specific or
- * communication error
- * <LI> Invalid specification of an InteractionSpec
- * or input record structure
- * <LI> Errors in use of input Record or creation
- * of an output Record
- * <LI> Invalid connection associated with this
- * Interaction
- * </UL>
- * @throws NotSupportedException Operation not supported
- **/
- public
- Record execute(InteractionSpec ispec,
- Record input) throws ResourceException;
-
- /** Gets the first ResourceWarning from the chain of warnings
- * associated with this Interaction instance.
- *
- * @return ResourceWarning at top of the warning chain
- * @throws ResourceException Failed to get ResourceWarnings
- * associated with Interaction
- **/
- public
- ResourceWarning getWarnings() throws ResourceException;
-
- /** Clears all the warning reported by this Interaction instance. After
- * a call to this method, the method getWarnings will return null
- * until a new warning is reported for this Interaction.
- *
- * @throws ResourceException Failed to clear ResourceWarnings
- * associated with Interaction
- **/
- public
- void clearWarnings() throws ResourceException;
-
+ /** Executes an interaction represented by the InteractionSpec.
+ * This form of invocation takes an input Record and updates
+ * the output Record.
+ *
+ * @param ispec InteractionSpec representing a target EIS
+ * data/function module
+ * @param input Input Record
+ * @param output Output Record
+ *
+ * @return true if execution of the EIS function has been
+ * successful and output Record has been updated; false
+ * otherwise
+ *
+ * @throws ResourceException Exception if execute operation
+ * fails. Examples of error cases
+ * are:
+ * <UL>
+ * <LI> Resource adapter internal, EIS-specific or
+ * communication error
+ * <LI> Invalid specification of an InteractionSpec,
+ * input or output record structure
+ * <LI> Errors in use of input or output Record
+ * <LI> Invalid connection associated with this
+ * Interaction
+ * </UL>
+ * @throws javax.resource.NotSupportedException Operation not supported
+ *
+ **/
+ public boolean execute(InteractionSpec ispec,
+ Record input,
+ Record output) throws ResourceException;
+
+ /** Executes an interaction represented by the InteractionSpec.
+ * This form of invocation takes an input Record and returns an
+ * output Record if the execution of the Interaction has been
+ * successfull.
+ *
+ * @param ispec InteractionSpec representing a target EIS
+ * data/function module
+ * @param input Input Record
+ * @return output Record if execution of the EIS function has been
+ * successful; null otherwise
+ *
+ * @throws ResourceException Exception if execute operation
+ * fails. Examples of error cases
+ * are:
+ * <UL>
+ * <LI> Resource adapter internal, EIS-specific or
+ * communication error
+ * <LI> Invalid specification of an InteractionSpec
+ * or input record structure
+ * <LI> Errors in use of input Record or creation
+ * of an output Record
+ * <LI> Invalid connection associated with this
+ * Interaction
+ * </UL>
+ * @throws javax.resource.NotSupportedException Operation not supported
+ **/
+ public Record execute(InteractionSpec ispec,
+ Record input)
+ throws ResourceException;
+
+ /** Gets the first ResourceWarning from the chain of warnings
+ * associated with this Interaction instance.
+ *
+ * @return ResourceWarning at top of the warning chain
+ * @throws ResourceException Failed to get ResourceWarnings
+ * associated with Interaction
+ **/
+ public ResourceWarning getWarnings() throws ResourceException;
+
+ /** Clears all the warning reported by this Interaction instance. After
+ * a call to this method, the method getWarnings will return null
+ * until a new warning is reported for this Interaction.
+ *
+ * @throws ResourceException Failed to clear ResourceWarnings
+ * associated with Interaction
+ **/
+ public void clearWarnings() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/InteractionSpec.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/InteractionSpec.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/InteractionSpec.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
@@ -75,28 +75,29 @@
* @see javax.resource.cci.Interaction
**/
-public interface InteractionSpec extends java.io.Serializable {
+public interface InteractionSpec extends Serializable
+{
- /**Interaction Verb type: The execution of an Interaction does only a
- * send to the target EIS instance. The input record is sent to the
- * EIS instance without any synchronous response in terms of an
- * output Record or ResultSet.
- */
- public static final int SYNC_SEND = 0;
-
- /**Interaction Verb type: The execution of an Interaction sends a
- * request to the EIS instance and receives response synchronously.
- * The input record is sent to the EIS instance with the output
- * received either as Record or CCIResultSet.
- **/
- public static final int SYNC_SEND_RECEIVE = 1;
-
- /**The execution of an Interaction results in a synchronous
- * receive of an output Record. An example is: a session bean gets
- * a method invocation and it uses this SEND_RECEIVE form of
- * interaction to retrieve messages that have been delivered to a
- * message queue.
- **/
- public static final int SYNC_RECEIVE = 2;
-
+ /**Interaction Verb type: The execution of an Interaction does only a
+ * send to the target EIS instance. The input record is sent to the
+ * EIS instance without any synchronous response in terms of an
+ * output Record or ResultSet.
+ */
+ public static final int SYNC_SEND = 0;
+
+ /**Interaction Verb type: The execution of an Interaction sends a
+ * request to the EIS instance and receives response synchronously.
+ * The input record is sent to the EIS instance with the output
+ * received either as Record or CCIResultSet.
+ **/
+ public static final int SYNC_SEND_RECEIVE = 1;
+
+ /**The execution of an Interaction results in a synchronous
+ * receive of an output Record. An example is: a session bean gets
+ * a method invocation and it uses this SEND_RECEIVE form of
+ * interaction to retrieve messages that have been delivered to a
+ * message queue.
+ **/
+ public static final int SYNC_RECEIVE = 2;
+
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/LocalTransaction.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/LocalTransaction.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/LocalTransaction.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
import javax.resource.ResourceException;
+
/** The LocalTransaction defines a transaction demarcation interface for
* resource manager local transactions. Note that this interface is
* used for application level local transaction demarcation. The
@@ -48,60 +49,56 @@
* @see javax.resource.cci.Connection
**/
-public interface LocalTransaction {
+public interface LocalTransaction
+{
+
+ /** Begins a local transaction on an EIS instance.
+ *
+ * @throws ResourceException Failed to begin a local
+ * transaction. Examples of
+ * error cases are:
+ * <UL>
+ * <LI>Resource adapter internal or EIS-specific
+ * error
+ * <LI>Connection is already participating in a
+ * local or JTA transaction
+ * </UL>
+ **/
+ public void begin() throws ResourceException;
- /** Begins a local transaction on an EIS instance.
- *
- * @throws ResourceException Failed to begin a local
- * transaction. Examples of
- * error cases are:
- * <UL>
- * <LI>Resource adapter internal or EIS-specific
- * error
- * <LI>Connection is already participating in a
- * local or JTA transaction
- * </UL>
- **/
- public
- void begin() throws ResourceException;
+ /** Commits the current local transaction and release all locks held
+ * by the underlying EIS instance.
+ *
+ * @throws ResourceException Failed to commit a local
+ * transaction. Examples of
+ * error cases are:
+ * <UL>
+ * <LI> Resource adapter internal or EIS-specific error
+ * <LI> Violation of integrity constraints, deadlock
+ * detection, communication failure during
+ * transaction completion, or any retry requirement
+ * <LI> Connection is participating in an active JTA
+ * transaction
+ * <LI> Invalid transaction context; commit
+ * operation invoked without an active
+ * transaction context
+ * </UL>
+ **/
+ public void commit() throws ResourceException;
-
- /** Commits the current local transaction and release all locks held
- * by the underlying EIS instance.
- *
- * @throws ResourceException Failed to commit a local
- * transaction. Examples of
- * error cases are:
- * <UL>
- * <LI> Resource adapter internal or EIS-specific error
- * <LI> Violation of integrity constraints, deadlock
- * detection, communication failure during
- * transaction completion, or any retry requirement
- * <LI> Connection is participating in an active JTA
- * transaction
- * <LI> Invalid transaction context; commit
- * operation invoked without an active
- * transaction context
- * </UL>
- **/
- public
- void commit() throws ResourceException;
-
- /** Rollbacks the current resource manager local transaction.
- *
- * @throws ResourceException Failed to rollback a local
- * transaction. Examples of
- * error cases are:
- * <UL>
- * <LI> Resource adapter internal or EIS-specific error
- * <LI> Connection is participating in an active JTA
- * transaction
- * <LI> Invalid transaction context; rollback
- * operation invoked without an active
- * transaction context
- * </UL>
-
- **/
- public
- void rollback() throws ResourceException;
+ /** Rollbacks the current resource manager local transaction.
+ *
+ * @throws ResourceException Failed to rollback a local
+ * transaction. Examples of
+ * error cases are:
+ * <UL>
+ * <LI> Resource adapter internal or EIS-specific error
+ * <LI> Connection is participating in an active JTA
+ * transaction
+ * <LI> Invalid transaction context; rollback
+ * operation invoked without an active
+ * transaction context
+ * </UL>
+ **/
+ public void rollback() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MappedRecord.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MappedRecord.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MappedRecord.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
@@ -30,7 +30,7 @@
* @author Rahul Sharma
* @version 0.8
**/
-public interface MappedRecord extends Record, java.util.Map,
- java.io.Serializable {
+public interface MappedRecord extends Record, java.util.Map, java.io.Serializable
+{
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MessageListener.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MessageListener.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/MessageListener.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
@@ -32,17 +32,17 @@
* @author Ram Jeyaraman
* @version 1.0
*/
-public interface MessageListener {
-
- /**
- * This method allows an EIS to call a message endpoint using a
- * request-response style communication.
- *
- * @param inputData a <code>Record</code> instance.
- *
- * @return a <code>Record</code> instance or null.
- *
- * @throws ResourceException indicates an exceptional condition.
- */
- Record onMessage(Record inputData) throws ResourceException;
+public interface MessageListener
+{
+ /**
+ * This method allows an EIS to call a message endpoint using a
+ * request-response style communication.
+ *
+ * @param inputData a <code>Record</code> instance.
+ *
+ * @return a <code>Record</code> instance or null.
+ *
+ * @throws ResourceException indicates an exceptional condition.
+ */
+ Record onMessage(Record inputData) throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Record.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Record.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Record.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
@@ -54,64 +54,56 @@
* @see javax.resource.cci.Interaction
* @see java.sql.ResultSet
**/
-public interface Record extends java.lang.Cloneable, java.io.Serializable {
+public interface Record extends java.lang.Cloneable, java.io.Serializable
+{
- /** Gets the name of the Record.
- *
- * @return String representing name of the Record
- **/
- public
- String getRecordName();
+ /** Gets the name of the Record.
+ *
+ * @return String representing name of the Record
+ **/
+ public String getRecordName();
- /** Sets the name of the Record.
- *
- * @param name Name of the Record
- **/
- public
- void setRecordName(String name);
+ /** Sets the name of the Record.
+ *
+ * @param name Name of the Record
+ **/
+ public void setRecordName(String name);
- /** Sets a short description string for the Record. This property
- * is used primarily by application development tools.
- *
- * @param description Description of the Record
- **/
- public
- void setRecordShortDescription(String description);
+ /** Sets a short description string for the Record. This property
+ * is used primarily by application development tools.
+ *
+ * @param description Description of the Record
+ **/
+ public void setRecordShortDescription(String description);
- /** Gets a short description string for the Record. This property
- * is used primarily by application development tools.
- *
- * @return String representing a short description of the Record
- **/
- public
- String getRecordShortDescription();
+ /** Gets a short description string for the Record. This property
+ * is used primarily by application development tools.
+ *
+ * @return String representing a short description of the Record
+ **/
+ public String getRecordShortDescription();
- /** Check if this instance is equal to another Record.
- *
- * @return true if two instances are equal
- **/
- public
- boolean equals(Object other);
+ /** Check if this instance is equal to another Record.
+ * @param other The other object
+ * @return true if two instances are equal
+ **/
+ public boolean equals(Object other);
+ /** Returns the hash code for the Record instance.
+ *
+ * @return hash code
+ **/
+ public int hashCode();
- /** Returns the hash code for the Record instance.
- *
- * @return hash code
- **/
- public
- int hashCode();
-
- /** Creates and returns a copy of this object. The precise
- * meaning of "copy" may depend on the class of the object.
- *
- * @return a clone of this instance.
- * @throws CloneNotSupportedException
- * If the object's class does not support the
- * Cloneable interface Subclasses that override the
- * clone method can also throw this exception to
- * indicate that an instance cannot be cloned.
- **/
- public
- Object clone() throws CloneNotSupportedException;
-
+ /** Creates and returns a copy of this object. The precise
+ * meaning of "copy" may depend on the class of the object.
+ *
+ * @return a clone of this instance.
+ * @throws CloneNotSupportedException
+ * If the object's class does not support the
+ * Cloneable interface Subclasses that override the
+ * clone method can also throw this exception to
+ * indicate that an instance cannot be cloned.
+ **/
+ public Object clone() throws CloneNotSupportedException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/RecordFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/RecordFactory.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/RecordFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,28 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
-import java.util.Map;
-import java.util.Collection;
import javax.resource.ResourceException;
-import javax.resource.NotSupportedException;
/** The RecordFactory interface is used for creating MappedRecord and
@@ -38,50 +35,47 @@
* @see javax.resource.cci.IndexedRecord
* @see javax.resource.cci.MappedRecord
**/
-public interface RecordFactory {
+public interface RecordFactory
+{
- /** Creates a MappedRecord. The method takes the name of the record
- * that is to be created by the RecordFactory. The name of the
- * record acts as a pointer to the meta information (stored in
- * the metadata repository) for a specific record type.
- *
- * @param recordName Name of the Record
- * @return MappedRecord
- * @throws ResourceException Failed to create a MappedRecord.
- * Example error cases are:
- *
- * <UL>
- * <LI> Invalid specification of record name
- * <LI> Resource adapter internal error
- * <LI> Failed to access metadata repository
- * </UL>
- * @throws NotSupportedException Operation not supported
- *
- **/
- public
- MappedRecord createMappedRecord(String recordName)
- throws ResourceException;
+ /** Creates a MappedRecord. The method takes the name of the record
+ * that is to be created by the RecordFactory. The name of the
+ * record acts as a pointer to the meta information (stored in
+ * the metadata repository) for a specific record type.
+ *
+ * @param recordName Name of the Record
+ * @return MappedRecord
+ * @throws ResourceException Failed to create a MappedRecord.
+ * Example error cases are:
+ *
+ * <UL>
+ * <LI> Invalid specification of record name
+ * <LI> Resource adapter internal error
+ * <LI> Failed to access metadata repository
+ * </UL>
+ * @throws javax.resource.NotSupportedException Operation not supported
+ *
+ **/
+ public MappedRecord createMappedRecord(String recordName)
+ throws ResourceException;
- /** Creates a IndexedRecord. The method takes the name of the record
- * that is to be created by the RecordFactory. The name of the
- * record acts as a pointer to the meta information (stored in
- * the metadata repository) for a specific record type.
- *
- * @param recordName Name of the Record
- * @return IndexedRecord
- * @throws ResourceException Failed to create an IndexedRecord.
- * Example error cases are:
- *
- * <UL>
- * <LI> Invalid specification of record name
- * <LI> Resource adapter internal error
- * <LI> Failed to access metadata repository
- * </UL>
- * @throws NotSupportedException Operation not supported
- **/
- public
- IndexedRecord createIndexedRecord(String recordName)
- throws ResourceException;
-
+ /** Creates a IndexedRecord. The method takes the name of the record
+ * that is to be created by the RecordFactory. The name of the
+ * record acts as a pointer to the meta information (stored in
+ * the metadata repository) for a specific record type.
+ *
+ * @param recordName Name of the Record
+ * @return IndexedRecord
+ * @throws ResourceException Failed to create an IndexedRecord.
+ * Example error cases are:
+ *
+ * <UL>
+ * <LI> Invalid specification of record name
+ * <LI> Resource adapter internal error
+ * <LI> Failed to access metadata repository
+ * </UL>
+ * @throws javax.resource.NotSupportedException Operation not supported
+ **/
+ public IndexedRecord createIndexedRecord(String recordName)
+ throws ResourceException;
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceAdapterMetaData.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,29 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
-import javax.resource.ResourceException;
-
/** The interface <code>javax.resource.cci.ResourceAdapterMetaData</code>
* provides information about capabilities of a resource adapter
* implementation. Note that this interface does not provide information
@@ -43,100 +41,89 @@
* @see javax.resource.cci.ConnectionFactory
**/
-public interface ResourceAdapterMetaData {
+public interface ResourceAdapterMetaData
+{
- /** Gets the version of the resource adapter.
- *
- * @return String representing version of the resource adapter
- **/
- public
- String getAdapterVersion();
-
- /** Gets the name of the vendor that has provided the resource
- * adapter.
- *
- * @return String representing name of the vendor that has
- * provided the resource adapter
- **/
- public
- String getAdapterVendorName();
+ /** Gets the version of the resource adapter.
+ *
+ * @return String representing version of the resource adapter
+ **/
+ public String getAdapterVersion();
+
+ /** Gets the name of the vendor that has provided the resource
+ * adapter.
+ *
+ * @return String representing name of the vendor that has
+ * provided the resource adapter
+ **/
+ public String getAdapterVendorName();
- /** Gets a tool displayable name of the resource adapter.
- *
- * @return String representing the name of the resource adapter
- **/
- public
- String getAdapterName();
-
- /** Gets a tool displayable short desription of the resource
- * adapter.
- *
- * @return String describing the resource adapter
- **/
- public
- String getAdapterShortDescription();
+ /** Gets a tool displayable name of the resource adapter.
+ *
+ * @return String representing the name of the resource adapter
+ **/
+ public String getAdapterName();
+
+ /** Gets a tool displayable short desription of the resource
+ * adapter.
+ *
+ * @return String describing the resource adapter
+ **/
+ public String getAdapterShortDescription();
- /** Returns a string representation of the version of the
- * connector architecture specification that is supported by
- * the resource adapter.
- *
- * @return String representing the supported version of
- * the connector architecture
- **/
- public
- String getSpecVersion();
+ /** Returns a string representation of the version of the
+ * connector architecture specification that is supported by
+ * the resource adapter.
+ *
+ * @return String representing the supported version of
+ * the connector architecture
+ **/
+ public String getSpecVersion();
- /** Returns an array of fully-qualified names of InteractionSpec
- * types supported by the CCI implementation for this resource
- * adapter. Note that the fully-qualified class name is for
- * the implementation class of an InteractionSpec. This method
- * may be used by tools vendor to find information on the
- * supported InteractionSpec types. The method should return
- * an array of length 0 if the CCI implementation does not
- * define specific InteractionSpec types.
- *
- * @return Array of fully-qualified class names of
- * InteractionSpec classes supported by this
- * resource adapter's CCI implementation
- * @see javax.resource.cci.InteractionSpec
- **/
- public
- String[] getInteractionSpecsSupported();
+ /** Returns an array of fully-qualified names of InteractionSpec
+ * types supported by the CCI implementation for this resource
+ * adapter. Note that the fully-qualified class name is for
+ * the implementation class of an InteractionSpec. This method
+ * may be used by tools vendor to find information on the
+ * supported InteractionSpec types. The method should return
+ * an array of length 0 if the CCI implementation does not
+ * define specific InteractionSpec types.
+ *
+ * @return Array of fully-qualified class names of
+ * InteractionSpec classes supported by this
+ * resource adapter's CCI implementation
+ * @see javax.resource.cci.InteractionSpec
+ **/
+ public String[] getInteractionSpecsSupported();
+ /** Returns true if the implementation class for the Interaction
+ * interface implements public boolean execute(InteractionSpec
+ * ispec, Record input, Record output) method; otherwise the
+ * method returns false.
+ *
+ * @return boolean depending on method support
+ * @see javax.resource.cci.Interaction
+ **/
+ public boolean supportsExecuteWithInputAndOutputRecord();
- /** Returns true if the implementation class for the Interaction
- * interface implements public boolean execute(InteractionSpec
- * ispec, Record input, Record output) method; otherwise the
- * method returns false.
- *
- * @return boolean depending on method support
- * @see javax.resource.cci.Interaction
- **/
- public
- boolean supportsExecuteWithInputAndOutputRecord();
+ /** Returns true if the implementation class for the Interaction
+ * interface implements public Record execute(InteractionSpec
+ * ispec, Record input) method; otherwise the method returns
+ * false.
+ *
+ * @return boolean depending on method support
+ * @see javax.resource.cci.Interaction
+ **/
+ public boolean supportsExecuteWithInputRecordOnly();
-
- /** Returns true if the implementation class for the Interaction
- * interface implements public Record execute(InteractionSpec
- * ispec, Record input) method; otherwise the method returns
- * false.
- *
- * @return boolean depending on method support
- * @see javax.resource.cci.Interaction
- **/
- public
- boolean supportsExecuteWithInputRecordOnly();
-
-
- /** Returns true if the resource adapter implements the LocalTransaction
- * interface and supports local transaction demarcation on the
- * underlying EIS instance through the LocalTransaction interface.
- *
- * @return true if resource adapter supports resource manager
- * local transaction demarcation through LocalTransaction
- * interface; false otherwise
- * @see javax.resource.cci.LocalTransaction
- **/
- public
- boolean supportsLocalTransactionDemarcation();
+ /** Returns true if the resource adapter implements the LocalTransaction
+ * interface and supports local transaction demarcation on the
+ * underlying EIS instance through the LocalTransaction interface.
+ *
+ * @return true if resource adapter supports resource manager
+ * local transaction demarcation through LocalTransaction
+ * interface; false otherwise
+ * @see javax.resource.cci.LocalTransaction
+ **/
+ public boolean supportsLocalTransactionDemarcation();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceWarning.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceWarning.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResourceWarning.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* A <code>ResourceWarning</code> provides information on warnings related to
* execution of an interaction with an EIS. Warnings are silently
@@ -29,88 +32,131 @@
*
* @see Interaction#getWarnings
*/
-public class ResourceWarning extends javax.resource.ResourceException {
+public class ResourceWarning extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public ResourceWarning() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public ResourceWarning(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 4883365394555743885L;
+ }
+ else
+ {
+ serialVersionUID = 1233859030030360576L;
+ }
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public ResourceWarning(Throwable cause) {
- super(cause);
- }
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public ResourceWarning()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public ResourceWarning(String message, Throwable cause) {
- super(message, cause);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public ResourceWarning(String message)
+ {
+ super(message);
+ }
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public ResourceWarning(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public ResourceWarning(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public ResourceWarning(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public ResourceWarning(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
- /**
- * Retrieves the warning chained to this <code>ResourceWarning</code>
- * object.
- *
- * @return next <code>ResourceWarning</code> in the chain; null if none.
- *
- * @deprecated J2SE release 1.4 supports a chained exception facility
- * that allows any throwable to know about another throwable, if any,
- * that caused it to get thrown. Refer to <code>getCause</code> and
- * <code>initCause</code> methods of the
- * <code>java.lang.Throwable</code> class.
- */
- public ResourceWarning getLinkedWarning() {
- try {
- return ((ResourceWarning)getLinkedException());
- }
- catch (ClassCastException ex) {
- return null;
- }
- }
+ /**
+ * Retrieves the warning chained to this <code>ResourceWarning</code>
+ * object.
+ *
+ * @return next <code>ResourceWarning</code> in the chain; null if none.
+ *
+ * @deprecated J2SE release 1.4 supports a chained exception facility
+ * that allows any throwable to know about another throwable, if any,
+ * that caused it to get thrown. Refer to <code>getCause</code> and
+ * <code>initCause</code> methods of the
+ * <code>java.lang.Throwable</code> class.
+ */
+ public ResourceWarning getLinkedWarning()
+ {
+ try
+ {
+ return ((ResourceWarning)getLinkedException());
+ }
+ catch (ClassCastException ex)
+ {
+ return null;
+ }
+ }
- /**
- * Adds an <code>ResourceWarning</code> object to the end of the chain.
- *
- * @param warning <code>ResourceWarning</code> to be added to the chain.
- *
- * @deprecated J2SE release 1.4 supports a chained exception facility
- * that allows any throwable to know about another throwable, if any,
- * that caused it to get thrown. Refer to <code>getCause</code> and
- * <code>initCause</code> methods of the
- * <code>java.lang.Throwable</code> class.
- */
- public void setLinkedWarning(ResourceWarning warning) {
- setLinkedException(warning);
- }
+ /**
+ * Adds an <code>ResourceWarning</code> object to the end of the chain.
+ *
+ * @param warning <code>ResourceWarning</code> to be added to the chain.
+ *
+ * @deprecated J2SE release 1.4 supports a chained exception facility
+ * that allows any throwable to know about another throwable, if any,
+ * that caused it to get thrown. Refer to <code>getCause</code> and
+ * <code>initCause</code> methods of the
+ * <code>java.lang.Throwable</code> class.
+ */
+ public void setLinkedWarning(ResourceWarning warning)
+ {
+ setLinkedException(warning);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSet.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSet.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSet.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
-/** A ResultSet represents tabular data that is retrieved from an EIS
+/**
+ * A ResultSet represents tabular data that is retrieved from an EIS
* instance by the execution of an Interaction.. The CCI ResultSet is
* based on the JDBC ResultSet.
*
@@ -33,6 +34,7 @@
* @since 0.8
* @see java.sql.ResultSet
**/
-public interface ResultSet extends Record, java.sql.ResultSet {
+public interface ResultSet extends Record, java.sql.ResultSet
+{
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSetInfo.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSetInfo.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/ResultSetInfo.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
-
import javax.resource.ResourceException;
/** The interface <code>javax.resource.cci.ResultSetInfo</code> provides
@@ -42,131 +41,118 @@
* @see javax.resource.cci.ConnectionMetaData
**/
-public interface ResultSetInfo {
-
- /** Indicates whether or not a visible row update can be detected
- * by calling the method <code>ResultSet.rowUpdated</code>.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if changes are detected by the result set
- * type; false otherwise
- * @see java.sql.ResultSet#rowUpdated
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean updatesAreDetected(int type) throws ResourceException;
+public interface ResultSetInfo
+{
+
+ /** Indicates whether or not a visible row update can be detected
+ * by calling the method <code>ResultSet.rowUpdated</code>.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if changes are detected by the result set
+ * type; false otherwise
+ * @see java.sql.ResultSet#rowUpdated
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean updatesAreDetected(int type) throws ResourceException;
+
+ /** Indicates whether or not a visible row insert can be detected
+ * by calling ResultSet.rowInserted.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if changes are detected by the result set
+ * type; false otherwise
+ * @see java.sql.ResultSet#rowInserted
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean insertsAreDetected(int type) throws ResourceException;
+
+ /** Indicates whether or not a visible row delete can be detected by
+ * calling ResultSet.rowDeleted. If deletesAreDetected
+ * returns false, then deleted rows are removed from the ResultSet.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if changes are detected by the result set
+ * type; false otherwise
+ * @see java.sql.ResultSet#rowDeleted
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean deletesAreDetected(int type) throws ResourceException;
+
+ /** Indicates whether or not a resource adapter supports a type
+ * of ResultSet.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if ResultSet type supported; false otherwise
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean supportsResultSetType(int type) throws ResourceException;
+
+ /** Indicates whether or not a resource adapter supports the
+ * concurrency type in combination with the given ResultSet type/
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @param concurrency ResultSet concurrency type defined in
+ * java.sql.ResultSet
+ * @return true if the specified combination supported; false otherwise
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean supportsResultTypeConcurrency(int type,
+ int concurrency)
+ throws ResourceException;
- /** Indicates whether or not a visible row insert can be detected
- * by calling ResultSet.rowInserted.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if changes are detected by the result set
- * type; false otherwise
- * @see java.sql.ResultSet#rowInserted
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean insertsAreDetected(int type) throws ResourceException;
-
- /* Indicates whether or not a visible row delete can be detected by
- * calling ResultSet.rowDeleted. If deletesAreDetected
- * returns false, then deleted rows are removed from the ResultSet.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if changes are detected by the result set
- * type; false otherwise
- * @see java.sql.ResultSet#rowDeleted
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean deletesAreDetected(int type) throws ResourceException;
-
- /** Indicates whether or not a resource adapter supports a type
- * of ResultSet.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if ResultSet type supported; false otherwise
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean supportsResultSetType(int type) throws ResourceException;
+ /** Indicates whether updates made by others are visible.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if updates by others are visible for the
+ * ResultSet type; false otherwise
+ * @throws ResourceException Failed to get the information
+ */
+ public boolean othersUpdatesAreVisible(int type) throws ResourceException;
- /** Indicates whether or not a resource adapter supports the
- * concurrency type in combination with the given ResultSet type/
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @param concurrency ResultSet concurrency type defined in
- * java.sql.ResultSet
- * @return true if the specified combination supported; false otherwise
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean supportsResultTypeConcurrency(int type,
- int concurrency)
- throws ResourceException;
-
-
- /** Indicates whether updates made by others are visible.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if updates by others are visible for the
- * ResultSet type; false otherwise
- * @throws ResourceException Failed to get the information
- */
- public
- boolean othersUpdatesAreVisible(int type) throws ResourceException;
-
- /**
- * Indicates whether deletes made by others are visible.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if deletes by others are visible for the
- * ResultSet type; false otherwise
- * @throws ResourceException Failed to get the information
- */
- public
- boolean othersDeletesAreVisible(int type) throws ResourceException;
+ /**
+ * Indicates whether deletes made by others are visible.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if deletes by others are visible for the
+ * ResultSet type; false otherwise
+ * @throws ResourceException Failed to get the information
+ */
+ public boolean othersDeletesAreVisible(int type) throws ResourceException;
- /**
- * Indicates whether inserts made by others are visible.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if inserts by others are visible for the
- * ResultSet type; false otherwise
- * @throws ResourceException Failed to get the information
- */
- public
- boolean othersInsertsAreVisible(int type) throws ResourceException;
+ /**
+ * Indicates whether inserts made by others are visible.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if inserts by others are visible for the
+ * ResultSet type; false otherwise
+ * @throws ResourceException Failed to get the information
+ */
+ public boolean othersInsertsAreVisible(int type) throws ResourceException;
+ /** Indicates whether a ResultSet's own updates are visible.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if updates are visible for the ResultSet
+ * type; false otherwise
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean ownUpdatesAreVisible(int type) throws ResourceException;
- /* Indicates whether a ResultSet's own updates are visible.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if updates are visible for the ResultSet
- * type; false otherwise
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean ownUpdatesAreVisible(int type) throws ResourceException;
+ /** Indicates whether a ResultSet's own inserts are visible.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if inserts are visible for the ResultSet
+ * type; false otherwise
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean ownInsertsAreVisible(int type) throws ResourceException;
- /* Indicates whether a ResultSet's own inserts are visible.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if inserts are visible for the ResultSet
- * type; false otherwise
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean ownInsertsAreVisible(int type) throws ResourceException;
-
- /* Indicates whether a ResultSet's own deletes are visible.
- *
- * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
- * @return true if inserts are visible for the ResultSet
- * type; false otherwise
- * @throws ResourceException Failed to get the information
- **/
- public
- boolean ownDeletesAreVisible(int type) throws ResourceException;
-
+ /** Indicates whether a ResultSet's own deletes are visible.
+ *
+ * @param type type of the ResultSet i.e. ResultSet.TYPE_XXX
+ * @return true if inserts are visible for the ResultSet
+ * type; false otherwise
+ * @throws ResourceException Failed to get the information
+ **/
+ public boolean ownDeletesAreVisible(int type) throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Streamable.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Streamable.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/cci/Streamable.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,33 +1,33 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.cci;
-
+import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
-import java.io.IOException;
-/** Streamable interface enables a resource adapter to extract data from
+/**
+ * Streamable interface enables a resource adapter to extract data from
* an input Record or set data into an output Record as a stream of
* bytes.
*
@@ -42,26 +42,25 @@
* @since 0.8
* @see javax.resource.cci.Record
**/
-
-public interface Streamable {
-
- /** Read data from an InputStream and initialize fields of a
- * Streamable object.
- *
- * @param istream InputStream that represents a resource
- * adapter specific internal representation
- * of fields of a Streamable object
- **/
- public
- void read(InputStream istream) throws IOException;
+public interface Streamable
+{
+ /**
+ * Read data from an InputStream and initialize fields of a
+ * Streamable object.
+ *
+ * @param istream InputStream that represents a resource
+ * adapter specific internal representation
+ * of fields of a Streamable object
+ * @exception IOException If an error occurs
+ **/
+ public void read(InputStream istream) throws IOException;
-
- /** Write fields of a Streamable object to an OutputStream
- * @param ostream OutputStream that holds value of a
- * Streamable object
- **/
- public
- void write(OutputStream ostream) throws IOException;
-
+ /**
+ * Write fields of a Streamable object to an OutputStream
+ * @param ostream OutputStream that holds value of a
+ * Streamable object
+ * @exception IOException If an error occurs
+ **/
+ public void write(OutputStream ostream) throws IOException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Activation.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Activation.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Activation.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,31 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Documented;
import static java.lang.annotation.RetentionPolicy.*;
/**
@@ -44,24 +44,25 @@
* <p>The ActivationSpec JavaBean has a set of configurable properties specific to
* the messaging style and the message provider.
*
- * <p>Together with the messageListener annotation element type this annotation
+ * <p>Together with the messageListener annotation element, this annotation
* specifies information about a specific message listener type supported by the
* messaging resource adapter.
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
@Documented
@Retention(RUNTIME)
@Target(TYPE)
-public @interface Activation {
-
- /**
- * Indicates the message listener type(s) associated with this activation.
- *
- * @return The Java types of the Message Listener interface this
- * activation-spec is associated with.
- */
- Class[] messageListeners() default {};
+public @interface Activation
+{
+
+ /**
+ * Indicates the message listener type(s) associated with this activation.
+ *
+ * @return The Java types of the Message Listener interface this
+ * activation-spec is associated with.
+ */
+ Class[] messageListeners();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ActivationSpec.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ActivationSpec.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ActivationSpec.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -30,26 +30,25 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface ActivationSpec extends ResourceAdapterAssociation {
-
- /**
- * This method may be called by a deployment tool to validate the overall
- * activation configuration information provided by the endpoint deployer.
- * This helps to catch activation configuration errors earlier on without
- * having to wait until endpoint activation time for configuration
- * validation. The implementation of this self-validation check behavior is
- * optional.
- *
- * @throws <code>InvalidPropertyException</code> indicates invalid
- * configuration property settings.
- *
- * @deprecated As of Java EE Connectors 1.6 specification, resource adapter
- * implementations are recommended to use the annotations or the
- * XML validation deployment descriptor facilities defined by
- * the Bean Validation specification to express their validation
- * requirements of its configuration properties to the
- * application server.
- */
- void validate() throws InvalidPropertyException;
-
+public interface ActivationSpec extends ResourceAdapterAssociation
+{
+
+ /**
+ * This method may be called by a deployment tool to validate the overall
+ * activation configuration information provided by the endpoint deployer.
+ * This helps to catch activation configuration errors earlier on without
+ * having to wait until endpoint activation time for configuration
+ * validation. The implementation of this self-validation check behavior is
+ * optional.
+ *
+ * Note: As of Java EE Connectors 1.6 specification, resource adapter
+ * implementations are recommended to use the annotations or the
+ * XML validation deployment descriptor facilities defined by
+ * the Bean Validation specification to express their validation
+ * requirements of its configuration properties to the
+ * application server.
+ *
+ * @throws InvalidPropertyException indicates invalid configuration property settings.
+ */
+ void validate() throws InvalidPropertyException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AdministeredObject.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AdministeredObject.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AdministeredObject.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,32 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
+
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Documented;
import static java.lang.annotation.RetentionPolicy.*;
/**
@@ -33,17 +34,18 @@
* specific to a messaging style or message provider.
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
@Documented
@Retention(RUNTIME)
@Target(TYPE)
-public @interface AdministeredObject {
-
- /**
- * Specifies the Java type of the interface implemented by the administered
- * object.
- */
- Class[] adminObjectInterfaces() default {};
+public @interface AdministeredObject
+{
+
+ /**
+ * Specifies the Java type of the interface implemented by the administered
+ * object.
+ */
+ Class[] adminObjectInterfaces() default { };
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ApplicationServerInternalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* An <code>ApplicationServerInternalException</code> is thrown
* by an application
@@ -35,55 +38,91 @@
* @author Ram Jeyaraman
*/
-public class ApplicationServerInternalException
- extends javax.resource.ResourceException {
+public class ApplicationServerInternalException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public ApplicationServerInternalException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public ApplicationServerInternalException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = -7496452174776833078L;
+ }
+ else
+ {
+ serialVersionUID = -7784532393279374430L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public ApplicationServerInternalException()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public ApplicationServerInternalException(Throwable cause) {
- super(cause);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public ApplicationServerInternalException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public ApplicationServerInternalException(Throwable cause)
+ {
+ super(cause);
+ }
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public ApplicationServerInternalException(
- String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public ApplicationServerInternalException(
- String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public ApplicationServerInternalException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public ApplicationServerInternalException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AuthenticationMechanism.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AuthenticationMechanism.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/AuthenticationMechanism.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,101 +1,100 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Documented;
import static java.lang.annotation.RetentionPolicy.*;
- at Documented
- at Retention(RUNTIME)
- at Target(TYPE)
-
/**
* An annotation used to specify the authentication mechanism
* supported by the resource adapter.
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
-public @interface AuthenticationMechanism {
-
- /**
- * An enumerated type that represents the various interfaces
- * that a resource adapter may support for the representation
- * of the credentials.
- *
- * @since 1.6
- * @version JSR322-PublicReview
- */
- public enum CredentialInterface {
- /**
- * Corresponds to
- * <code>javax.resource.spi.security.PasswordCredential</code>.
- * This is the default credential interface
- */
- PasswordCredential,
+ at Documented
+ at Retention(RUNTIME)
+ at Target({ })
+public @interface AuthenticationMechanism
+{
+
+ /**
+ * An enumerated type that represents the various interfaces
+ * that a resource adapter may support for the representation
+ * of the credentials.
+ *
+ * @since 1.6
+ * @version Java EE Connector Architecture 1.6
+ */
+ public enum CredentialInterface
+ {
+ /**
+ * Corresponds to
+ * <code>javax.resource.spi.security.PasswordCredential</code>.
+ * This is the default credential interface
+ */
+ PasswordCredential,
- /**
- * Corresponds to <code>org.ietf.jgss.GSSCredential</code>
- */
- GSSCredential,
+ /**
+ * Corresponds to <code>org.ietf.jgss.GSSCredential</code>
+ */
+ GSSCredential,
- /**
- * Corresponds to
- * <code>javax.resource.spi.security.GenericCredential</code>
- */
- GenericCredential
- };
+ /**
+ * Corresponds to
+ * <code>javax.resource.spi.security.GenericCredential</code>
+ */
+ GenericCredential
+ };
- /**
- * The authentication-mechanismType specifies an authentication
- * mechanism supported by the resource adapter. Note that this
- * support is for the resource adapter and not for the
- * underlying EIS instance.
- *
- */
- String authMechanism() default "BasicPassword";
-
- /**
- * The optional description specifies
- * any resource adapter specific requirement for the support of
- * security contract and authentication mechanism.
- */
- String description() default "";
-
- /**
- * Represents the interface that the resource adapter implementation
- * supports for the representation of the credentials.
- *
- * Note that BasicPassword mechanism type should support the
- * <code>javax.resource.spi.security.PasswordCredential</code> interface.
- * The Kerbv5 mechanism type should support the
- * <code>org.ietf.jgss.GSSCredential</code> interface or the deprecated
- * <code>javax.resource.spi.security.GenericCredential</code> interface.
- */
- CredentialInterface credentialInterface()
- default CredentialInterface.PasswordCredential;
+ /**
+ * The authentication-mechanismType specifies an authentication
+ * mechanism supported by the resource adapter. Note that this
+ * support is for the resource adapter and not for the
+ * underlying EIS instance.
+ *
+ */
+ String authMechanism() default "BasicPassword";
+
+ /**
+ * The optional description specifies
+ * any resource adapter specific requirement for the support of
+ * security contract and authentication mechanism.
+ */
+ String[] description() default { };
+
+ /**
+ * Represents the interface that the resource adapter implementation
+ * supports for the representation of the credentials.
+ *
+ * Note that BasicPassword mechanism type should support the
+ * <code>javax.resource.spi.security.PasswordCredential</code> interface.
+ * The Kerbv5 mechanism type should support the
+ * <code>org.ietf.jgss.GSSCredential</code> interface or the deprecated
+ * <code>javax.resource.spi.security.GenericCredential</code> interface.
+ */
+ CredentialInterface credentialInterface() default CredentialInterface.PasswordCredential;
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/BootstrapContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/BootstrapContext.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/BootstrapContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,30 +1,31 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
import java.util.Timer;
+
+import javax.resource.spi.work.WorkContext;
import javax.resource.spi.work.WorkManager;
-import javax.resource.spi.work.WorkContext;
import javax.transaction.TransactionSynchronizationRegistry;
/**
@@ -35,77 +36,76 @@
* context contains references to useful facilities that could be used by the
* resource adapter instance.
*
- * @version JSR322-EarlyDraft
+ * @version Java EE Connector Architecture 1.6
* @author Ram Jeyaraman, Sivakumar Thyagarajan
*/
-public interface BootstrapContext {
- /**
- * Provides a handle to a <code>WorkManager</code> instance. The
- * <code>WorkManager</code> instance could be used by a resource adapter to
- * do its work by submitting <code>Work</code> instances for execution.
- *
- * @return a <code>WorkManager</code> instance.
- */
- WorkManager getWorkManager();
+public interface BootstrapContext
+{
+ /**
+ * Provides a handle to a <code>WorkManager</code> instance. The
+ * <code>WorkManager</code> instance could be used by a resource adapter to
+ * do its work by submitting <code>Work</code> instances for execution.
+ *
+ * @return a <code>WorkManager</code> instance.
+ */
+ WorkManager getWorkManager();
- /**
- * Provides a handle to a <code>XATerminator</code> instance. The
- * <code>XATerminator</code> instance could be used by a resource adapter
- * to flow-in transaction completion and crash recovery calls from an EIS.
- *
- * @return a <code>XATerminator</code> instance.
- */
- XATerminator getXATerminator();
+ /**
+ * Provides a handle to a <code>XATerminator</code> instance. The
+ * <code>XATerminator</code> instance could be used by a resource adapter
+ * to flow-in transaction completion and crash recovery calls from an EIS.
+ *
+ * @return a <code>XATerminator</code> instance.
+ */
+ XATerminator getXATerminator();
- /**
- * Creates a new <code>java.util.Timer</code> instance. The
- * <code>Timer</code> instance could be used to perform periodic
- * <code>Work</code> executions or other tasks.
- *
- * @throws UnavailableException indicates that a
- * <code>Timer</code> instance is not available. The
- * request may be retried later.
- *
- * @return a new <code>Timer</code> instance.
- */
- Timer createTimer() throws UnavailableException;
-
- /**
- * A resource adapter can check an application server’s support
- * for a particular InflowContext type through this method.
- * This mechanism enables a resource adapter developer to
- * dynamically change the InflowContexts submitted with a Work instance
- * based on the support provided by the application server.
- *
- * The application server must employ an exact type equality check (that is
- * <code>java.lang.Class.equals(java.lang.Class)</code> check) in
- * this method, to check if it supports the InflowContext type provided
- * by the resource adapter. This method must be idempotent, that is all
- * calls to this method by a resource adapter for a particular
- * <code>InflowContext</code> type must return the same boolean value
- * throughout the lifecycle of that resource adapter instance.
- *
- * @return true if the <code>inflowContextClass</code> is supported
- * by the application server. false if the <code>inflowContextClass</code>
- * is unsupported or unknown to the application server.
- *
- * @since 1.6
- */
-
- boolean isContextSupported(
- Class<? extends WorkContext> inflowContextClass);
-
-
- /**
- * Provides a handle to a <code>TransactionSynchronization</code> instance. The
- * <code>TransactionSynchronizationRegistry</code> instance could be used by a
- * resource adapter to register synchronization objects, get transaction state and
- * status etc. This interface is implemented by the application server by a
- * stateless service object. The same object can be used by any number of
- * resource adapter objects with thread safety.
- *
- * @return a <code>TransactionSynchronizationRegistry</code> instance.
- * @since 1.6
- */
- TransactionSynchronizationRegistry getTransactionSynchronizationRegistry();
+ /**
+ * Creates a new <code>java.util.Timer</code> instance. The
+ * <code>Timer</code> instance could be used to perform periodic
+ * <code>Work</code> executions or other tasks.
+ *
+ * @throws UnavailableException indicates that a
+ * <code>Timer</code> instance is not available. The
+ * request may be retried later.
+ *
+ * @return a new <code>Timer</code> instance.
+ */
+ Timer createTimer() throws UnavailableException;
+
+ /**
+ * A resource adapter can check an application server’s support
+ * for a particular WorkContext type through this method.
+ * This mechanism enables a resource adapter developer to
+ * dynamically change the WorkContexts submitted with a Work instance
+ * based on the support provided by the application server.
+ *
+ * The application server must employ an exact type equality check (that is
+ * <code>java.lang.Class.equals(java.lang.Class)</code> check) in
+ * this method, to check if it supports the WorkContext type provided
+ * by the resource adapter. This method must be idempotent, that is all
+ * calls to this method by a resource adapter for a particular
+ * <code>WorkContext</code> type must return the same boolean value
+ * throughout the lifecycle of that resource adapter instance.
+ *
+ * @param workContextClass The work context class
+ * @return true if the <code>workContextClass</code> is supported
+ * by the application server. false if the <code>workContextClass</code>
+ * is unsupported or unknown to the application server.
+ *
+ * @since 1.6
+ */
+ boolean isContextSupported(Class<? extends WorkContext> workContextClass);
+
+ /**
+ * Provides a handle to a <code>TransactionSynchronization</code> instance. The
+ * <code>TransactionSynchronizationRegistry</code> instance could be used by a
+ * resource adapter to register synchronization objects, get transaction state and
+ * status etc. This interface is implemented by the application server by a
+ * stateless service object. The same object can be used by any number of
+ * resource adapter objects with thread safety.
+ *
+ * @return a <code>TransactionSynchronizationRegistry</code> instance.
+ * @since 1.6
+ */
+ TransactionSynchronizationRegistry getTransactionSynchronizationRegistry();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/CommException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/CommException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/CommException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* This indicates errors related to failed or interrupted
* communication with an EIS instance. Examples of common error conditions
@@ -32,50 +35,89 @@
* @author Rahul Sharma
* @author Ram Jeyaraman
*/
-public class CommException extends javax.resource.ResourceException {
+public class CommException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public CommException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public CommException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = -4522218827155509206L;
+ }
+ else
+ {
+ serialVersionUID = 5000980212339163591L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public CommException()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public CommException(Throwable cause) {
- super(cause);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public CommException(String message)
+ {
+ super(message);
+ }
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public CommException(String message, Throwable cause) {
- super(message, cause);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public CommException(Throwable cause)
+ {
+ super(cause);
+ }
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public CommException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public CommException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public CommException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConfigProperty.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConfigProperty.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConfigProperty.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,60 +1,77 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
import static java.lang.annotation.RetentionPolicy.*;
/**
* Designates a JavaBean property as a configuration property
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
@Documented
@Retention(RUNTIME)
- at Target( { FIELD, METHOD })
-public @interface ConfigProperty {
+ at Target({ FIELD, METHOD })
+public @interface ConfigProperty
+{
+ /**
+ * Inferred by the container if unspecified.
+ */
+ Class type() default Object.class;
- /**
- * Inferred by the container if unspecified.
- */
- Class type() default Object.class;
+ /**
+ * Description of the configuration property
+ */
+ String[] description() default { };
+
+ /**
+ * Inferred by the container for field based annotations if possible
+ */
+ String defaultValue() default "";
+
+ /**
+ * Indicates that the configuration tools must ignore considering this
+ * Property during auto-discovery of Configuration properties.
+ */
+ boolean ignore() default false;
- String description() default "";
-
- /**
- * Inferred by the container for field based annotations if possible
- */
- String defaultValue() default "";
-
- /**
- * Indicates that the configuration tools must ignore considering this
- * Property during auto-discovery of Configuration properties.
- */
- boolean ignore() default false;
+ /**
+ * Indicates that the configuration property supports
+ * dynamic updates to its value during the lifetime of
+ * the JavaBean
+ */
+ boolean supportsDynamicUpdates() default false;
+
+ /**
+ * Indicates that the configuration property is confidential and
+ * recommends application server's configuration tools to
+ * use special visual aids for editing them.
+ */
+ boolean confidential() default false;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinition.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinition.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinition.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,31 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Documented;
import static java.lang.annotation.RetentionPolicy.*;
/**
@@ -36,39 +36,39 @@
*
* @since 1.6
*
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
@Documented
@Retention(RUNTIME)
@Target(TYPE)
-public @interface ConnectionDefinition {
+public @interface ConnectionDefinition
+{
- /**
- * Specifies the ConnectionFactory interface supported by the resource
- * adapter. Example: javax.resource.cci.ConnectionFactory or
- * com.wombat.ConnectionFactory
- */
- Class connectionFactory();
-
- /**
- * Specifies the Class provided by the resource adapter that implements the
- * resource adapter specific ConnectionFactory interface. Example:
- * com.wombat.ConnectionFactoryImpl
- */
- Class connectionFactoryImpl();
-
- /**
- * Specifies the Connection interface supported by the resource adapter.
- * Example: javax.resource.cci.Connection or com.wombat.Connection
- */
- Class connection();
-
- /**
- * Specifies the class provided by the resource adapter that implements the
- * resource adapter specific Connection interface. Example:
- * com.wombat.ConnectionImpl
- */
- Class connectionImpl();
-
-}
\ No newline at end of file
+ /**
+ * Specifies the ConnectionFactory interface supported by the resource
+ * adapter. Example: javax.resource.cci.ConnectionFactory or
+ * com.wombat.ConnectionFactory
+ */
+ Class connectionFactory();
+
+ /**
+ * Specifies the Class provided by the resource adapter that implements the
+ * resource adapter specific ConnectionFactory interface. Example:
+ * com.wombat.ConnectionFactoryImpl
+ */
+ Class connectionFactoryImpl();
+
+ /**
+ * Specifies the Connection interface supported by the resource adapter.
+ * Example: javax.resource.cci.Connection or com.wombat.Connection
+ */
+ Class connection();
+
+ /**
+ * Specifies the class provided by the resource adapter that implements the
+ * resource adapter specific Connection interface. Example:
+ * com.wombat.ConnectionImpl
+ */
+ Class connectionImpl();
+}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinitions.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinitions.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionDefinitions.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,31 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Documented;
import static java.lang.annotation.RetentionPolicy.*;
/**
@@ -35,21 +35,21 @@
* ManagedConnectionFactory} interface.
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
@Documented
@Retention(RUNTIME)
@Target(TYPE)
-public @interface ConnectionDefinitions {
-
- /**
- * An array of {@link ConnectionDefinition ConnectionDefinition}s associated
- * with the <code>ManagedConectionFactory</code> JavaBean.
- *
- * @return an array of <code>ConnectionDefinition</code>s associated with
- * the <code>ManagedConnectionFactory</code> instance.
- */
- ConnectionDefinition[] value();
-
+public @interface ConnectionDefinitions
+{
+
+ /**
+ * An array of {@link ConnectionDefinition ConnectionDefinition}s associated
+ * with the <code>ManagedConectionFactory</code> JavaBean.
+ *
+ * @return an array of <code>ConnectionDefinition</code>s associated with
+ * the <code>ManagedConnectionFactory</code> instance.
+ */
+ ConnectionDefinition[] value();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEvent.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEvent.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEvent.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,33 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
-import javax.resource.ResourceException;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.ObjectStreamField;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
import java.util.EventObject;
/** The ConnectionEvent class provides information about the source of
@@ -54,111 +59,200 @@
* @see javax.resource.spi.ConnectionEventListener
*/
-public class ConnectionEvent extends java.util.EventObject {
+public class ConnectionEvent extends EventObject
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /** Event notification that an application component has closed the
- * connection
- **/
- public static final int CONNECTION_CLOSED = 1;
+ /** Persistence field information */
+ private static final ObjectStreamField[] serialPersistentFields;
+ private static final int ID_IDX = 0;
+ private static final int EXCEPTION_IDX = 1;
+ private static final int CONN_HANDLE_IDX = 2;
- /** Event notification that a Resource Manager Local Transaction was
- * started on the connection
- **/
- public static final int LOCAL_TRANSACTION_STARTED = 2;
+ /** Event notification that an application component has closed the
+ * connection
+ **/
+ public static final int CONNECTION_CLOSED = 1;
+
+ /** Event notification that a Resource Manager Local Transaction was
+ * started on the connection
+ **/
+ public static final int LOCAL_TRANSACTION_STARTED = 2;
+
+ /** Event notification that a Resource Manager Local Transaction was
+ * committed on the connection
+ **/
+ public static final int LOCAL_TRANSACTION_COMMITTED = 3;
+
+ /** Event notification that a Resource Manager Local Transaction was
+ * rolled back on the connection
+ **/
+ public static final int LOCAL_TRANSACTION_ROLLEDBACK = 4;
+
+ /** Event notification that an error occurred on the connection.
+ * This event indicates that the ManagedConnection instance is
+ * now invalid and unusable.
+ **/
+ public static final int CONNECTION_ERROR_OCCURRED = 5;
+
+ /** Exception associated with the <code>ConnectionEvent</code>
+ * instance.
+ *
+ * @serial
+ **/
+ private Exception e;
+
+ /** Type of the event
+ **/
+ protected int id;
- /** Event notification that a Resource Manager Local Transaction was
- * committed on the connection
- **/
- public static final int LOCAL_TRANSACTION_COMMITTED = 3;
+ private Object connectionHandle;
- /** Event notification that a Resource Manager Local Transaction was
- * rolled back on the connection
- **/
- public static final int LOCAL_TRANSACTION_ROLLEDBACK = 4;
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /** Event notification that an error occurred on the connection.
- * This event indicates that the ManagedConnection instance is
- * now invalid and unusable.
- **/
- public static final int CONNECTION_ERROR_OCCURRED = 5;
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 2776168349823367611L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField id int */
+ new ObjectStreamField("id", int.class),
+ /** @serialField e Exception */
+ new ObjectStreamField("e", Exception.class),
+ /** @serialField connectionHandle Object */
+ new ObjectStreamField("connectionHandle", Object.class)
+ };
+ }
+ else
+ {
+ serialVersionUID = 5611772461379563249L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField id int */
+ new ObjectStreamField("id", int.class),
+ /** @serialField exception Exception */
+ new ObjectStreamField("exception", Exception.class),
+ /** @serialField connectionHandle Object */
+ new ObjectStreamField("connectionHandle", Object.class)
+ };
+ }
+ }
+
+ /**
+ * Construct a ConnectionEvent object. Exception defaults to null.
+ *
+ * @param source ManagedConnection that is the
+ * source of the event
+ * @param eid type of the Connection event
+ */
+ public ConnectionEvent(ManagedConnection source, int eid)
+ {
+ super(source);
+ this.id = eid;
+ }
+
+ /**
+ * Construct a ConnectionEvent object.
+ *
+ * @param source ManagedConnection that is the
+ * source of the event
+ * @param exception exception about to be thrown to the application
+ * @param eid type of the Connection event
+ */
+ public ConnectionEvent(ManagedConnection source,
+ int eid,
+ Exception exception)
+ {
+ super(source);
+ this.e = exception;
+ this.id = eid;
+ }
+ /**Get the connection handle associated with the Managed
+ * Connection instance. Used for CONNECTION_CLOSED event.
+ *
+ * @return the connection handle. May be null
+ */
+ public Object getConnectionHandle()
+ {
+ return connectionHandle;
+ }
+
+ /**
+ * Set the connection handle. Used for CONNECTION_CLOSED event
+ * @param connectionHandle The connection handle
+ */
+ public void setConnectionHandle(Object connectionHandle)
+ {
+ this.connectionHandle = connectionHandle;
+ }
- /** Exception associated with the <code>ConnectionEvent</code>
- * instance.
- *
- * @serial
- **/
- private Exception exception;
+ /**
+ * Get the exception. May be null.
+ *
+ * @return the exception about to be thrown.
+ */
+ public Exception getException()
+ {
+ return e;
+ }
- /** Type of the event
- **/
- protected int id;
+ /**
+ * Get the type of event
+ * @return The id
+ */
+ public int getId()
+ {
+ return id;
+ }
- private Object connectionHandle;
-
- /**
- * Construct a ConnectionEvent object. Exception defaults to null.
- *
- * @param source ManagedConnection that is the
- * source of the event
- * @param eid type of the Connection event
- */
- public ConnectionEvent(ManagedConnection source, int eid) {
- super(source);
- this.id = eid;
- }
+ /**
+ * Read object
+ * @param ois The object input stream
+ * @exception ClassNotFoundException If a class can not be found
+ * @exception IOException Thrown if an error occurs
+ */
+ private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException
+ {
+ ObjectInputStream.GetField fields = ois.readFields();
+ String name = serialPersistentFields[ID_IDX].getName();
+ this.id = fields.get(name, CONNECTION_ERROR_OCCURRED);
+ name = serialPersistentFields[EXCEPTION_IDX].getName();
+ this.e = (Exception) fields.get(name, null);
+ name = serialPersistentFields[CONN_HANDLE_IDX].getName();
+ this.connectionHandle = fields.get(name, null);
+ }
- /**
- * Construct a ConnectionEvent object.
- *
- * @param source ManagedConnection that is the
- * source of the event
- * @param exception exception about to be thrown to the application
- * @param eid type of the Connection event
- */
- public ConnectionEvent(ManagedConnection source, int eid,
- Exception exception) {
- super(source);
- this.exception = exception;
- this.id = eid;
- }
-
- /**Get the connection handle associated with the Managed
- * Connection instance. Used for CONNECTION_CLOSED event.
- *
- * @return the connection handle. May be null
- */
- public Object getConnectionHandle() {
- return connectionHandle;
- }
-
- /**
- * Set the connection handle. Used for CONNECTION_CLOSED event
- */
- public void setConnectionHandle(Object connectionHandle) {
- this.connectionHandle = connectionHandle;
- }
-
-
- /**
- * Get the exception. May be null.
- *
- * @return the exception about to be thrown.
- */
- public Exception getException() {
- return exception;
- }
-
- /**
- * Get the type of event
- */
- public
- int getId() {
- return id;
- }
-}
-
-
-
-
-
+ /**
+ * Write object
+ * @param oos The object output stream
+ * @exception IOException Thrown if an error occurs
+ */
+ private void writeObject(ObjectOutputStream oos) throws IOException
+ {
+ ObjectOutputStream.PutField fields = oos.putFields();
+ String name = serialPersistentFields[ID_IDX].getName();
+ fields.put(name, id);
+ name = serialPersistentFields[EXCEPTION_IDX].getName();
+ fields.put(name, e);
+ name = serialPersistentFields[CONN_HANDLE_IDX].getName();
+ fields.put(name, connectionHandle);
+ oos.writeFields();
+ }
+}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEventListener.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEventListener.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionEventListener.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,29 +1,28 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
import java.util.EventListener;
-import javax.resource.ResourceException;
/** The <code>ConnectionEventListener</code> interface provides an event
* callback mechanism to enable an application server to receive
@@ -44,72 +43,65 @@
* @see javax.resource.spi.ConnectionEvent
**/
-public interface ConnectionEventListener
- extends java.util.EventListener {
-
- /** Notifies that an application component has closed the connection.
- *
- * <p>A ManagedConnection instance notifies its registered set of
- * listeners by calling ConnectionEventListener.connectionClosed method
- * when an application component closes a connection handle. The
- * application server uses this connection close event to put the
- * ManagedConnection instance back in to the connection pool.
- *
- * @param event event object describing the source of
- * the event
- */
- public
- void connectionClosed(ConnectionEvent event);
-
- /** Notifies that a Resource Manager Local Transaction was started on
- * the ManagedConnection instance.
- *
- * @param event event object describing the source of
- * the event
- */
- public
- void localTransactionStarted(ConnectionEvent event);
-
- /** Notifies that a Resource Manager Local Transaction was committed
- * on the ManagedConnection instance.
- *
- * @param event event object describing the source of
- * the event
- */
- public
- void localTransactionCommitted(ConnectionEvent event);
-
- /** Notifies that a Resource Manager Local Transaction was rolled back
- * on the ManagedConnection instance.
- *
- * @param event event object describing the source of
- * the event
- */
- public
- void localTransactionRolledback(ConnectionEvent event);
-
- /** Notifies a connection related error.
-
- * The ManagedConnection instance calls the method
- * ConnectionEventListener.connectionErrorOccurred to notify
- * its registered listeners of the occurrence of a physical
- * connection-related error. The event notification happens
- * just before a resource adapter throws an exception to the
- * application component using the connection handle.
- *
- * The connectionErrorOccurred method indicates that the
- * associated ManagedConnection instance is now invalid and
- * unusable. The application server handles the connection
- * error event notification by initiating application
- * server-specific cleanup (for example, removing ManagedConnection
- * instance from the connection pool) and then calling
- * ManagedConnection.destroy method to destroy the physical
- * connection.
- *
- * @param event event object describing the source of
- * the event
- */
- public
- void connectionErrorOccurred(ConnectionEvent event);
-
+public interface ConnectionEventListener extends EventListener
+{
+
+ /** Notifies that an application component has closed the connection.
+ *
+ * <p>A ManagedConnection instance notifies its registered set of
+ * listeners by calling ConnectionEventListener.connectionClosed method
+ * when an application component closes a connection handle. The
+ * application server uses this connection close event to put the
+ * ManagedConnection instance back in to the connection pool.
+ *
+ * @param event event object describing the source of
+ * the event
+ */
+ public void connectionClosed(ConnectionEvent event);
+
+ /** Notifies that a Resource Manager Local Transaction was started on
+ * the ManagedConnection instance.
+ *
+ * @param event event object describing the source of
+ * the event
+ */
+ public void localTransactionStarted(ConnectionEvent event);
+
+ /** Notifies that a Resource Manager Local Transaction was committed
+ * on the ManagedConnection instance.
+ *
+ * @param event event object describing the source of
+ * the event
+ */
+ public void localTransactionCommitted(ConnectionEvent event);
+
+ /** Notifies that a Resource Manager Local Transaction was rolled back
+ * on the ManagedConnection instance.
+ *
+ * @param event event object describing the source of
+ * the event
+ */
+ public void localTransactionRolledback(ConnectionEvent event);
+
+ /** Notifies a connection related error.
+ * The ManagedConnection instance calls the method
+ * ConnectionEventListener.connectionErrorOccurred to notify
+ * its registered listeners of the occurrence of a physical
+ * connection-related error. The event notification happens
+ * just before a resource adapter throws an exception to the
+ * application component using the connection handle.
+ *
+ * The connectionErrorOccurred method indicates that the
+ * associated ManagedConnection instance is now invalid and
+ * unusable. The application server handles the connection
+ * error event notification by initiating application
+ * server-specific cleanup (for example, removing ManagedConnection
+ * instance from the connection pool) and then calling
+ * ManagedConnection.destroy method to destroy the physical
+ * connection.
+ *
+ * @param event event object describing the source of
+ * the event
+ */
+ public void connectionErrorOccurred(ConnectionEvent event);
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionManager.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -62,39 +62,37 @@
* @see javax.resource.spi.ManagedConnectionFactory
**/
-public interface ConnectionManager
- extends java.io.Serializable {
-
- /** <p>The method allocateConnection gets called by the resource adapter's
- * connection factory instance. This lets connection factory instance
- * (provided by the resource adapter) pass a connection request to
- * the ConnectionManager instance.</p>
- *
- * <p>The connectionRequestInfo parameter represents information specific
- * to the resource adapter for handling of the connection request.</p>
- *
- * @param mcf
- * used by application server to delegate
- * connection matching/creation
- * @param cxRequestInfo
- * connection request Information
- *
- * @return connection handle with an EIS specific connection interface.
- *
- *
- * @throws ResourceException Generic exception
- * @throws ApplicationServerInternalException
- * Application server specific exception
- * @throws SecurityException Security related error
- * @throws ResourceAllocationException
- * Failed to allocate system resources for
- * connection request
- * @throws ResourceAdapterInternalException
- * Resource adapter related error condition
- **/
- public
- Object allocateConnection(ManagedConnectionFactory mcf,
- ConnectionRequestInfo cxRequestInfo)
- throws ResourceException;
-
+public interface ConnectionManager extends java.io.Serializable
+{
+
+ /** <p>The method allocateConnection gets called by the resource adapter's
+ * connection factory instance. This lets connection factory instance
+ * (provided by the resource adapter) pass a connection request to
+ * the ConnectionManager instance.</p>
+ *
+ * <p>The connectionRequestInfo parameter represents information specific
+ * to the resource adapter for handling of the connection request.</p>
+ *
+ * @param mcf
+ * used by application server to delegate
+ * connection matching/creation
+ * @param cxRequestInfo
+ * connection request Information
+ *
+ * @return connection handle with an EIS specific connection interface.
+ *
+ *
+ * @throws ResourceException Generic exception
+ * @throws ApplicationServerInternalException
+ * Application server specific exception
+ * @throws SecurityException Security related error
+ * @throws ResourceAllocationException
+ * Failed to allocate system resources for
+ * connection request
+ * @throws ResourceAdapterInternalException
+ * Resource adapter related error condition
+ **/
+ public Object allocateConnection(ManagedConnectionFactory mcf,
+ ConnectionRequestInfo cxRequestInfo)
+ throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ConnectionRequestInfo.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -45,25 +45,22 @@
* @see javax.resource.spi.ManagedConnection
**/
-public interface ConnectionRequestInfo {
-
- /** Checks whether this instance is equal to another. Since
- * connectionRequestInfo is defined specific to a resource
- * adapter, the resource adapter is required to implement
- * this method. The conditions for equality are specific
- * to the resource adapter.
- *
- * @return True if the two instances are equal.
- **/
- public
- boolean equals(Object other);
-
- /** Returns the hashCode of the ConnectionRequestInfo.
- *
- * @return hash code os this instance
- **/
- public
- int hashCode();
-
-
+public interface ConnectionRequestInfo
+{
+
+ /** Checks whether this instance is equal to another. Since
+ * connectionRequestInfo is defined specific to a resource
+ * adapter, the resource adapter is required to implement
+ * this method. The conditions for equality are specific
+ * to the resource adapter.
+ * @param other The other object
+ * @return True if the two instances are equal.
+ **/
+ public boolean equals(Object other);
+
+ /** Returns the hashCode of the ConnectionRequestInfo.
+ *
+ * @return hash code os this instance
+ **/
+ public int hashCode();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Connector.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Connector.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/Connector.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,32 +1,33 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Documented;
import static java.lang.annotation.RetentionPolicy.*;
+
import javax.resource.spi.work.WorkContext;
/**
@@ -36,110 +37,110 @@
* JavaBean class.
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
-
@Documented
@Retention(RUNTIME)
@Target(TYPE)
-public @interface Connector {
+public @interface Connector
+{
- String[] description() default {};
-
- String[] displayName() default "";
-
- /**
- * Specifies the file name for small GIF or JPEG icon images that are
- * used to represent the resource adapter in a GUI tool.
- *
- * Each smallIcon must be associated with a largeIcon element and the
- * application server must use the ordinal value in their respective
- * arrays to find the related pairs of icons.
- */
- String[] smallIcon() default "";
-
- /**
- * Specifies the file name for large GIF or JPEG icon images that are
- * used to represent the resource adapter in a GUI tool.
- * Each smallIcon must be associated with a largeIcon element and
- * the application server must use the ordinal value in their
- * respective arrays to find the related pairs of icons.
- */
- String[] largeIcon() default "";
-
- /**
- * Specifies the name of the resource adapter provider vendor.
- */
- String vendorName() default "";
-
- /**
- * Contains information about the type of EIS. For example, the type of an
- * EIS can be product name of the EIS independent of any version info.This
- * helps in identifying EIS instances that can be used with this resource
- * adapter.
- */
- String eisType() default "";
-
- /**
- * Specifies the version of the resource adapter implementation.
- */
- String version() default "";
-
- /**
- * Specifies licensing requirements for the resource adapter module and an
- * optional description of the licensing terms .
- */
- String[] licenseDescription() default "";
-
- /**
- * Specifies whether a license is required to deploy and use this resource
- * adapter
- */
- boolean licenseRequired() default false;
-
- /**
- * Specifies the version of the Java EE Connector Architecture specification
- * that is supported by this resource adapter. This information enables
- * deployer to configure the resource adapter to support deployment and
- * runtime requirements of the corresponding connector architecture
- * specification.
- */
- String specVersion() default "1.6";
-
- /**
- * Specifies the authentication mechanisms supported by the resource
- * adapter.
- *
- * @see AuthenticationMechanism
- */
- AuthenticationMechanism[] authMechanisms() default {};
-
- /**
- * Specifies whether a license is required to deploy and use this resource
- * adapter
- */
- boolean reauthenticationSupport() default false;
-
- /**
- * Specifies the extended security permissions required to be provided for
- * the operation of the resource adapter module
- *
- * @see SecurityPermission
- */
- SecurityPermission[] securityPermissions() default {};
-
- /**
- * Specifies the level of transaction support provided by the resource
- * adapter.
- *
- * @see TransactionSupport.TransactionSupportLevel
- */
- TransactionSupport.TransactionSupportLevel transactionSupport() default TransactionSupport.TransactionSupportLevel.NoTransaction;
-
- /**
- * Specifies a list of fully qualified classes that implements the
- * {@link WorkContext InflowContext} interface that a resource adapter
- * requires the application server to support.
- */
- Class<? extends WorkContext>[] requiredInflowContexts() default {};
+ /**
+ * Describes the resource adapter module.
+ */
+ String[] description() default { };
+
+ /**
+ * An optional short name, providing information about the
+ * resource adapter module, that is intended to be displayed
+ * by tools.
+ */
+ String[] displayName() default { };
+
+ /**
+ * Specifies the file name for small GIF or JPEG icon images that are
+ * used to represent the resource adapter in a GUI tool.
+ *
+ * Each smallIcon must be associated with a largeIcon element and the
+ * application server must use the ordinal value in their respective
+ * arrays to find the related pairs of icons.
+ */
+ String[] smallIcon() default { };
+
+ /**
+ * Specifies the file name for large GIF or JPEG icon images that are
+ * used to represent the resource adapter in a GUI tool.
+ * Each smallIcon must be associated with a largeIcon element and
+ * the application server must use the ordinal value in their
+ * respective arrays to find the related pairs of icons.
+ */
+ String[] largeIcon() default { };
+
+ /**
+ * Specifies the name of the resource adapter provider vendor.
+ */
+ String vendorName() default "";
+
+ /**
+ * Contains information about the type of EIS. For example, the type of an
+ * EIS can be product name of the EIS independent of any version info.This
+ * helps in identifying EIS instances that can be used with this resource
+ * adapter.
+ */
+ String eisType() default "";
+
+ /**
+ * Specifies the version of the resource adapter implementation.
+ */
+ String version() default "";
+
+ /**
+ * Specifies licensing requirements for the resource adapter module and an
+ * optional description of the licensing terms .
+ */
+ String[] licenseDescription() default { };
+
+ /**
+ * Specifies whether a license is required to deploy and use this resource
+ * adapter
+ */
+ boolean licenseRequired() default false;
+
+ /**
+ * Specifies the authentication mechanisms supported by the resource
+ * adapter.
+ *
+ * @see AuthenticationMechanism
+ */
+ AuthenticationMechanism[] authMechanisms() default { };
+
+ /**
+ * Specifies whether a license is required to deploy and use this resource
+ * adapter
+ */
+ boolean reauthenticationSupport() default false;
+
+ /**
+ * Specifies the extended security permissions required to be provided for
+ * the operation of the resource adapter module
+ *
+ * @see SecurityPermission
+ */
+ SecurityPermission[] securityPermissions() default { };
+
+ /**
+ * Specifies the level of transaction support provided by the resource
+ * adapter.
+ *
+ * @see TransactionSupport.TransactionSupportLevel
+ */
+ TransactionSupport.TransactionSupportLevel transactionSupport()
+ default TransactionSupport.TransactionSupportLevel.NoTransaction;
+
+ /**
+ * Specifies a list of fully qualified classes that implements the
+ * {@link WorkContext WorkContext} interface that a resource adapter
+ * requires the application server to support.
+ */
+ Class<? extends WorkContext>[] requiredWorkContexts() default { };
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/DissociatableManagedConnection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -32,22 +32,23 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface DissociatableManagedConnection {
-
- /**
- * This method is called by an application server (that is capable of
- * lazy connection association optimization) in order to dissociate
- * a <code>ManagedConnection</code> instance from all of its connection
- * handles.
- *
- * @throws ResourceException generic exception if operation fails.
- *
- * @throws ResourceAdapterInternalException
- * resource adapter internal error condition
- * @throws IllegalStateException Illegal state for calling connection
- * cleanup. Example - if a localtransaction is in progress
- * that doesn't allow connection cleanup.
- */
- void dissociateConnections() throws ResourceException;
+public interface DissociatableManagedConnection
+{
+
+ /**
+ * This method is called by an application server (that is capable of
+ * lazy connection association optimization) in order to dissociate
+ * a <code>ManagedConnection</code> instance from all of its connection
+ * handles.
+ *
+ * @throws ResourceException generic exception if operation fails.
+ *
+ * @throws ResourceAdapterInternalException
+ * resource adapter internal error condition
+ * @throws IllegalStateException
+ * Illegal state for dissociating a
+ * <code>ManagedConnection</code> from all of its connection
+ * handles.
+ */
+ void dissociateConnections() throws ResourceException;
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/EISSystemException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/EISSystemException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/EISSystemException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* An <code>EISSystemException</code> is used to indicate any EIS
* specific system-level
@@ -34,50 +37,89 @@
* @author Ram Jeyaraman
*/
-public class EISSystemException extends javax.resource.ResourceException {
+public class EISSystemException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public EISSystemException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public EISSystemException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 5912222091656752433L;
+ }
+ else
+ {
+ serialVersionUID = 5753172122428814004L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public EISSystemException()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public EISSystemException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public EISSystemException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public EISSystemException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public EISSystemException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public EISSystemException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public EISSystemException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public EISSystemException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/IllegalStateException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/IllegalStateException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/IllegalStateException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* An <code>IllegalStateException</code>
* is thrown from a method if the callee (resource
@@ -33,50 +36,89 @@
* @author Ram Jeyaraman
*/
-public class IllegalStateException extends javax.resource.ResourceException {
+public class IllegalStateException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public IllegalStateException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public IllegalStateException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = -150139934550438352L;
+ }
+ else
+ {
+ serialVersionUID = 3473092818417322126L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public IllegalStateException()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public IllegalStateException(Throwable cause) {
- super(cause);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public IllegalStateException(String message)
+ {
+ super(message);
+ }
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public IllegalStateException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public IllegalStateException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public IllegalStateException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public IllegalStateException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public IllegalStateException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/InvalidPropertyException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/InvalidPropertyException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/InvalidPropertyException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
import java.beans.PropertyDescriptor;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
/**
* This exception is thrown to indicate invalid configuration
@@ -31,73 +33,112 @@
* @version 0.2
* @author Ram Jeyaraman
*/
-public class InvalidPropertyException
- extends javax.resource.ResourceException {
+public class InvalidPropertyException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /*
- * Holder for invalid properties.
- */
- private PropertyDescriptor[] invalidProperties;
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Create a InvalidPropertyException.
- */
- public InvalidPropertyException() {
- super();
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = -2395559483586818078L;
+ }
+ else
+ {
+ serialVersionUID = -485903720300735741L;
+ }
+ }
- /**
- * Create a InvalidPropertyException.
- *
- * @param message a description of the exception
- */
- public InvalidPropertyException(String message) {
- super(message);
- }
+ /**
+ * Holder for invalid properties.
+ */
+ private PropertyDescriptor[] invalidProperties;
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public InvalidPropertyException(Throwable cause) {
- super(cause);
- }
+ /**
+ * Create a InvalidPropertyException.
+ */
+ public InvalidPropertyException()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public InvalidPropertyException(String message, Throwable cause) {
- super(message, cause);
- }
+ /**
+ * Create a InvalidPropertyException.
+ *
+ * @param message a description of the exception
+ */
+ public InvalidPropertyException(String message)
+ {
+ super(message);
+ }
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public InvalidPropertyException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public InvalidPropertyException(Throwable cause)
+ {
+ super(cause);
+ }
- /**
- * Set a list of invalid properties.
- */
- public void setInvalidPropertyDescriptors(
- PropertyDescriptor[] invalidProperties) {
- this.invalidProperties = invalidProperties;
- }
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public InvalidPropertyException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
- /**
- * Get the list of invalid properties.
- */
- public PropertyDescriptor[] getInvalidPropertyDescriptors() {
- return this.invalidProperties;
- }
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public InvalidPropertyException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
+
+ /**
+ * Set a list of invalid properties.
+ * @param invalidProperties The invalid properties
+ */
+ public void setInvalidPropertyDescriptors(PropertyDescriptor[] invalidProperties)
+ {
+ this.invalidProperties = invalidProperties;
+ }
+
+ /**
+ * Get the list of invalid properties.
+ * @return The properties
+ */
+ public PropertyDescriptor[] getInvalidPropertyDescriptors()
+ {
+ return this.invalidProperties;
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyAssociatableConnectionManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -32,53 +32,55 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface LazyAssociatableConnectionManager {
+public interface LazyAssociatableConnectionManager
+{
+
+ /**
+ * This method is called by a resource adapter (that is capable of
+ * lazy connection association optimization) in order to lazily associate
+ * a connection object with a <code>ManagedConnection</code> instance.
+ *
+ * @param connection the connection object that is to be associated.
+ *
+ * @param mcf The <code>ManagedConnectionFactory</code> instance that was
+ * originally used to create the connection object.
+ *
+ * @param cxReqInfo connection request information. This information must
+ * be the same as that used to originally create the connection object.
+ *
+ * @throws ResourceException Generic exception.
+ *
+ * @throws ApplicationServerInternalException
+ * Application server specific exception.
+ *
+ * @throws SecurityException Security related error.
+ *
+ * @throws ResourceAllocationException
+ * Failed to allocate system resources for
+ * connection request.
+ * @throws ResourceAdapterInternalException
+ * Resource adapter related error condition.
+ */
+ void associateConnection(Object connection,
+ ManagedConnectionFactory mcf,
+ ConnectionRequestInfo cxReqInfo)
+ throws ResourceException;
- /**
- * This method is called by a resource adapter (that is capable of
- * lazy connection association optimization) in order to lazily associate
- * a connection object with a <code>ManagedConnection</code> instance.
- *
- * @param connection the connection object that is to be associated.
- *
- * @param mcf The <code>ManagedConnectionFactory</code> instance that was
- * originally used to create the connection object.
- *
- * @param cxReqInfo connection request information. This information must
- * be the same as that used to originally create the connection object.
- *
- * @throws ResourceException Generic exception.
- *
- * @throws ApplicationServerInternalException
- * Application server specific exception.
- *
- * @throws SecurityException Security related error.
- *
- * @throws ResourceAllocationException
- * Failed to allocate system resources for
- * connection request.
- * @throws ResourceAdapterInternalException
- * Resource adapter related error condition.
- */
- void associateConnection(Object connection, ManagedConnectionFactory mcf,
- ConnectionRequestInfo cxReqInfo) throws ResourceException;
-
- /**
- * This method is called by the resource adapter (that is capable of
- * lazy connection association optimization) in order to notify the
- * application server that a disassociated connection handle is closed.
- * <p>The application server can then perform any cleanup operations
- * related to the disassociated connection handle in its connection pool.
- *
- * @param connection the disassociated connection object handle that
- * has been closed
- *
- * @param mcf The <code>ManagedConnectionFactory</code> instance that was
- * originally used to create the connection object.
- *
- * @since 1.6
- */
- void inactiveConnectionClosed(Object connection,
- ManagedConnectionFactory mcf);
+ /**
+ * This method is called by the resource adapter (that is capable of
+ * lazy connection association optimization) in order to notify the
+ * application server that a disassociated connection handle is closed.
+ * <p>The application server can then perform any cleanup operations
+ * related to the disassociated connection handle in its connection pool.
+ *
+ * @param connection the disassociated connection object handle that
+ * has been closed
+ *
+ * @param mcf The <code>ManagedConnectionFactory</code> instance that was
+ * originally used to create the connection object.
+ *
+ * @since 1.6
+ */
+ void inactiveConnectionClosed(Object connection,
+ ManagedConnectionFactory mcf);
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableConnectionManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -32,28 +32,28 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface LazyEnlistableConnectionManager {
-
- /**
- * This method is called by a resource adapter (that is capable of
- * lazy transaction enlistment optimization) in order to lazily enlist
- * a connection object with a XA transaction.
- *
- * @param mc The <code>ManagedConnection</code> instance that needs to be
- * lazily associated.
- *
- * @throws ResourceException Generic exception.
- *
- * @throws ApplicationServerInternalException
- * Application server specific exception.
- *
- * @throws ResourceAllocationException
- * Failed to allocate system resources for
- * connection request.
- *
- * @throws ResourceAdapterInternalException
- * Resource adapter related error condition.
- */
- void lazyEnlist(ManagedConnection mc) throws ResourceException;
+public interface LazyEnlistableConnectionManager
+{
+
+ /**
+ * This method is called by a resource adapter (that is capable of
+ * lazy transaction enlistment optimization) in order to lazily enlist
+ * a connection object with a XA transaction.
+ *
+ * @param mc The <code>ManagedConnection</code> instance that needs to be
+ * lazily associated.
+ *
+ * @throws ResourceException Generic exception.
+ *
+ * @throws ApplicationServerInternalException
+ * Application server specific exception.
+ *
+ * @throws ResourceAllocationException
+ * Failed to allocate system resources for
+ * connection request.
+ *
+ * @throws ResourceAdapterInternalException
+ * Resource adapter related error condition.
+ */
+ void lazyEnlist(ManagedConnection mc) throws ResourceException;
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LazyEnlistableManagedConnection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -30,6 +30,7 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface LazyEnlistableManagedConnection {
+public interface LazyEnlistableManagedConnection
+{
+
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransaction.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransaction.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransaction.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -41,49 +41,43 @@
* @author Rahul Sharma
* @see javax.resource.spi.ManagedConnection
**/
+public interface LocalTransaction
+{
+ /** Begin a local transaction
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws LocalTransactionException
+ * error condition related
+ * to local transaction management
+ * @throws ResourceAdapterInternalException
+ * error condition internal to resource
+ * adapter
+ * @throws EISSystemException EIS instance specific error condition
+ **/
+ public void begin() throws ResourceException;
-
-
-public interface LocalTransaction {
- /** Begin a local transaction
- *
- * @throws ResourceException generic exception if operation fails
- * @throws LocalTransactionException
- * error condition related
- * to local transaction management
- * @throws ResourceAdapterInternalException
- * error condition internal to resource
- * adapter
- * @throws EISSystemException EIS instance specific error condition
- **/
- public
- void begin() throws ResourceException;
-
- /** Commit a local transaction
- *
- * @throws ResourceException generic exception if operation fails
- * @throws LocalTransactionException
- * error condition related
- * to local transaction management
- * @throws ResourceAdapterInternalException
- * error condition internal to resource
- * adapter
- * @throws EISSystemException EIS instance specific error condition
- **/
- public
- void commit() throws ResourceException;
+ /** Commit a local transaction
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws LocalTransactionException
+ * error condition related
+ * to local transaction management
+ * @throws ResourceAdapterInternalException
+ * error condition internal to resource
+ * adapter
+ * @throws EISSystemException EIS instance specific error condition
+ **/
+ public void commit() throws ResourceException;
- /** Rollback a local transaction
- * @throws ResourceException generic exception if operation fails
- * @throws LocalTransactionException
- * error condition related
- * to local transaction management
- * @throws ResourceAdapterInternalException
- * error condition internal to resource
- * adapter
- * @throws EISSystemException EIS instance specific error condition
- **/
- public
- void rollback() throws ResourceException;
-
+ /** Rollback a local transaction
+ * @throws ResourceException generic exception if operation fails
+ * @throws LocalTransactionException
+ * error condition related
+ * to local transaction management
+ * @throws ResourceAdapterInternalException
+ * error condition internal to resource
+ * adapter
+ * @throws EISSystemException EIS instance specific error condition
+ **/
+ public void rollback() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransactionException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransactionException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/LocalTransactionException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* A <code>LocalTransactionException</code> represents various
* error conditions related to the local transaction management contract.
@@ -55,51 +58,89 @@
* @author Ram Jeyaraman
*/
-public class LocalTransactionException
- extends javax.resource.ResourceException {
+public class LocalTransactionException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public LocalTransactionException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public LocalTransactionException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 4704131764458675746L;
+ }
+ else
+ {
+ serialVersionUID = 7495828853103281459L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public LocalTransactionException()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public LocalTransactionException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public LocalTransactionException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public LocalTransactionException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public LocalTransactionException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public LocalTransactionException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public LocalTransactionException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public LocalTransactionException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnection.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnection.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnection.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,30 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import javax.resource.ResourceException;
import javax.security.auth.Subject;
import javax.transaction.xa.XAResource;
-import javax.resource.ResourceException;
/** ManagedConnection instance represents a physical connection
* to the underlying EIS.
@@ -50,227 +50,216 @@
* @see javax.resource.spi.LocalTransaction
**/
-public interface ManagedConnection {
-
- /** Creates a new connection handle for the underlying physical connection
- * represented by the ManagedConnection instance. This connection handle
- * is used by the application code to refer to the underlying physical
- * connection. This connection handle is associated with its
- * ManagedConnection instance in a resource adapter implementation
- * specific way.</P>
- *
- * <P>The ManagedConnection uses the Subject and additional ConnectionRequest
- * Info (which is specific to resource adapter and opaque to application
- * server) to set the state of the physical connection.</p>
- *
- * @param subject security context as JAAS subject
- * @param cxRequestInfo ConnectionRequestInfo instance
- * @return generic Object instance representing the connection
- * handle. For CCI, the connection handle created by a
- * ManagedConnection instance is of the type
- * javax.resource.cci.Connection.
- *
- * @throws ResourceException generic exception if operation fails
- * @throws ResourceAdapterInternalException
- * resource adapter internal error condition
- * @throws SecurityException security related error condition
- * @throws CommException failed communication with EIS instance
- * @throws EISSystemException internal error condition in EIS instance
- * - used if EIS instance is involved in
- * setting state of ManagedConnection
- *
- **/
- public
- Object getConnection(Subject subject,
- ConnectionRequestInfo cxRequestInfo)
- throws ResourceException;
+public interface ManagedConnection
+{
+ /** Creates a new connection handle for the underlying physical connection
+ * represented by the ManagedConnection instance. This connection handle
+ * is used by the application code to refer to the underlying physical
+ * connection. This connection handle is associated with its
+ * ManagedConnection instance in a resource adapter implementation
+ * specific way.</P>
+ *
+ * <P>The ManagedConnection uses the Subject and additional ConnectionRequest
+ * Info (which is specific to resource adapter and opaque to application
+ * server) to set the state of the physical connection.</p>
+ *
+ * @param subject security context as JAAS subject
+ * @param cxRequestInfo ConnectionRequestInfo instance
+ * @return generic Object instance representing the connection
+ * handle. For CCI, the connection handle created by a
+ * ManagedConnection instance is of the type
+ * javax.resource.cci.Connection.
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws ResourceAdapterInternalException
+ * resource adapter internal error condition
+ * @throws SecurityException security related error condition
+ * @throws CommException failed communication with EIS instance
+ * @throws EISSystemException internal error condition in EIS instance
+ * - used if EIS instance is involved in
+ * setting state of ManagedConnection
+ *
+ **/
+ public Object getConnection(Subject subject,
+ ConnectionRequestInfo cxRequestInfo)
+ throws ResourceException;
+
+ /** Destroys the physical connection to the underlying resource manager.
+ *
+ * <p>To manage the size of the connection pool, an application server can
+ * explictly call ManagedConnection.destroy to destroy a
+ * physical connection. A resource adapter should destroy all allocated
+ * system resources for this ManagedConnection instance when the method
+ * destroy is called.
+ *
+ * @throws ResourceException generic exception if operation failed
+ * @throws IllegalStateException illegal state for destroying connection
+ **/
+
+ public void destroy() throws ResourceException;
+
+ /** Application server calls this method to force any cleanup on the
+ * ManagedConnection instance.
+ *
+ * <p>The method ManagedConnection.cleanup initiates a cleanup of the
+ * any client-specific state as maintained by a ManagedConnection instance.
+ * The cleanup should invalidate all connection handles that had been
+ * created using this ManagedConnection instance. Any attempt by an application
+ * component to use the connection handle after cleanup of the underlying
+ * ManagedConnection should result in an exception.
+ *
+ * <p>The cleanup of ManagedConnection is always driven by an application
+ * server. An application server should not invoke ManagedConnection.cleanup
+ * when there is an uncompleted transaction (associated with a
+ * ManagedConnection instance) in progress.
+ * <p>The invocation of ManagedConnection.cleanup method on an already
+ * cleaned-up connection should not throw an exception.
+ *
+ * <p>The cleanup of ManagedConnection instance resets its client specific
+ * state and prepares the connection to be put back in to a connection
+ * pool. The cleanup method should not cause resource adapter to close
+ * the physical pipe and reclaim system resources associated with the
+ * physical connection.
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws ResourceAdapterInternalException
+ * resource adapter internal error condition
+ * @throws IllegalStateException Illegal state for calling connection
+ * cleanup. Example - if a localtransaction
+ * is in progress that doesn't allow
+ * connection cleanup
+ *
+ **/
+ public void cleanup() throws ResourceException;
- /** Destroys the physical connection to the underlying resource manager.
- *
- * <p>To manage the size of the connection pool, an application server can
- * explictly call ManagedConnection.destroy to destroy a
- * physical connection. A resource adapter should destroy all allocated
- * system resources for this ManagedConnection instance when the method
- * destroy is called.
- *
- * @throws ResourceException generic exception if operation failed
- * @throws IllegalStateException illegal state for destroying connection
- **/
+ /** Used by the container to change the association of an
+ * application-level connection handle with a ManagedConneciton
+ * instance. The container should find the right ManagedConnection
+ * instance and call the associateConnection method.
+ * In order to set a Connection Handle as the active connection
+ * handle, the container may also use the <code>associateConnection</code>
+ * method to set the same <code>ManagedConnection</code> associated
+ * with the Connection handle.
+ *
+ * <p>The resource adapter is required to implement the associateConnection
+ * method. The method implementation for a ManagedConnection should
+ * dissociate the connection handle (passed as a parameter) from its
+ * currently associated ManagedConnection and associate the new
+ * connection handle with itself.
+ *
+ * @param connection Application-level connection handle
+ *
+ * @throws ResourceException Failed to associate the connection
+ * handle with this ManagedConnection
+ * instance
+ * @throws IllegalStateException Illegal state for invoking this
+ * method
+ * @throws ResourceAdapterInternalException
+ * Resource adapter internal error
+ * condition
+ *
+ **/
+ public void associateConnection(Object connection)
+ throws ResourceException;
- public
- void destroy() throws ResourceException;
+ /** Adds a connection event listener to the ManagedConnection
+ * instance.
+ *
+ * <p>The registered ConnectionEventListener instances are notified of
+ * connection close and error events, also of local transaction related
+ * events on the Managed Connection.
+ *
+ * @param listener a new ConnectionEventListener to be registered
+ **/
+ public void addConnectionEventListener(ConnectionEventListener listener);
- /** Application server calls this method to force any cleanup on the
- * ManagedConnection instance.
- *
- * <p>The method ManagedConnection.cleanup initiates a cleanup of the
- * any client-specific state as maintained by a ManagedConnection instance.
- * The cleanup should invalidate all connection handles that had been
- * created using this ManagedConnection instance. Any attempt by an application
- * component to use the connection handle after cleanup of the underlying
- * ManagedConnection should result in an exception.
- *
- * <p>The cleanup of ManagedConnection is always driven by an application
- * server. An application server should not invoke ManagedConnection.cleanup
- * when there is an uncompleted transaction (associated with a
- * ManagedConnection instance) in progress.
+ /** Removes an already registered connection event listener from the
+ * ManagedConnection instance.
+ *
+ * @param listener already registered connection event listener to be
+ * removed
+ **/
+ public void removeConnectionEventListener(ConnectionEventListener listener);
- * <p>The invocation of ManagedConnection.cleanup method on an already
- * cleaned-up connection should not throw an exception.
- *
- * <p>The cleanup of ManagedConnection instance resets its client specific
- * state and prepares the connection to be put back in to a connection
- * pool. The cleanup method should not cause resource adapter to close
- * the physical pipe and reclaim system resources associated with the
- * physical connection.
- *
- * @throws ResourceException generic exception if operation fails
- * @throws ResourceAdapterInternalException
- * resource adapter internal error condition
- * @throws IllegalStateException Illegal state for calling connection
- * cleanup. Example - if a localtransaction
- * is in progress that doesn't allow
- * connection cleanup
- *
- **/
- public
- void cleanup() throws ResourceException;
+ /** Returns an <code>javax.transaction.xa.XAresource</code> instance.
+ * An application server enlists this XAResource instance with the
+ * Transaction Manager if the ManagedConnection instance is being used
+ * in a JTA transaction that is being coordinated by the Transaction
+ * Manager.
+ *
+ * @return XAResource instance
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws javax.resource.NotSupportedException if the operation is not supported
+ * @throws ResourceAdapterInternalException
+ * resource adapter internal error condition
+ **/
+ public XAResource getXAResource() throws ResourceException;
- /** Used by the container to change the association of an
- * application-level connection handle with a ManagedConneciton
- * instance. The container should find the right ManagedConnection
- * instance and call the associateConnection method.
- *
- * <p>The resource adapter is required to implement the associateConnection
- * method. The method implementation for a ManagedConnection should
- * dissociate the connection handle (passed as a parameter) from its
- * currently associated ManagedConnection and associate the new
- * connection handle with itself.
- *
- * @param connection Application-level connection handle
- *
- * @throws ResourceException Failed to associate the connection
- * handle with this ManagedConnection
- * instance
- * @throws IllegalStateException Illegal state for invoking this
- * method
- * @throws ResourceAdapterInternalException
- * Resource adapter internal error
- * condition
- *
- **/
- public
- void associateConnection(Object connection)
- throws ResourceException;
+ /** Returns an <code>javax.resource.spi.LocalTransaction</code> instance.
+ * The LocalTransaction interface is used by the container to manage
+ * local transactions for a RM instance.
+ *
+ * @return LocalTransaction instance
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws javax.resource.NotSupportedException if the operation is not supported
+ * @throws ResourceAdapterInternalException
+ * resource adapter internal error condition
+ **/
+ public LocalTransaction getLocalTransaction() throws ResourceException;
+ /** <p>Gets the metadata information for this connection's underlying
+ * EIS resource manager instance. The ManagedConnectionMetaData
+ * interface provides information about the underlying EIS instance
+ * associated with the ManagedConenction instance.
+ *
+ * @return ManagedConnectionMetaData instance
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws javax.resource.NotSupportedException if the operation is not supported
+ **/
+ public ManagedConnectionMetaData getMetaData() throws ResourceException;
-
- /** Adds a connection event listener to the ManagedConnection
- * instance.
- *
- * <p>The registered ConnectionEventListener instances are notified of
- * connection close and error events, also of local transaction related
- * events on the Managed Connection.
- *
- * @param listener a new ConnectionEventListener to be registered
- **/
- public
- void addConnectionEventListener(ConnectionEventListener listener);
-
- /** Removes an already registered connection event listener from the
- * ManagedConnection instance.
- *
- * @param listener already registered connection event listener to be
- * removed
- **/
- public
- void removeConnectionEventListener(
- ConnectionEventListener listener);
-
- /** Returns an <code>javax.transaction.xa.XAresource</code> instance.
- * An application server enlists this XAResource instance with the
- * Transaction Manager if the ManagedConnection instance is being used
- * in a JTA transaction that is being coordinated by the Transaction
- * Manager.
- *
- * @return XAResource instance
- *
- * @throws ResourceException generic exception if operation fails
- * @throws NotSupportedException if the operation is not supported
- * @throws ResourceAdapterInternalException
- * resource adapter internal error condition
- **/
- public
- XAResource getXAResource() throws ResourceException;
-
- /** Returns an <code>javax.resource.spi.LocalTransaction</code> instance.
- * The LocalTransaction interface is used by the container to manage
- * local transactions for a RM instance.
- *
- * @return LocalTransaction instance
- *
- * @throws ResourceException generic exception if operation fails
- * @throws NotSupportedException if the operation is not supported
- * @throws ResourceAdapterInternalException
- * resource adapter internal error condition
- **/
- public
- LocalTransaction getLocalTransaction() throws ResourceException;
-
- /** <p>Gets the metadata information for this connection's underlying
- * EIS resource manager instance. The ManagedConnectionMetaData
- * interface provides information about the underlying EIS instance
- * associated with the ManagedConenction instance.
- *
- * @return ManagedConnectionMetaData instance
- *
- * @throws ResourceException generic exception if operation fails
- * @throws NotSupportedException if the operation is not supported
- **/
- public
- ManagedConnectionMetaData getMetaData() throws ResourceException;
-
- /** Sets the log writer for this ManagedConnection instance.
- *
- * <p>The log writer is a character output stream to which all logging and
- * tracing messages for this ManagedConnection instance will be printed.
- * Application Server manages the association of output stream with the
- * ManagedConnection instance based on the connection pooling
- * requirements.</p>
- *
- * <p>When a ManagedConnection object is initially created, the default
- * log writer associated with this instance is obtained from the
- * ManagedConnectionFactory. An application server can set a log writer
- * specific to this ManagedConnection to log/trace this instance using
- * setLogWriter method.</p>
- *
- * @param out Character Output stream to be associated
- *
- * @throws ResourceException generic exception if operation fails
- * @throws ResourceAdapterInternalException
- * resource adapter related error condition
- **/
- public
- void setLogWriter(java.io.PrintWriter out) throws ResourceException;
-
- /** Gets the log writer for this ManagedConnection instance.
- *
- * <p>The log writer is a character output stream to which all logging and
- * tracing messages for this ManagedConnection instance will be printed.
- * ConnectionManager manages the association of output stream with the
- * ManagedConnection instance based on the connection pooling
- * requirements.</p>
- *
- * <p>The Log writer associated with a ManagedConnection instance can be
- * one set as default from the ManagedConnectionFactory (that created
- * this connection) or one set specifically for this instance by the
- * application server.</p>
- *
- * @return Character ourput stream associated with this Managed-
- * Connection instance
- *
- * @throws ResourceException generic exception if operation fails
- **/
- public
- java.io.PrintWriter getLogWriter() throws ResourceException;
+ /** Sets the log writer for this ManagedConnection instance.
+ *
+ * <p>The log writer is a character output stream to which all logging and
+ * tracing messages for this ManagedConnection instance will be printed.
+ * Application Server manages the association of output stream with the
+ * ManagedConnection instance based on the connection pooling
+ * requirements.</p>
+ *
+ * <p>When a ManagedConnection object is initially created, the default
+ * log writer associated with this instance is obtained from the
+ * ManagedConnectionFactory. An application server can set a log writer
+ * specific to this ManagedConnection to log/trace this instance using
+ * setLogWriter method.</p>
+ *
+ * @param out Character Output stream to be associated
+ *
+ * @throws ResourceException generic exception if operation fails
+ * @throws ResourceAdapterInternalException
+ * resource adapter related error condition
+ **/
+ public void setLogWriter(java.io.PrintWriter out) throws ResourceException;
+
+ /** Gets the log writer for this ManagedConnection instance.
+ *
+ * <p>The log writer is a character output stream to which all logging and
+ * tracing messages for this ManagedConnection instance will be printed.
+ * ConnectionManager manages the association of output stream with the
+ * ManagedConnection instance based on the connection pooling
+ * requirements.</p>
+ *
+ * <p>The Log writer associated with a ManagedConnection instance can be
+ * one set as default from the ManagedConnectionFactory (that created
+ * this connection) or one set specifically for this instance by the
+ * application server.</p>
+ *
+ * @return Character ourput stream associated with this Managed-
+ * Connection instance
+ *
+ * @throws ResourceException generic exception if operation fails
+ **/
+ public java.io.PrintWriter getLogWriter() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,31 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
-import javax.security.auth.Subject;
import java.util.Set;
+
import javax.resource.ResourceException;
-import javax.resource.NotSupportedException;
+import javax.security.auth.Subject;
/**
* ManagedConnectionFactory instance is a factory of both ManagedConnection
@@ -40,159 +40,157 @@
* @see javax.resource.spi.ManagedConnection
*/
-public interface ManagedConnectionFactory extends java.io.Serializable {
+public interface ManagedConnectionFactory extends java.io.Serializable
+{
+
+ /**
+ * Creates a Connection Factory instance. The Connection Factory
+ * instance gets initialized with the passed ConnectionManager. In
+ * the managed scenario, ConnectionManager is provided by the
+ * application server.
+ *
+ * @param cxManager ConnectionManager to be associated with
+ * created EIS connection factory instance
+ * @return EIS-specific Connection Factory instance or
+ * javax.resource.cci.ConnectionFactory instance
+ *
+ * @throws ResourceException Generic exception
+ * @throws ResourceAdapterInternalException
+ * Resource adapter related error condition
+ */
+ public Object createConnectionFactory(ConnectionManager cxManager)
+ throws ResourceException;
+
+ /**
+ * Creates a Connection Factory instance. The Connection Factory
+ * instance gets initialized with a default ConnectionManager provided
+ * by the resource adapter.
+ *
+ * @return EIS-specific Connection Factory instance or
+ * javax.resource.cci.ConnectionFactory instance
+ *
+ * @throws ResourceException Generic exception
+ * @throws ResourceAdapterInternalException
+ * Resource adapter related error condition
+ */
+ public Object createConnectionFactory() throws ResourceException;
+
+ /**
+ * Creates a new physical connection to the underlying EIS
+ * resource manager.
+ *
+ * <p>ManagedConnectionFactory uses the security information (passed as
+ * Subject) and additional ConnectionRequestInfo (which is specific to
+ * ResourceAdapter and opaque to application server) to create this new
+ * connection.
+ *
+ * @param subject Caller's security information
+ * @param cxRequestInfo Additional resource adapter specific connection
+ * request information
+ *
+ * @throws ResourceException generic exception
+ * @throws SecurityException security related error
+ * @throws ResourceAllocationException
+ * failed to allocate system resources for
+ * connection request
+ * @throws ResourceAdapterInternalException
+ * resource adapter related error condition
+ * @throws EISSystemException internal error condition in EIS instance
+ *
+ * @return ManagedConnection instance
+ */
+ public ManagedConnection createManagedConnection(Subject subject,
+ ConnectionRequestInfo cxRequestInfo)
+ throws ResourceException;
+
+ /**
+ * Returns a matched connection from the candidate set of connections.
+ *
+ *
+ * <p>ManagedConnectionFactory uses the security info (as in Subject)
+ * and information provided through ConnectionRequestInfo and additional
+ * Resource Adapter specific criteria to do matching. Note that criteria
+ * used for matching is specific to a resource adapter and is not
+ * prescribed by the Connector specification.</p>
+ *
+ * <p>This method returns a ManagedConnection instance that is the best
+ * match for handling the connection allocation request.</p>
+ *
+ * @param connectionSet candidate connection set
+ * @param subject caller's security information
+ * @param cxRequestInfo additional resource adapter specific
+ * connection request information
+ *
+ * @throws ResourceException generic exception
+ * @throws SecurityException security related error
+ * @throws ResourceAdapterInternalException
+ * resource adapter related error condition
+ * @throws javax.resource.NotSupportedException if operation is not supported
+ *
+ * @return ManagedConnection if resource adapter finds an
+ * acceptable match otherwise null
+ **/
+ public ManagedConnection matchManagedConnections(Set connectionSet,
+ Subject subject,
+ ConnectionRequestInfo cxRequestInfo)
+ throws ResourceException;
- /**
- * Creates a Connection Factory instance. The Connection Factory
- * instance gets initialized with the passed ConnectionManager. In
- * the managed scenario, ConnectionManager is provided by the
- * application server.
- *
- * @param cxManager ConnectionManager to be associated with
- * created EIS connection factory instance
- * @return EIS-specific Connection Factory instance or
- * javax.resource.cci.ConnectionFactory instance
- *
- * @throws ResourceException Generic exception
- * @throws ResourceAdapterInternalException
- * Resource adapter related error condition
- */
- public Object createConnectionFactory(ConnectionManager cxManager)
- throws ResourceException;
-
- /**
- * Creates a Connection Factory instance. The Connection Factory
- * instance gets initialized with a default ConnectionManager provided
- * by the resource adapter.
- *
- * @return EIS-specific Connection Factory instance or
- * javax.resource.cci.ConnectionFactory instance
- *
- * @throws ResourceException Generic exception
- * @throws ResourceAdapterInternalException
- * Resource adapter related error condition
- */
- public Object createConnectionFactory() throws ResourceException;
-
-
- /**
- * Creates a new physical connection to the underlying EIS
- * resource manager.
- *
- * <p>ManagedConnectionFactory uses the security information (passed as
- * Subject) and additional ConnectionRequestInfo (which is specific to
- * ResourceAdapter and opaque to application server) to create this new
- * connection.
- *
- * @param subject Caller's security information
- * @param cxRequestInfo Additional resource adapter specific connection
- * request information
- *
- * @throws ResourceException generic exception
- * @throws SecurityException security related error
- * @throws ResourceAllocationException
- * failed to allocate system resources for
- * connection request
- * @throws ResourceAdapterInternalException
- * resource adapter related error condition
- * @throws EISSystemException internal error condition in EIS instance
- *
- * @return ManagedConnection instance
- */
- public ManagedConnection createManagedConnection(
- Subject subject,
- ConnectionRequestInfo cxRequestInfo)
- throws ResourceException;
-
- /**
- * Returns a matched connection from the candidate set of connections.
- *
- *
- * <p>ManagedConnectionFactory uses the security info (as in Subject)
- * and information provided through ConnectionRequestInfo and additional
- * Resource Adapter specific criteria to do matching. Note that criteria
- * used for matching is specific to a resource adapter and is not
- * prescribed by the Connector specification.</p>
- *
- * <p>This method returns a ManagedConnection instance that is the best
- * match for handling the connection allocation request.</p>
- *
- * @param connectionSet candidate connection set
- * @param subject caller's security information
- * @param cxRequestInfo additional resource adapter specific
- * connection request information
- *
- * @throws ResourceException generic exception
- * @throws SecurityException security related error
- * @throws ResourceAdapterInternalException
- * resource adapter related error condition
- * @throws NotSupportedException if operation is not supported
- *
- * @return ManagedConnection if resource adapter finds an
- * acceptable match otherwise null
- **/
- public ManagedConnection matchManagedConnections(
- Set connectionSet,
- Subject subject,
- ConnectionRequestInfo cxRequestInfo)
- throws ResourceException;
-
- /**
- * Set the log writer for this ManagedConnectionFactory instance.</p>
- *
- * <p>The log writer is a character output stream to which all logging and
- * tracing messages for this ManagedConnectionfactory instance will be
- * printed.</p>
- *
- * <p>ApplicationServer manages the association of output stream with the
- * ManagedConnectionFactory. When a ManagedConnectionFactory object is
- * created the log writer is initially null, in other words, logging is
- * disabled. Once a log writer is associated with a
- * ManagedConnectionFactory, logging and tracing for
- * ManagedConnectionFactory instance is enabled.
- *
- * <p>The ManagedConnection instances created by ManagedConnectionFactory
- * "inherits" the log writer, which can be overridden by ApplicationServer
- * using ManagedConnection.setLogWriter to set ManagedConnection specific
- * logging and tracing.
- *
- * @param out PrintWriter - an out stream for
- * error logging and tracing
- * @throws ResourceException generic exception
- * @throws ResourceAdapterInternalException
- * resource adapter related error condition
- */
- public void setLogWriter(java.io.PrintWriter out) throws ResourceException;
-
- /**
- * Get the log writer for this ManagedConnectionFactory instance.
- *
- * <p>The log writer is a character output stream to which all logging and
- * tracing messages for this ManagedConnectionFactory instance will be
- * printed
- *
- * <p>ApplicationServer manages the association of output stream with the
- * ManagedConnectionFactory. When a ManagedConnectionFactory object is
- * created the log writer is initially null, in other words, logging is
- * disabled.
- *
- * @return PrintWriter
- * @throws ResourceException generic exception
- */
- public java.io.PrintWriter getLogWriter() throws ResourceException;
-
- /**
- * Returns the hash code for the ManagedConnectionFactory
- *
- * @return hash code for the ManagedConnectionFactory
- */
- public int hashCode();
-
- /**
- * Check if this ManagedConnectionFactory is equal to another
- * ManagedConnectionFactory.
- *
- * @return true if two instances are equal
- */
- public boolean equals(Object other);
+ /**
+ * Set the log writer for this ManagedConnectionFactory instance.</p>
+ *
+ * <p>The log writer is a character output stream to which all logging and
+ * tracing messages for this ManagedConnectionfactory instance will be
+ * printed.</p>
+ *
+ * <p>ApplicationServer manages the association of output stream with the
+ * ManagedConnectionFactory. When a ManagedConnectionFactory object is
+ * created the log writer is initially null, in other words, logging is
+ * disabled. Once a log writer is associated with a
+ * ManagedConnectionFactory, logging and tracing for
+ * ManagedConnectionFactory instance is enabled.
+ *
+ * <p>The ManagedConnection instances created by ManagedConnectionFactory
+ * "inherits" the log writer, which can be overridden by ApplicationServer
+ * using ManagedConnection.setLogWriter to set ManagedConnection specific
+ * logging and tracing.
+ *
+ * @param out PrintWriter - an out stream for
+ * error logging and tracing
+ * @throws ResourceException generic exception
+ * @throws ResourceAdapterInternalException
+ * resource adapter related error condition
+ */
+ public void setLogWriter(java.io.PrintWriter out) throws ResourceException;
+
+ /**
+ * Get the log writer for this ManagedConnectionFactory instance.
+ *
+ * <p>The log writer is a character output stream to which all logging and
+ * tracing messages for this ManagedConnectionFactory instance will be
+ * printed
+ *
+ * <p>ApplicationServer manages the association of output stream with the
+ * ManagedConnectionFactory. When a ManagedConnectionFactory object is
+ * created the log writer is initially null, in other words, logging is
+ * disabled.
+ *
+ * @return PrintWriter
+ * @throws ResourceException generic exception
+ */
+ public java.io.PrintWriter getLogWriter() throws ResourceException;
+
+ /**
+ * Returns the hash code for the ManagedConnectionFactory
+ *
+ * @return hash code for the ManagedConnectionFactory
+ */
+ public int hashCode();
+
+ /**
+ * Check if this ManagedConnectionFactory is equal to another
+ * ManagedConnectionFactory.
+ * @param other The other object
+ * @return true if two instances are equal
+ */
+ public boolean equals(Object other);
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ManagedConnectionMetaData.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -37,41 +37,42 @@
* @see javax.resource.spi.ManagedConnection
**/
-public interface ManagedConnectionMetaData {
-
- /** Returns Product name of the underlying EIS instance connected
- * through the ManagedConnection.
- *
- * @return Product name of the EIS instance.
- **/
- public
- String getEISProductName() throws ResourceException;
-
- /** Returns product version of the underlying EIS instance connected
- * through the ManagedConnection.
- *
- * @return Product version of the EIS instance
- **/
- public
- String getEISProductVersion() throws ResourceException;
-
- /** Returns maximum limit on number of active concurrent connections
- * that an EIS instance can support across client processes. If an EIS
- * instance does not know about (or does not have) any such limit, it
- * returns a 0.
- *
- * @return Maximum limit for number of active concurrent connections
- **/
- public
- int getMaxConnections() throws ResourceException;
+public interface ManagedConnectionMetaData
+{
+
+ /** Returns Product name of the underlying EIS instance connected
+ * through the ManagedConnection.
+ *
+ * @return Product name of the EIS instance.
+ * @exception ResourceException Thrown if an error occurs
+ **/
+ public String getEISProductName() throws ResourceException;
+
+ /** Returns product version of the underlying EIS instance connected
+ * through the ManagedConnection.
+ *
+ * @return Product version of the EIS instance
+ * @exception ResourceException Thrown if an error occurs
+ **/
+ public String getEISProductVersion() throws ResourceException;
+
+ /** Returns maximum limit on number of active concurrent connections
+ * that an EIS instance can support across client processes. If an EIS
+ * instance does not know about (or does not have) any such limit, it
+ * returns a 0.
+ *
+ * @return Maximum limit for number of active concurrent connections
+ * @exception ResourceException Thrown if an error occurs
+ **/
+ public int getMaxConnections() throws ResourceException;
- /** Returns name of the user associated with the ManagedConnection
- * instance. The name corresponds to the resource principal under whose
- * whose security context, a connection to the EIS instance has been
- * established.
- *
- * @return name of the user
- **/
- public
- String getUserName() throws ResourceException;
+ /** Returns name of the user associated with the ManagedConnection
+ * instance. The name corresponds to the resource principal under whose
+ * whose security context, a connection to the EIS instance has been
+ * established.
+ *
+ * @return name of the user
+ * @exception ResourceException Thrown if an error occurs
+ **/
+ public String getUserName() throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapter.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapter.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapter.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,32 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
import javax.resource.ResourceException;
-import javax.resource.NotSupportedException;
-import javax.resource.spi.ActivationSpec;
import javax.resource.spi.endpoint.MessageEndpointFactory;
-
import javax.transaction.xa.XAResource;
/**
@@ -37,114 +34,115 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface ResourceAdapter {
-
- // lifecycle operations
-
- /**
- * This is called when a resource adapter instance is bootstrapped. This
- * may be during resource adapter deployment or application server startup.
- * This is a startup notification from the application server, and this
- * method is called by an application server thread. The application server
- * thread executes in an unspecified context.
- *
- * <p>During this method call a ResourceAdapter JavaBean is
- * responsible for initializing the resource adapter
- * instance. Any exception thrown during this method
- * call causes the application server to abort the bootstrap procedure
- * for this specific resource adapter instance.
- *
- * @param ctx a bootstrap context containing references to
- * useful facilities that could be used by a resource adapter instance.
- *
- * @throws ResourceAdapterInternalException indicates bootstrap failure.
- * The resource adapter instance is unusable and must be discarded.
- */
- void start(BootstrapContext ctx) throws ResourceAdapterInternalException;
-
- /**
- * This is called when a resource adapter instance is undeployed or
- * during application server shutdown. This is a shutdown notification
- * from the application server, and this method is called by an
- * application server thread. The application server
- * thread executes in an unspecified context.
- *
- * <p>During this method call, a ResourceAdapter
- * JavaBean is responsible for performing an orderly shutdown of the
- * resource adapter instance. Any exception thrown by this
- * method call does not alter the
- * processing of the application server shutdown or resource
- * adapter undeployment that caused this method call. The application
- * server may log the exception information for error reporting purposes.
- */
- void stop();
-
- // message endpoint setup operations
-
- /**
- * This is called during the activation of a message endpoint. This causes
- * the resource adapter instance to do the necessary setup (ie., setup
- * message delivery for the message endpoint with a message provider).
- * Note that message delivery to the message endpoint might start even
- * before this method returns.
- *
- * <p>Endpoint activation is deemed successful only when this method
- * completes successfully without throwing any exceptions.
- *
- * @param endpointFactory a message endpoint factory instance.
- *
- * @param spec an activation spec JavaBean instance.
- *
- * @throws NotSupportedException indicates message endpoint
- * activation rejection due to incorrect activation
- * setup information.
- */
- void endpointActivation(MessageEndpointFactory endpointFactory,
- ActivationSpec spec) throws ResourceException;
-
- /**
- * This is called when a message endpoint is deactivated. The instances
- * passed as arguments to this method call should be identical to those
- * passed in for the corresponding </code>endpointActivation</code> call.
- * This causes the resource adapter to stop delivering messages to the
- * message endpoint.
- *
- * <p>Any exception thrown by this method is ignored. After
- * this method call, the endpoint is deemed inactive.
- *
- * @param endpointFactory a message endpoint factory instance.
- *
- * @param spec an activation spec JavaBean instance.
- */
- void endpointDeactivation(MessageEndpointFactory endpointFactory,
- ActivationSpec spec);
-
- /**
- * This method is called by the application server during crash recovery.
- * This method takes in an array of <code>ActivationSpec</code> JavaBeans
- * and returns an array of <code>XAResource</code> objects each of which
- * represents a unique resource manager.
- *
- * The resource adapter may return null if it does not implement the
- * <code>XAResource</code> interface. Otherwise, it must return an array
- * of <code>XAResource</code> objects, each of which represents a unique
- * resource manager that was used by the endpoint applications.
- *
- * The application server uses the <code>XAResource</code> objects to
- * query each resource manager for a list of in-doubt transactions.
- * It then completes each pending transaction by sending the commit
- * decision to the participating resource managers.
- *
- * @param specs an array of <code>ActivationSpec</code> JavaBeans each of
- * which corresponds to an deployed endpoint application that was
- * active prior to the system crash.
- *
- * @throws ResourceException generic exception if operation fails due to an
- * error condition.
- *
- * @return an array of <code>XAResource</code> objects each of which
- * represents a unique resource manager.
- */
- XAResource[] getXAResources(ActivationSpec[] specs)
- throws ResourceException;
+public interface ResourceAdapter
+{
+ // lifecycle operations
+
+ /**
+ * This is called when a resource adapter instance is bootstrapped. This
+ * may be during resource adapter deployment or application server startup.
+ * This is a startup notification from the application server, and this
+ * method is called by an application server thread. The application server
+ * thread executes in an unspecified context.
+ *
+ * <p>During this method call a ResourceAdapter JavaBean is
+ * responsible for initializing the resource adapter
+ * instance. Any exception thrown during this method
+ * call causes the application server to abort the bootstrap procedure
+ * for this specific resource adapter instance.
+ *
+ * @param ctx a bootstrap context containing references to
+ * useful facilities that could be used by a resource adapter instance.
+ *
+ * @throws ResourceAdapterInternalException indicates bootstrap failure.
+ * The resource adapter instance is unusable and must be discarded.
+ */
+ void start(BootstrapContext ctx) throws ResourceAdapterInternalException;
+
+ /**
+ * This is called when a resource adapter instance is undeployed or
+ * during application server shutdown. This is a shutdown notification
+ * from the application server, and this method is called by an
+ * application server thread. The application server
+ * thread executes in an unspecified context.
+ *
+ * <p>During this method call, a ResourceAdapter
+ * JavaBean is responsible for performing an orderly shutdown of the
+ * resource adapter instance. Any exception thrown by this
+ * method call does not alter the
+ * processing of the application server shutdown or resource
+ * adapter undeployment that caused this method call. The application
+ * server may log the exception information for error reporting purposes.
+ */
+ void stop();
+
+ // message endpoint setup operations
+
+ /**
+ * This is called during the activation of a message endpoint. This causes
+ * the resource adapter instance to do the necessary setup (ie., setup
+ * message delivery for the message endpoint with a message provider).
+ * Note that message delivery to the message endpoint might start even
+ * before this method returns.
+ *
+ * <p>Endpoint activation is deemed successful only when this method
+ * completes successfully without throwing any exceptions.
+ *
+ * @param endpointFactory a message endpoint factory instance.
+ *
+ * @param spec an activation spec JavaBean instance.
+ *
+ * @throws ResourceException Thrown if an error occurs
+ * @throws javax.resource.NotSupportedException indicates message endpoint
+ * activation rejection due to incorrect activation
+ * setup information.
+ */
+ void endpointActivation(MessageEndpointFactory endpointFactory,
+ ActivationSpec spec) throws ResourceException;
+
+ /**
+ * This is called when a message endpoint is deactivated. The instances
+ * passed as arguments to this method call should be identical to those
+ * passed in for the corresponding </code>endpointActivation</code> call.
+ * This causes the resource adapter to stop delivering messages to the
+ * message endpoint.
+ *
+ * <p>Any exception thrown by this method is ignored. After
+ * this method call, the endpoint is deemed inactive.
+ *
+ * @param endpointFactory a message endpoint factory instance.
+ *
+ * @param spec an activation spec JavaBean instance.
+ */
+ void endpointDeactivation(MessageEndpointFactory endpointFactory,
+ ActivationSpec spec);
+
+ /**
+ * This method is called by the application server during crash recovery.
+ * This method takes in an array of <code>ActivationSpec</code> JavaBeans
+ * and returns an array of <code>XAResource</code> objects each of which
+ * represents a unique resource manager.
+ *
+ * The resource adapter may return null if it does not implement the
+ * <code>XAResource</code> interface. Otherwise, it must return an array
+ * of <code>XAResource</code> objects, each of which represents a unique
+ * resource manager that was used by the endpoint applications.
+ *
+ * The application server uses the <code>XAResource</code> objects to
+ * query each resource manager for a list of in-doubt transactions.
+ * It then completes each pending transaction by sending the commit
+ * decision to the participating resource managers.
+ *
+ * @param specs an array of <code>ActivationSpec</code> JavaBeans each of
+ * which corresponds to an deployed endpoint application that was
+ * active prior to the system crash.
+ *
+ * @return an array of <code>XAResource</code> objects each of which
+ * represents a unique resource manager.
+ *
+ * @throws ResourceException generic exception if operation fails due to an
+ * error condition.
+ */
+ XAResource[] getXAResources(ActivationSpec[] specs)
+ throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterAssociation.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -33,31 +33,31 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface ResourceAdapterAssociation {
-
- /**
- * Get the associated <code>ResourceAdapter</code> object.
- *
- * @return the associated <code>ResourceAdapter</code> object.
- */
- ResourceAdapter getResourceAdapter();
-
- /**
- * Associate this object with a <code>ResourceAdapter</code> object.
- * Note, this method must be called exactly once. That is, the
- * association must not change during the lifetime of this object.
- *
- * @param ra <code>ResourceAdapter</code> object to be associated with.
- *
- * @throws ResourceException generic exception.
- *
- * @throws ResourceAdapterInternalException
- * resource adapter related error condition.
- *
- * @throws IllegalStateException indicates that this object is in an
- * illegal state for the method invocation. For example, this occurs when
- * this method is called more than once on the same object.
- */
- void setResourceAdapter(ResourceAdapter ra) throws ResourceException;
+public interface ResourceAdapterAssociation
+{
+
+ /**
+ * Get the associated <code>ResourceAdapter</code> object.
+ *
+ * @return the associated <code>ResourceAdapter</code> object.
+ */
+ ResourceAdapter getResourceAdapter();
+
+ /**
+ * Associate this object with a <code>ResourceAdapter</code> object.
+ * Note, this method must be called exactly once. That is, the
+ * association must not change during the lifetime of this object.
+ *
+ * @param ra <code>ResourceAdapter</code> object to be associated with.
+ *
+ * @throws ResourceException generic exception.
+ *
+ * @throws ResourceAdapterInternalException
+ * resource adapter related error condition.
+ *
+ * @throws IllegalStateException indicates that this object is in an
+ * illegal state for the method invocation. For example, this occurs when
+ * this method is called more than once on the same object.
+ */
+ void setResourceAdapter(ResourceAdapter ra) throws ResourceException;
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAdapterInternalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* A <code>ResourceAdapterInternalException</code> indicates any
* system-level error conditions related to a resource adapter.
@@ -40,51 +43,89 @@
* @author Ram Jeyaraman
*/
-public class ResourceAdapterInternalException
- extends javax.resource.ResourceException {
+public class ResourceAdapterInternalException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public ResourceAdapterInternalException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public ResourceAdapterInternalException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 7184712099852216323L;
+ }
+ else
+ {
+ serialVersionUID = -1666678251804763325L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public ResourceAdapterInternalException()
+ {
+ super();
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public ResourceAdapterInternalException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public ResourceAdapterInternalException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public ResourceAdapterInternalException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public ResourceAdapterInternalException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public ResourceAdapterInternalException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public ResourceAdapterInternalException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public ResourceAdapterInternalException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAllocationException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAllocationException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ResourceAllocationException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* A <code>ResourceAllocationException</code> can be thrown by an
* application server or
@@ -36,51 +39,89 @@
* @author Ram Jeyaraman
*/
-public class ResourceAllocationException
- extends javax.resource.ResourceException {
+public class ResourceAllocationException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public ResourceAllocationException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public ResourceAllocationException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = -2680085755660844424L;
+ }
+ else
+ {
+ serialVersionUID = -9036793565852998502L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public ResourceAllocationException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public ResourceAllocationException(String message)
+ {
+ super(message);
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public ResourceAllocationException(Throwable cause) {
- super(cause);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public ResourceAllocationException(Throwable cause)
+ {
+ super(cause);
+ }
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public ResourceAllocationException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public ResourceAllocationException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public ResourceAllocationException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public ResourceAllocationException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Added: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,38 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package javax.resource.spi;
+
+import java.io.Serializable;
+
+/**
+ * A marker interface indicating that the Exception is transient. It is used
+ * in situations where a previously failed operation might be able to succeed
+ * if the resource adapter performs some recovery steps and retries the
+ * operation.
+ *
+ * @since 1.6
+ * @version Java EE Connector Architecture 1.6
+ */
+public interface RetryableException extends Serializable
+{
+}
Added: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableUnavailableException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableUnavailableException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/RetryableUnavailableException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,89 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package javax.resource.spi;
+
+/**
+ * A subclass of the <code>UnavailableException</code> that
+ * indicates that the rejection of the work submission is transient.
+ * It is thrown in situations where the previously failed work submission
+ * might be able to succeed if the resource adapter retries the operation
+ * at a later point in time.
+ *
+ * @since 1.6
+ * @version Java EE Connector Architecture 1.6
+ */
+public class RetryableUnavailableException extends UnavailableException implements RetryableException
+{
+ /**
+ * Determines if a deserialized instance of this class
+ * is compatible with this class.
+ */
+ private static final long serialVersionUID = 3730185319227786830L;
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public RetryableUnavailableException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new instance with the specified detail message.
+ * @param message the detail message.
+ */
+ public RetryableUnavailableException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public RetryableUnavailableException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ * @param message the detail message.
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public RetryableUnavailableException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public RetryableUnavailableException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
+}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,27 +1,30 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
/**
* A <code>SecurityException</code> indicates error conditions
* related to the security
@@ -47,50 +50,89 @@
* @author Ram Jeyaraman
*/
-public class SecurityException extends javax.resource.ResourceException {
+public class SecurityException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public SecurityException() { super(); }
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public SecurityException(String message) {
- super(message);
- }
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 5003890345420586914L;
+ }
+ else
+ {
+ serialVersionUID = -7609456980660658364L;
+ }
+ }
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public SecurityException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public SecurityException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public SecurityException(Throwable cause)
+ {
+ super(cause);
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public SecurityException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public SecurityException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public SecurityException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public SecurityException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public SecurityException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityPermission.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityPermission.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SecurityPermission.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,31 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Documented;
import static java.lang.annotation.RetentionPolicy.*;
/**
@@ -34,23 +34,24 @@
* required by the resource adapter
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
@Documented
@Retention(RUNTIME)
- at Target(TYPE)
-public @interface SecurityPermission {
- /**
- * Specifies an optional description to mention any specific reason that a
- * resource requires a given security permission.
- */
- String description() default "";
+ at Target({ })
+public @interface SecurityPermission
+{
+ /**
+ * Specifies an optional description to mention any specific reason that a
+ * resource requires a given security permission.
+ */
+ String[] description() default { };
- /**
- * Specifies a security permission based on the Security policy file syntax.
- * These security permissions are different from those required by the
- * default permission set as specified in the connector specification.
- */
- String permissionSpec() default "";
+ /**
+ * Specifies a security permission based on the Security policy file syntax.
+ * These security permissions are different from those required by the
+ * default permission set as specified in the connector specification.
+ */
+ String permissionSpec() default "";
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SharingViolationException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SharingViolationException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/SharingViolationException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -31,53 +31,62 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public class SharingViolationException
- extends javax.resource.ResourceException {
+public class SharingViolationException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID = -1280304091132682215L;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public SharingViolationException() { super(); }
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public SharingViolationException()
+ {
+ super();
+ }
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public SharingViolationException(String message) {
- super(message);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public SharingViolationException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public SharingViolationException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public SharingViolationException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public SharingViolationException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public SharingViolationException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public SharingViolationException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public SharingViolationException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/TransactionSupport.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/TransactionSupport.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/TransactionSupport.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -33,47 +33,51 @@
* resource adapter deployment descriptor or deployer configuration
*
* @since 1.6
- * @version JSR322-EarlyDraft
+ * @version Java EE Connector Architecture 1.6
*/
-public interface TransactionSupport extends java.io.Serializable {
+public interface TransactionSupport extends java.io.Serializable
+{
+ /**
+ * An enumerated type that represents the levels of transaction support
+ * a resource adapter may support.
+ *
+ * @since 1.6
+ * @version Java EE Connector Architecture 1.6
+ */
+ public enum TransactionSupportLevel
+ {
+ /**
+ * The resource adapter supports neither resource manager nor JTA
+ * transactions.
+ * @since 1.6
+ */
+ NoTransaction,
- /**
- * An enumerated type that represents the levels of transaction support
- * a resource adapter may support.
- *
- * @since 1.6
- * @version JSR322-EarlyDraft
- */
- public enum TransactionSupportLevel {
- /**
- * The resource adapter supports neither resource manager nor JTA
- * transactions.
- * @since 1.6
- */
- NoTransaction,
- /**
- * The resource adapter supports resource manager local transactions
- * by implementing the <code>LocalTransaction</code> interface.
- * @since 1.6
- */
- LocalTansaction,
- /**
- * The resource adapter supports both resource manager local
- * and JTA transactions by implementing the <code>LocalTransaction</code>
- * and <code>XAResource</code> interfaces.
- * @since 1.6
- */
- XATransaction
- };
+ /**
+ * The resource adapter supports resource manager local transactions
+ * by implementing the <code>LocalTransaction</code> interface.
+ * @since 1.6
+ */
+ LocalTransaction,
- /**
- * Get the level of transaction support, supported by the
- * <code>ManagedConnectionFactory</code>. A resource adapter must always
- * return a level of transaction support whose ordinal value in
- * <code>TransactionSupportLevel</code> enum is equal to or lesser than
- * the resource adapter's transaction support classification.
- *
- * @since 1.6
- */
- public TransactionSupportLevel getTransactionSupport();
+ /**
+ * The resource adapter supports both resource manager local
+ * and JTA transactions by implementing the <code>LocalTransaction</code>
+ * and <code>XAResource</code> interfaces.
+ * @since 1.6
+ */
+ XATransaction
+ };
+
+ /**
+ * Get the level of transaction support, supported by the
+ * <code>ManagedConnectionFactory</code>. A resource adapter must always
+ * return a level of transaction support whose ordinal value in
+ * <code>TransactionSupportLevel</code> enum is equal to or lesser than
+ * the resource adapter's transaction support classification.
+ *
+ * @return The transaction support level
+ * @since 1.6
+ */
+ public TransactionSupportLevel getTransactionSupport();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/UnavailableException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/UnavailableException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/UnavailableException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
@@ -28,52 +28,62 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public class UnavailableException extends javax.resource.ResourceException {
+public class UnavailableException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID = -2495485036033570467L;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public UnavailableException() { super(); }
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public UnavailableException()
+ {
+ super();
+ }
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public UnavailableException(String message) {
- super(message);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public UnavailableException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public UnavailableException(Throwable cause)
+ {
+ super(cause);
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public UnavailableException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public UnavailableException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public UnavailableException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public UnavailableException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public UnavailableException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/ValidatingManagedConnectionFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
import java.util.Set;
+
import javax.resource.ResourceException;
/**
@@ -43,19 +44,19 @@
* @author Ram Jeyaraman
* @version 1.0
*/
-public interface ValidatingManagedConnectionFactory {
-
- /**
- * This method returns a set of invalid <code>ManagedConnection</code>
- * objects chosen from a specified set of <code>ManagedConnection</code>
- * objects.
- *
- * @param connectionSet a set of <code>ManagedConnection</code> objects
- * that need to be validated.
- *
- * @return a set of invalid <code>ManagedConnection</code> objects.
- *
- * @throws ResourceException generic exception.
- */
- Set getInvalidConnections(Set connectionSet) throws ResourceException;
+public interface ValidatingManagedConnectionFactory
+{
+ /**
+ * This method returns a set of invalid <code>ManagedConnection</code>
+ * objects chosen from a specified set of <code>ManagedConnection</code>
+ * objects.
+ *
+ * @param connectionSet a set of <code>ManagedConnection</code> objects
+ * that need to be validated.
+ *
+ * @return a set of invalid <code>ManagedConnection</code> objects.
+ *
+ * @throws ResourceException generic exception.
+ */
+ Set getInvalidConnections(Set connectionSet) throws ResourceException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/XATerminator.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/XATerminator.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/XATerminator.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,29 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi;
-import javax.transaction.xa.Xid;
import javax.transaction.xa.XAException;
+import javax.transaction.xa.Xid;
/**
* <p>The XATerminator interface is used for transaction completion and
@@ -33,97 +33,95 @@
* @author Ram Jeyaraman
*
*/
-public interface XATerminator {
+public interface XATerminator
+{
+ /**
+ * Commits the global transaction specified by xid.
+ *
+ * @param xid A global transaction identifier
+ *
+ * @param onePhase If true, the resource manager should use a one-phase
+ * commit protocol to commit the work done on behalf of xid.
+ *
+ * @exception XAException An error has occurred. Possible XAExceptions
+ * are XA_HEURHAZ, XA_HEURCOM, XA_HEURRB, XA_HEURMIX, XAER_RMERR,
+ * XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or XAER_PROTO.
+ *
+ * <P>If the resource manager did not commit the transaction and the
+ * parameter onePhase is set to true, the resource manager may throw
+ * one of the XA_RB* exceptions. Upon return, the resource manager has
+ * rolled back the branch's work and has released all held resources.
+ */
+ void commit(Xid xid, boolean onePhase) throws XAException;
- /**
- * Commits the global transaction specified by xid.
- *
- * @param xid A global transaction identifier
- *
- * @param onePhase If true, the resource manager should use a one-phase
- * commit protocol to commit the work done on behalf of xid.
- *
- * @exception XAException An error has occurred. Possible XAExceptions
- * are XA_HEURHAZ, XA_HEURCOM, XA_HEURRB, XA_HEURMIX, XAER_RMERR,
- * XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or XAER_PROTO.
- *
- * <P>If the resource manager did not commit the transaction and the
- * parameter onePhase is set to true, the resource manager may throw
- * one of the XA_RB* exceptions. Upon return, the resource manager has
- * rolled back the branch's work and has released all held resources.
- */
- void commit(Xid xid, boolean onePhase) throws XAException;
-
- /**
- * Tells the resource manager to forget about a heuristically
- * completed transaction branch.
- *
- * @param xid A global transaction identifier.
- *
- * @exception XAException An error has occurred. Possible exception
- * values are XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or
- * XAER_PROTO.
- */
- void forget(Xid xid) throws XAException;
-
- /**
- * Ask the resource manager to prepare for a transaction commit
- * of the transaction specified in xid.
- *
- * @param xid A global transaction identifier.
- *
- * @exception XAException An error has occurred. Possible exception
- * values are: XA_RB*, XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL,
- * or XAER_PROTO.
- *
- * @return A value indicating the resource manager's vote on the
- * outcome of the transaction. The possible values are: XA_RDONLY
- * or XA_OK. These constants are defined in
- * <code> javax.transaction.xa.XAResource</code> interface.
- * If the resource manager wants to roll back the
- * transaction, it should do so by raising an appropriate XAException
- * in the prepare method.
- */
- int prepare(Xid xid) throws XAException;
-
- /**
- * Obtains a list of prepared transaction branches from a resource
- * manager. The transaction manager calls this method during recovery
- * to obtain the list of transaction branches that are currently in
- * prepared or heuristically completed states.
- *
- * @param flag One of TMSTARTRSCAN, TMENDRSCAN, TMNOFLAGS. TMNOFLAGS
- * must be used when no other flags are set in the parameter. These
- * constants are defined in <code>javax.transaction.xa.XAResource</code>
- * interface.
- *
- * @exception XAException An error has occurred. Possible values are
- * XAER_RMERR, XAER_RMFAIL, XAER_INVAL, and XAER_PROTO.
- *
- * @return The resource manager returns zero or more XIDs of the
- * transaction branches that are currently in a prepared or
- * heuristically completed state. If an error occurs during the
- * operation, the resource manager should throw the appropriate
- * XAException.
- */
- Xid[] recover(int flag) throws XAException;
-
- /**
- * Informs the resource manager to roll back work done on behalf
- * of a transaction branch.
- *
- * @param xid A global transaction identifier.
- *
- * @exception XAException An error has occurred. Possible XAExceptions are
- * XA_HEURHAZ, XA_HEURCOM, XA_HEURRB, XA_HEURMIX, XAER_RMERR, XAER_RMFAIL,
- * XAER_NOTA, XAER_INVAL, or XAER_PROTO.
- *
- * <p>If the transaction branch is already marked rollback-only the
- * resource manager may throw one of the XA_RB* exceptions. Upon return,
- * the resource manager has rolled back the branch's work and has released
- * all held resources.
- */
- void rollback(Xid xid) throws XAException;
+ /**
+ * Tells the resource manager to forget about a heuristically
+ * completed transaction branch.
+ *
+ * @param xid A global transaction identifier.
+ *
+ * @exception XAException An error has occurred. Possible exception
+ * values are XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL, or
+ * XAER_PROTO.
+ */
+ void forget(Xid xid) throws XAException;
+
+ /**
+ * Ask the resource manager to prepare for a transaction commit
+ * of the transaction specified in xid.
+ *
+ * @param xid A global transaction identifier.
+ *
+ * @exception XAException An error has occurred. Possible exception
+ * values are: XA_RB*, XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL,
+ * or XAER_PROTO.
+ *
+ * @return A value indicating the resource manager's vote on the
+ * outcome of the transaction. The possible values are: XA_RDONLY
+ * or XA_OK. These constants are defined in
+ * <code> javax.transaction.xa.XAResource</code> interface.
+ * If the resource manager wants to roll back the
+ * transaction, it should do so by raising an appropriate XAException
+ * in the prepare method.
+ */
+ int prepare(Xid xid) throws XAException;
+
+ /**
+ * Obtains a list of prepared transaction branches from a resource
+ * manager. The transaction manager calls this method during recovery
+ * to obtain the list of transaction branches that are currently in
+ * prepared or heuristically completed states.
+ *
+ * @param flag One of TMSTARTRSCAN, TMENDRSCAN, TMNOFLAGS. TMNOFLAGS
+ * must be used when no other flags are set in the parameter. These
+ * constants are defined in <code>javax.transaction.xa.XAResource</code>
+ * interface.
+ *
+ * @exception XAException An error has occurred. Possible values are
+ * XAER_RMERR, XAER_RMFAIL, XAER_INVAL, and XAER_PROTO.
+ *
+ * @return The resource manager returns zero or more XIDs of the
+ * transaction branches that are currently in a prepared or
+ * heuristically completed state. If an error occurs during the
+ * operation, the resource manager should throw the appropriate
+ * XAException.
+ */
+ Xid[] recover(int flag) throws XAException;
+
+ /**
+ * Informs the resource manager to roll back work done on behalf
+ * of a transaction branch.
+ *
+ * @param xid A global transaction identifier.
+ *
+ * @exception XAException An error has occurred. Possible XAExceptions are
+ * XA_HEURHAZ, XA_HEURCOM, XA_HEURRB, XA_HEURMIX, XAER_RMERR, XAER_RMFAIL,
+ * XAER_NOTA, XAER_INVAL, or XAER_PROTO.
+ *
+ * <p>If the transaction branch is already marked rollback-only the
+ * resource manager may throw one of the XA_RB* exceptions. Upon return,
+ * the resource manager has rolled back the branch's work and has released
+ * all held resources.
+ */
+ void rollback(Xid xid) throws XAException;
}
-
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpoint.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,33 +1,28 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.endpoint;
-import java.lang.NoSuchMethodException;
import javax.resource.ResourceException;
-import javax.resource.spi.ResourceAdapterInternalException;
-import javax.resource.spi.ApplicationServerInternalException;
-import javax.resource.spi.IllegalStateException;
-import javax.resource.spi.UnavailableException;
/**
* This defines a contract for a message endpoint. This is implemented by an
@@ -36,59 +31,59 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface MessageEndpoint {
+public interface MessageEndpoint
+{
+ /**
+ * This is called by a resource adapter before a message is delivered.
+ *
+ * @param method description of a target method. This information about
+ * the intended target method allows an application server to decide
+ * whether to start a transaction during this method call, depending
+ * on the transaction preferences of the target method.
+ * The processing (by the application server) of the actual message
+ * delivery method call on the endpoint must be independent of the
+ * class loader associated with this descriptive method object.
+ *
+ * @throws NoSuchMethodException indicates that the specified method
+ * does not exist on the target endpoint.
+ *
+ * @throws ResourceException generic exception.
+ *
+ * @throws javax.resource.spi.ApplicationServerInternalException indicates an error
+ * condition in the application server.
+ *
+ * @throws javax.resource.spi.IllegalStateException indicates that the endpoint is in an
+ * illegal state for the method invocation. For example, this occurs when
+ * <code>beforeDelivery</code> and <code>afterDelivery</code>
+ * method calls are not paired.
+ *
+ * @throws javax.resource.spi.UnavailableException indicates that the endpoint is not
+ * available.
+ */
+ void beforeDelivery(java.lang.reflect.Method method)
+ throws NoSuchMethodException, ResourceException;
- /**
- * This is called by a resource adapter before a message is delivered.
- *
- * @param method description of a target method. This information about
- * the intended target method allows an application server to decide
- * whether to start a transaction during this method call, depending
- * on the transaction preferences of the target method.
- * The processing (by the application server) of the actual message
- * delivery method call on the endpoint must be independent of the
- * class loader associated with this descriptive method object.
- *
- * @throws NoSuchMethodException indicates that the specified method
- * does not exist on the target endpoint.
- *
- * @throws ResourceException generic exception.
- *
- * @throws ApplicationServerInternalException indicates an error
- * condition in the application server.
- *
- * @throws IllegalStateException indicates that the endpoint is in an
- * illegal state for the method invocation. For example, this occurs when
- * <code>beforeDelivery</code> and <code>afterDelivery</code>
- * method calls are not paired.
- *
- * @throws UnavailableException indicates that the endpoint is not
- * available.
- */
- void beforeDelivery(java.lang.reflect.Method method)
- throws NoSuchMethodException, ResourceException;
-
- /**
- * This is called by a resource adapter after a message is delivered.
- *
- * @throws ResourceException generic exception.
- *
- * @throws ApplicationServerInternalException indicates an error
- * condition in the application server.
- *
- * @throws IllegalStateException indicates that the endpoint is in an
- * illegal state for the method invocation. For example, this occurs when
- * beforeDelivery and afterDelivery method calls are not paired.
- *
- * @throws UnavailableException indicates that the endpoint is not
- * available.
- */
- void afterDelivery() throws ResourceException;
-
- /**
- * This method may be called by the resource adapter to indicate that it
- * no longer needs a proxy endpoint instance. This hint may be used by
- * the application server for endpoint pooling decisions.
- */
- void release();
+ /**
+ * This is called by a resource adapter after a message is delivered.
+ *
+ * @throws ResourceException generic exception.
+ *
+ * @throws javax.resource.spi.ApplicationServerInternalException indicates an error
+ * condition in the application server.
+ *
+ * @throws javax.resource.spi.IllegalStateException indicates that the endpoint is in an
+ * illegal state for the method invocation. For example, this occurs when
+ * beforeDelivery and afterDelivery method calls are not paired.
+ *
+ * @throws javax.resource.spi.UnavailableException indicates that the endpoint is not
+ * available.
+ */
+ void afterDelivery() throws ResourceException;
+
+ /**
+ * This method may be called by the resource adapter to indicate that it
+ * no longer needs a proxy endpoint instance. This hint may be used by
+ * the application server for endpoint pooling decisions.
+ */
+ void release();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/endpoint/MessageEndpointFactory.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,30 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.endpoint;
-import java.lang.NoSuchMethodException;
+import javax.resource.spi.UnavailableException;
import javax.transaction.xa.XAResource;
-import javax.resource.spi.UnavailableException;
/**
* This serves as a factory for creating message endpoints.
@@ -32,47 +31,68 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface MessageEndpointFactory {
+public interface MessageEndpointFactory
+{
+ /**
+ * This is used to create a message endpoint. The message endpoint is
+ * expected to implement the correct message listener type.
+ *
+ * @param xaResource an optional <code>XAResource</code>
+ * instance used to get transaction notifications when the message delivery
+ * is transacted.
+ *
+ * @return a message endpoint instance.
+ *
+ * @throws UnavailableException indicates a transient failure
+ * in creating a message endpoint. Subsequent attempts to create a message
+ * endpoint might succeed.
+ */
+ MessageEndpoint createEndpoint(XAResource xaResource)
+ throws UnavailableException;
+
+ /**
+ * This is used to create a message endpoint. The message endpoint is
+ * expected to implement the correct message listener type.
+ *
+ * @param xaResource an optional <code>XAResource</code>
+ * instance used to get transaction notifications when the message delivery
+ * is transacted.
+ *
+ * @param timeout an optional value used to specify the time duration
+ * (in milliseconds) within which the message endpoint needs to be
+ * created by the <code>MessageEndpointFactory</code>. Otherwise, the
+ * <code>MessageEndpointFactory</code> rejects the creation of the
+ * <code>MessageEndpoint</code> with an UnavailableException. Note, this
+ * does not offer real-time guarantees.
+ *
+ * @return a message endpoint instance.
+ *
+ * @throws UnavailableException indicates a transient failure
+ * in creating a message endpoint. Subsequent attempts to create a message
+ * endpoint might succeed.
+ */
+ MessageEndpoint createEndpoint(XAResource xaResource, long timeout)
+ throws UnavailableException;
- /**
- * This is used to create a message endpoint. The message endpoint is
- * expected to implement the correct message listener type.
- *
- * @param xaResource an optional <code>XAResource</code>
- * instance used to get transaction notifications when the message delivery
- * is transacted.
- *
- * @return a message endpoint instance.
- *
- * @throws UnavailableException indicates a transient failure
- * in creating a message endpoint. Subsequent attempts to create a message
- * endpoint might succeed.
- */
- MessageEndpoint createEndpoint(XAResource xaResource)
- throws UnavailableException;
-
- /**
- * This is used to find out whether message deliveries to a target method
- * on a message listener interface that is implemented by a message
- * endpoint will be transacted or not.
- *
- * The message endpoint may indicate its transacted delivery preferences
- * (at a per method level) through its deployment descriptor. The message
- * delivery preferences must not change during the lifetime of a
- * message endpoint.
- *
- * @param method description of a target method. This information about
- * the intended target method allows an application server to find out
- * whether the target method call will be transacted or not.
- *
- * @throws NoSuchMethodException indicates that the specified method
- * does not exist on the target endpoint.
- *
- * @return true, if message endpoint requires transacted message delivery.
- */
- boolean isDeliveryTransacted(java.lang.reflect.Method method)
- throws NoSuchMethodException;
+ /**
+ * This is used to find out whether message deliveries to a target method
+ * on a message listener interface that is implemented by a message
+ * endpoint will be transacted or not.
+ *
+ * The message endpoint may indicate its transacted delivery preferences
+ * (at a per method level) through its deployment descriptor. The message
+ * delivery preferences must not change during the lifetime of a
+ * message endpoint.
+ *
+ * @param method description of a target method. This information about
+ * the intended target method allows an application server to find out
+ * whether the target method call will be transacted or not.
+ *
+ * @throws NoSuchMethodException indicates that the specified method
+ * does not exist on the target endpoint.
+ *
+ * @return true, if message endpoint requires transacted message delivery.
+ */
+ boolean isDeliveryTransacted(java.lang.reflect.Method method)
+ throws NoSuchMethodException;
}
-
-
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/GenericCredential.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/GenericCredential.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/GenericCredential.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,28 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.security;
-import java.security.Principal; // to fix javadoc warning
import javax.resource.spi.SecurityException;
/** The interface <code>javax.resource.spi.security.GenericCredential</code>
@@ -61,61 +60,58 @@
* J2SE Version 1.4, which provides similar functionality.
*/
-public interface GenericCredential {
+public interface GenericCredential
+{
- /** Returns the name of the resource principal associated
- * with a GenericCredential instance.
- *
- * @return Name of the principal
- **/
- public
- String getName();
+ /** Returns the name of the resource principal associated
+ * with a GenericCredential instance.
+ *
+ * @return Name of the principal
+ **/
+ public String getName();
+
+ /** Returns the mechanism type for the GenericCredential instance.
+ * The mechanism type definition for GenericCredential should be
+ * consistent with the Object Identifier (OID) based representation
+ * specified in the GSS specification. In the GenericCredential
+ * interface, the mechanism type is returned as a stringified
+ * representation of the OID specification.
+ *
+ * @return mechanism type
+ **/
+ public String getMechType();
- /** Returns the mechanism type for the GenericCredential instance.
- * The mechanism type definition for GenericCredential should be
- * consistent with the Object Identifier (OID) based representation
- * specified in the GSS specification. In the GenericCredential
- * interface, the mechanism type is returned as a stringified
- * representation of the OID specification.
- *
- * @return mechanism type
- **/
- public
- String getMechType();
+ /** Gets security data for a specific security mechanism represented
+ * by the GenericCredential. An example is authentication data required
+ * for establishing a secure association with an EIS instance on
+ * behalf of the associated resource principal.
+ *
+ * <p>The getCredentialData method returns the credential
+ * representation as an array of bytes. Note that the connector
+ * architecture does not define any standard format for the returned
+ * credential data.
+ *
+ * @return credential representation as an array of bytes.
+ * @throws SecurityException
+ * Failed operation due to security related
+ * error condition
+ **/
+ public byte[] getCredentialData() throws SecurityException;
- /** Gets security data for a specific security mechanism represented
- * by the GenericCredential. An example is authentication data required
- * for establishing a secure association with an EIS instance on
- * behalf of the associated resource principal.
- *
- * <p>The getCredentialData method returns the credential
- * representation as an array of bytes. Note that the connector
- * architecture does not define any standard format for the returned
- * credential data.
- *
- * @return credential representation as an array of bytes.
- * @throws SecurityException
- * Failed operation due to security related
- * error condition
- **/
- public
- byte[] getCredentialData() throws SecurityException;
+ /** Tests if this GenericCredential instance refers to the same entity
+ * as the supplied object. The two credentials must be acquired over
+ * the same mechanisms and must refer to the same principal.
+ *
+ * Returns true if the two GenericCredentials refer to the same entity;
+ * false otherwise.
+ * @param another The other object
+ * @return True if equal; otherwise false
+ **/
+ public boolean equals(Object another);
- /** Tests if this GenericCredential instance refers to the same entity
- * as the supplied object. The two credentials must be acquired over
- * the same mechanisms and must refer to the same principal.
- *
- * Returns true if the two GenericCredentials refer to the same entity;
- * false otherwise.
- **/
- public
- boolean equals(Object another);
-
- /** Returns the hash code for this GenericCredential
- *
- * @return hash code for this GenericCredential
- **/
- public
- int hashCode();
-
+ /** Returns the hash code for this GenericCredential
+ *
+ * @return hash code for this GenericCredential
+ **/
+ public int hashCode();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/PasswordCredential.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/PasswordCredential.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/security/PasswordCredential.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.security;
@@ -35,116 +35,118 @@
* @since 0.6
*/
-public final class PasswordCredential implements java.io.Serializable {
+public final class PasswordCredential implements java.io.Serializable
+{
+ /** Serial version uid */
+ private static final long serialVersionUID = -1770833344350711674L;
- private String userName;
- private char[] password;
- private ManagedConnectionFactory mcf;
+ private String userName;
+ private char[] password;
+ private ManagedConnectionFactory mcf;
+
+ /**
+ * Creates a new <code>PasswordCredential</code> object from the given
+ * user name and password.
+ *
+ * <p> Note that the given user password is cloned before it is stored in
+ * the new <code>PasswordCredential</code> object.
+ *
+ * @param userName the user name
+ * @param password the user's password
+ **/
+ public PasswordCredential(String userName, char[] password)
+ {
+ this.userName = userName;
+ this.password = (char[])password.clone();
+ }
- /**
- * Creates a new <code>PasswordCredential</code> object from the given
- * user name and password.
- *
- * <p> Note that the given user password is cloned before it is stored in
- * the new <code>PasswordCredential</code> object.
- *
- * @param userName the user name
- * @param password the user's password
- **/
- public
- PasswordCredential(String userName, char[] password) {
- this.userName = userName;
- this.password = (char[])password.clone();
- }
+ /**
+ * Returns the user name.
+ *
+ * @return the user name
+ **/
+ public String getUserName()
+ {
+ return userName;
+ }
+
+ /**
+ * Returns the user password.
+ *
+ * <p> Note that this method returns a reference to the password. It is
+ * the caller's responsibility to zero out the password information after
+ * it is no longer needed.
+ *
+ * @return the password
+ **/
+ public char[] getPassword()
+ {
+ return password;
+ }
- /**
- * Returns the user name.
- *
- * @return the user name
- **/
- public
- String getUserName() {
- return userName;
- }
+ /** Gets the target ManagedConnectionFactory for which the user name and
+ * password has been set by the application server. A ManagedConnection-
+ * Factory uses this field to find out whether PasswordCredential should
+ * be used by it for sign-on to the target EIS instance.
+ *
+ * @return ManagedConnectionFactory instance for which user name and
+ * password have been specified
+ **/
+ public ManagedConnectionFactory getManagedConnectionFactory()
+ {
+ return mcf;
+ }
- /**
- * Returns the user password.
- *
- * <p> Note that this method returns a reference to the password. It is
- * the caller's responsibility to zero out the password information after
- * it is no longer needed.
- *
- * @return the password
- **/
- public
- char[] getPassword() {
- return password;
- }
+ /** Sets the target ManagedConenctionFactory instance for which the user
+ * name and password has been set by the application server.
+ *
+ * @param mcf ManagedConnectionFactory instance for which user name
+ * and password have been specified
+ **/
+ public void setManagedConnectionFactory(ManagedConnectionFactory mcf)
+ {
+ this.mcf = mcf;
+ }
+
+ /** Compares this PasswordCredential with the specified object for
+ * equality. The two PasswordCredential instances are the same if
+ * they are equal in username and password.
+ *
+ * @param other Object to which PasswordCredential is to be compared
+ * @return <tt>true</tt> if and if the specified object is a
+ * PasswordCredential whose username and password are
+ * equal to this instance.
+ **/
+ public boolean equals(Object other)
+ {
+ if (!(other instanceof PasswordCredential))
+ return false;
+
+ PasswordCredential pc = (PasswordCredential)other;
+
+ if (!(userName.equals(pc.userName)))
+ return false;
+
+ if (password.length != pc.password.length)
+ return false;
+
+ for (int i = 0; i < password.length; i++)
+ {
+ if (password[i] != pc.password[i])
+ return false;
+ }
- /** Gets the target ManagedConnectionFactory for which the user name and
- * password has been set by the application server. A ManagedConnection-
- * Factory uses this field to find out whether PasswordCredential should
- * be used by it for sign-on to the target EIS instance.
- *
- * @return ManagedConnectionFactory instance for which user name and
- * password have been specified
- **/
- public
- ManagedConnectionFactory getManagedConnectionFactory() {
- return mcf;
- }
-
- /** Sets the target ManagedConenctionFactory instance for which the user
- * name and password has been set by the application server.
- *
- * @param mcf ManagedConnectionFactory instance for which user name
- * and password have been specified
- **/
- public
- void setManagedConnectionFactory(ManagedConnectionFactory mcf) {
- this.mcf = mcf;
- }
-
- /** Compares this PasswordCredential with the specified object for
- * equality. The two PasswordCredential instances are the same if
- * they are equal in username and password.
- *
- * @param other Object to which PasswordCredential is to be compared
- * @return <tt>true</tt> if and if the specified object is a
- * PasswordCredential whose username and password are
- * equal to this instance.
- **/
- public
- boolean equals(Object other) {
- if (!(other instanceof PasswordCredential))
- return false;
-
- PasswordCredential pc = (PasswordCredential)other;
-
- if (!(userName.equals(pc.userName)))
- return false;
-
- if (password.length != pc.password.length)
- return false;
-
- for (int i = 0; i < password.length;i++) {
- if (password[i] != pc.password[i])
- return false;
- }
-
- return true;
- }
-
- /** Returns the hash code for this PasswordCredential
- *
- * @return hash code for this PasswordCredential
- **/
- public
- int hashCode() {
- String s = userName;
- s += new String(password);
- return s.hashCode();
- }
-
+ return true;
+ }
+
+ /** Returns the hash code for this PasswordCredential
+ *
+ * @return hash code for this PasswordCredential
+ **/
+ public int hashCode()
+ {
+ String s = userName;
+ s += new String(password);
+ return s.hashCode();
+ }
}
-
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWork.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWork.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWork.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
-import java.lang.Object;
-import java.lang.Runnable;
-import java.lang.Exception;
-import java.lang.Throwable;
import java.io.Serializable;
/**
@@ -34,7 +30,8 @@
* <code>DistributableWorkManager</code>
*
* @since 1.6
- * @version JSR322-PublicReview
+ * @version Java EE Connector Architecture 1.6
*/
-public interface DistributableWork extends Work, Serializable {
+public interface DistributableWork extends Work, Serializable
+{
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWorkManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWorkManager.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/DistributableWorkManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
@@ -38,8 +38,8 @@
* <code>DistributableWorkManager</code> marker interface.
*
* @since 1.6
- * @version JSR322-PublicDraft
- * @author Sivakumar Thyagarajan
+ * @version Java EE Connector Architecture 1.6
*/
-public interface DistributableWorkManager extends WorkManager {
+public interface DistributableWorkManager extends WorkManager
+{
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/ExecutionContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/ExecutionContext.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/ExecutionContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,35 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
-import java.lang.Object;
-import java.lang.Runnable;
-import java.lang.Exception;
-import java.lang.Throwable;
-
+import javax.resource.NotSupportedException;
import javax.transaction.xa.Xid;
-import javax.resource.NotSupportedException;
-//import javax.resource.spi.security.SecurityContext;
/**
* This class models an execution context (transaction, security, etc)
@@ -51,68 +45,80 @@
*
* Note: Resource adapters that are developed for Connectors 1.6 specification
* compliant application servers and above, are recommended to use
- * the <code>TransactionInflowContext</code> interface instead of this
- * class. See Chapter.11 Generic Inflow Context in the Connectors 1.6
+ * the <code>TransactionWorkContext</code> interface instead of this
+ * class. See Chapter.11 Generic Work Context in the Connectors 1.6
* specification for more details.
*
* @version 1.0
* @author Ram Jeyaraman
*/
-public class ExecutionContext {
+public class ExecutionContext
+{
+
+ /**
+ * transaction context.
+ */
+ private Xid xid;
+
+ /**
+ * transaction timeout value.
+ */
+ private long transactionTimeout = WorkManager.UNKNOWN;
+
+
+ /**
+ * set a transaction context.
+ *
+ * @param xid transaction context.
+ */
+ public void setXid(Xid xid)
+ {
+ this.xid = xid;
+ }
- /**
- * transaction context.
- */
- private Xid xid;
+ /**
+ * @return an Xid object carrying a transaction context,
+ * if any.
+ */
+ public Xid getXid()
+ {
+ return this.xid;
+ }
- /**
- * transaction timeout value.
- */
- private long transactionTimeout = WorkManager.UNKNOWN;
-
-
- /**
- * set a transaction context.
- *
- * @param xid transaction context.
- */
- public void setXid(Xid xid) { this.xid = xid; }
-
- /**
- * @return an Xid object carrying a transaction context,
- * if any.
- */
- public Xid getXid() { return this.xid; }
-
- /**
- * Set the transaction timeout value for a imported transaction.
- *
- * @param timeout transaction timeout value in seconds. Only positive
- * non-zero values are accepted. Other values are illegal and are
- * rejected with a <code>NotSupportedException</code>.
- *
- * @throws NotSupportedException thrown to indicate an illegal timeout
- * value.
- */
- public void setTransactionTimeout(long timeout)
- throws NotSupportedException {
- if (timeout > 0) {
- this.transactionTimeout = timeout;
- } else {
- throw new NotSupportedException("Illegal timeout value");
- }
- }
-
- /**
- * Get the transaction timeout value for a imported transaction.
- *
- * @return the specified transaction timeout value in seconds. When no
- * timeout value or an illegal timeout value had been specified, a value of
- * -1 (<code>WorkManager.UNKNOWN</code>) is returned; the timeout
- * processing of such a transaction depends on the application server
- * implementation.
- */
- public long getTransactionTimeout() {
- return this.transactionTimeout;
- }
+ /**
+ * Set the transaction timeout value for a imported transaction.
+ *
+ * @param timeout transaction timeout value in seconds. Only positive
+ * non-zero values are accepted. Other values are illegal and are
+ * rejected with a <code>NotSupportedException</code>.
+ *
+ * @throws NotSupportedException thrown to indicate an illegal timeout
+ * value.
+ */
+ public void setTransactionTimeout(long timeout)
+ throws NotSupportedException
+ {
+ if (timeout > 0)
+ {
+ this.transactionTimeout = timeout;
+ }
+ else
+ {
+ throw new NotSupportedException("Illegal timeout value");
+ }
+ }
+
+ /**
+ * Get the transaction timeout value for a imported transaction.
+ *
+ * @return the specified transaction timeout value in seconds. When no
+ * timeout value or an illegal timeout value had been specified, a value of
+ * -1 (<code>WorkManager.UNKNOWN</code>) is returned; the timeout
+ * processing of such a transaction depends on the application server
+ * implementation.
+ */
+ public long getTransactionTimeout()
+ {
+ return this.transactionTimeout;
+ }
}
Added: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/HintsContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/HintsContext.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/HintsContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,125 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package javax.resource.spi.work;
+
+import java.io.Serializable;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * A standard {@link WorkContext WorkContext} that allows a {@link Work
+ * Work} instance to propagate quality-of-service (QoS) hints about the
+ * {@link Work Work} to the <code>WorkManager</code>.
+ *
+ * @since 1.6
+ * @see javax.resource.spi.work.WorkContextProvider
+ * @version Java EE Connector Architecture 1.6
+ */
+
+public class HintsContext implements WorkContext
+{
+
+ /**
+ * Determines if a deserialized instance of this class
+ * is compatible with this class.
+ */
+ private static final long serialVersionUID = 7956353628297167255L;
+
+ /** The name hint */
+ public static final String NAME_HINT = "javax.resource.Name";
+
+ /** The long running hint */
+ public static final String LONGRUNNING_HINT = "javax.resource.LongRunning";
+
+ /** Description */
+ protected String description = "Hints Context";
+
+ /** Name */
+ protected String name = "HintsContext";
+
+ /** The hints */
+ Map<String, Serializable> hints = new HashMap<String, Serializable>();
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getDescription()
+ {
+ return description;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getName()
+ {
+ return name;
+ }
+
+ /**
+ * Set a brief description of the role played by the instance of
+ * HintsContext and any other related debugging information.
+ *
+ * This could be used by the resource adapter and the WorkManager
+ * for logging and debugging purposes.
+ * @param description The description
+ */
+ public void setDescription(String description)
+ {
+ this.description = description;
+ }
+
+ /**
+ * Set the associated name of the HintsContext. This
+ * could be used by the resource adapter and the WorkManager
+ * for logging and debugging purposes.
+ * @param name The name
+ */
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ /**
+ * Set a Hint and a related value. The hintName must be non-Null.
+ * Standard HintNames are defined in the Connector specification. Use of
+ * "javax.resource." prefixed hintNames are reserved for use by the
+ * Connector specification.
+ * @param hintName The hint name
+ * @param value The hint value
+ *
+ */
+ public void setHint(String hintName, Serializable value)
+ {
+ hints.put(hintName, value);
+ }
+
+ /**
+ * Get the hints
+ * @return The hints
+ */
+ public Map<String, Serializable> getHints()
+ {
+ return hints;
+ }
+}
Added: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/RetryableWorkRejectedException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/RetryableWorkRejectedException.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/RetryableWorkRejectedException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,91 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package javax.resource.spi.work;
+
+import javax.resource.spi.RetryableException;
+
+/**
+ * A subclass of the <code>WorkRejectedException</code> that
+ * indicates that the the service unavailability is transient. It is thrown in
+ * situations where the previously failed operation might be able to succeed if the
+ * resource adapter performs some recovery steps and retries the operation.
+ *
+ * @since 1.6
+ * @version Java EE Connector Architecture 1.6
+ */
+public class RetryableWorkRejectedException extends WorkRejectedException implements RetryableException
+{
+
+ /**
+ * Determines if a deserialized instance of this class
+ * is compatible with this class.
+ */
+ private static final long serialVersionUID = 8198870267352154108L;
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public RetryableWorkRejectedException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new instance with the specified detail message.
+ * @param message the detail message.
+ */
+ public RetryableWorkRejectedException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public RetryableWorkRejectedException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ * @param message the detail message.
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public RetryableWorkRejectedException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public RetryableWorkRejectedException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
+}
Added: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/SecurityContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/SecurityContext.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/SecurityContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,213 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package javax.resource.spi.work;
+
+import javax.security.auth.Subject;
+import javax.security.auth.callback.CallbackHandler;
+
+/**
+ * A standard {@link WorkContext WorkContext} that allows a {@link Work
+ * Work} instance to propagate security related context information from an EIS
+ * to an application server.
+ * <p>
+ *
+ *
+ * This allows an EIS/resource adapter to flow-in security context information
+ * and execute a Work instance, and call methods on a MessageEndpoint interface,
+ * to effect message inflow, within that Work instance, in the context of an
+ * established identity.
+ * <p>
+ *
+ *
+ * A resource adapter indicates to the WorkManager, that a Work instance needs
+ * to be run in a specified security execution context by submitting a Work
+ * instance that implements WorkContextProvider interface and ensuring that
+ * the List of WorkContexts for that Work instance contains an instance of its
+ * subclass of SecurityContext.
+ * <p>
+ *
+ *
+ * It should be noted however that when a resource adapter flows-in an identity
+ * to be used by the application server, the propagated identity may or may not
+ * belong to the application server's security domain.
+ * <p>
+ *
+ *
+ * There are therefore, two scenarios while a resource adapter propagates a
+ * security identity from an EIS to the application server:
+ * <p>
+ *
+ * <ul>
+ * <li>Case 1: Resource adapter flows-in an identity in the application server's
+ * security domain: In this case, the application server could just set the
+ * initiating principal, flown-in from the resource adapter, as the security
+ * context the Work instance executes as.</li>
+ * <li>Case 2: Resource adapter flows-in an identity belonging to the EIS'
+ * security domain: The resource adapter establishes a connection to the EIS and
+ * needs to perform a Work in the context of an EIS identity. In this case, the
+ * initiating or caller principal does not exist in the application server's
+ * security domain and a translation from one domain to the other needs to be
+ * performed.</li>
+ * </ul>
+ * <p>
+ *
+ * @since 1.6
+ * @see javax.resource.spi.work.WorkContextProvider
+ * @version Java EE Connector Architecture 1.6
+ */
+
+public abstract class SecurityContext implements WorkContext
+{
+ /**
+ * Determines if a deserialized instance of this class
+ * is compatible with this class.
+ */
+ private static final long serialVersionUID = 7730296651802712658L;
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getDescription()
+ {
+ return "Security Context";
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getName()
+ {
+ return "SecurityContext";
+ }
+
+ /**
+ * The container calls this method to set up the security Context for the
+ * <code>Work</code> instance.
+ * <p>
+ *
+ * The handler argument must not be null, and the argument handler and the
+ * <code>CallbackHandler</code> passed to this method must support the
+ * following <code>Callback</code>s defined in JSR 196: Java Authentication
+ * SPI for Containers specification:
+ * <p>
+ * <ul>
+ * <li>CallerPrincipalCallback</li>
+ * <li>GroupPrincipalCallback</li>
+ * <li>PasswordValidationCallback</li>
+ * </ul>
+ * The following <code>Callback</code>s may be supported by the container.
+ * <ul>
+ * <li>CertStoreCallback
+ * <li>
+ * <li>PrivateKeyCallback
+ * <li>
+ * <li>SecretKeyCallback
+ * <li>
+ * <li>TrustStoreCallback
+ * <li>
+ * </ul>
+ * <p>
+ *
+ * A resource adapter might use the <code>CallerPrincipalCallback</code> “to
+ * set the container's representation of the caller principal. The
+ * CallbackHandler must establish the argument Principal as the caller
+ * principal associated with the invocation being processed by the
+ * container. When the argument Principal is null, the handler will
+ * establish the container's representation of the unauthenticated caller
+ * principal.”
+ * <p>
+ *
+ * A resource adapter might use the <code>GroupPrincipalCallback</code> “to
+ * establish the container's representation of the corresponding group
+ * principals within the Subject. When a null value is passed to the groups
+ * argument, the handler will establish the container's representation of no
+ * group principals within the Subject. Otherwise, the handler's processing
+ * of this callback is additive, yielding the union (without duplicates) of
+ * the principals existing within the Subject, and those created with the
+ * names occuring within the argument array. The CallbackHandler will define
+ * the type of the created principals.”
+ * <p>
+ *
+ * A resource adapter might use the <code>PasswordValidationCallback</code>
+ * “to employ the password validation facilities of its containing runtime.”
+ * <p>
+ *
+ * The executionSubject argument must be non-null and it must not be
+ * read-only. It is expected that this method will populate this
+ * executionSubject with principals and credentials that would be flown into
+ * the application server.
+ * <p>
+ *
+ * The serviceSubject argument must be non-null and it must not be
+ * read-only. It represents the application server and it may be used by the
+ * Work implementation to retrieve Principals and credentials necessary to
+ * establish a connection to the EIS (in the cause of mutual-auth like
+ * scenarios). If the Subject is not null, the Work implementation may
+ * collect the server credentials, as necessary, by using the callback
+ * handler passed to them .
+ * <p>
+ *
+ *
+ * When this method is called, the method implementation
+ * <ul>
+ * <li>identifies the security context that needs to be flown-in to the
+ * application server to serve as the execution context of the Work
+ * instance.</li>
+ * <li>populates the executionSubject with the EIS Principals and
+ * Credentials that it wants to serve as the security context for the Work
+ * instance to be executed in.</li>
+ * <li>adds instances of the necessary Callbacks , usually a subset of the
+ * ones listed above, to an array and invokes the handle() method in the
+ * container's CallbackHandler implementation passing in the array of
+ * Callback instances.</li>
+ * <li>on sucessful return from the CallbackHandler.handle() method the
+ * setSecurityContext returns after ensuring that the executionSubject is
+ * populated with the valid Principals and Credentials that represent the
+ * execution context of the Work instance</li>
+ * </ul>
+ * <p>
+ *
+ * @see JSR 196: Java Authentication SPI for Containers specification and
+ * related JavaDoc
+ *
+ * @param handler
+ * A <code>CallbackHandler</code> provided by the
+ * <code>WorkManager</code> that supports the
+ * <code>Callback</code>s described above
+ * @param executionSubject
+ * A Subject that represents the security identity that needs to
+ * be established as the context for the <code>Work</code>
+ * instance. It is used by the method implementation to store
+ * Principals and credentials that needs to be used as the
+ * security context of the <code>Work</code> instance.
+ * @param serviceSubject
+ * A Subject that represents the application server It may be
+ * used by the method implementation as the source of Principals
+ * or credentials to be used to validate a connection to the EIS.
+ * If the Subject is not null, the method implementation may add
+ * additional Principals or credentials (pertaining to the
+ * recipient of the service request) to the Subject. *
+ */
+ public abstract void setupSecurityContext(CallbackHandler handler,
+ Subject executionSubject, Subject serviceSubject);
+}
Added: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/TransactionContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/TransactionContext.java (rev 0)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/TransactionContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,64 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package javax.resource.spi.work;
+
+/**
+ * A standard <code>WorkContext</code> that allows a <code>Work</code>
+ * instance to propagate transaction related context information from an EIS to
+ * an application server.<p>
+ *
+ * This class extends <code>ExecutionContext</code> so that a resource adapter
+ * developer could migrate their existing code from
+ * <code>ExecutionContext</code> to <code>TransactionContext</code>
+ * easily.<p>
+ *
+ * @since 1.6
+ * @see javax.resource.spi.work.WorkContext
+ * @see javax.resource.spi.work.ExecutionContext
+ * @version Java EE Connector Architecture 1.6
+ */
+
+public class TransactionContext extends ExecutionContext implements WorkContext
+{
+ /**
+ * Determines if a deserialized instance of this class
+ * is compatible with this class.
+ */
+ private static final long serialVersionUID = 6205067498708597824L;
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getDescription()
+ {
+ return "Transaction Context";
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getName()
+ {
+ return "TransactionContext";
+ }
+}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/Work.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/Work.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/Work.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,32 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
-import java.lang.Object;
-import java.lang.Runnable;
-import java.lang.Exception;
-import java.lang.Throwable;
-
/**
* This models a <code>Work</code> instance that would be executed by a
* <code>WorkManager</code> upon submission.
@@ -34,13 +29,14 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface Work extends Runnable {
-
- /**
- * The <code>WorkManager</code> might call this method to hint the
- * active <code>Work</code> instance to complete execution as soon as
- * possible. This would be called on a seperate thread other than the
- * one currently executing the <code>Work</code> instance.
- */
- void release();
+public interface Work extends Runnable
+{
+
+ /**
+ * The <code>WorkManager</code> might call this method to hint the
+ * active <code>Work</code> instance to complete execution as soon as
+ * possible. This would be called on a seperate thread other than the
+ * one currently executing the <code>Work</code> instance.
+ */
+ void release();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkAdapter.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkAdapter.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkAdapter.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,32 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
-import java.lang.Object;
-import java.lang.Runnable;
-import java.lang.Exception;
-import java.lang.Throwable;
-
/**
* This class is provided as a convenience for easily creating
* <code>WorkListener</code> instances by extending this class
@@ -35,26 +30,39 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public class WorkAdapter implements WorkListener {
-
- /**
- * Invoked when a <code>Work</code> instance has been accepted.
- */
- public void workAccepted(WorkEvent e) {}
-
- /**
- * Invoked when a <code>Work</code> instance has been rejected.
- */
- public void workRejected(WorkEvent e) {}
-
- /**
- * Invoked when a <code>Work</code> instance has started execution.
- * This only means that a thread has been allocated.
- */
- public void workStarted(WorkEvent e) {}
-
- /**
- * Invoked when a <code>Work</code> instance has completed execution.
- */
- public void workCompleted(WorkEvent e) {}
+public class WorkAdapter implements WorkListener
+{
+
+ /**
+ * Invoked when a <code>Work</code> instance has been accepted.
+ * @param e The work event
+ */
+ public void workAccepted(WorkEvent e)
+ {
+ }
+
+ /**
+ * Invoked when a <code>Work</code> instance has been rejected.
+ * @param e The work event
+ */
+ public void workRejected(WorkEvent e)
+ {
+ }
+
+ /**
+ * Invoked when a <code>Work</code> instance has started execution.
+ * This only means that a thread has been allocated.
+ * @param e The work event
+ */
+ public void workStarted(WorkEvent e)
+ {
+ }
+
+ /**
+ * Invoked when a <code>Work</code> instance has completed execution.
+ * @param e The work event
+ */
+ public void workCompleted(WorkEvent e)
+ {
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkCompletedException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkCompletedException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkCompletedException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
@@ -44,52 +44,62 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public class WorkCompletedException extends WorkException {
+public class WorkCompletedException extends WorkException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID = -229158982387790244L;
- /**
- * Constructs a new instance with null as its detail message.
- */
- public WorkCompletedException() { super(); }
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public WorkCompletedException()
+ {
+ super();
+ }
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public WorkCompletedException(String message) {
- super(message);
- }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public WorkCompletedException(String message)
+ {
+ super(message);
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public WorkCompletedException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public WorkCompletedException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public WorkCompletedException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public WorkCompletedException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public WorkCompletedException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public WorkCompletedException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContext.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContext.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
@@ -36,31 +36,34 @@
* execution context by the <code>WorkManager</code> when the
* <code>Work</code> instance gets executed.
*
+ * The resource adapter must not make any changes to the state of the
+ * <code>WorkContext</code> after the <code>Work</code> instance corresponding
+ * to that <code>WorkContext</code> has been submitted to the <code>WorkManager</code>.
+ *
* @since 1.6
- * @version JSR322-EarlyDraft
+ * @version Java EE Connector Architecture 1.6
*/
-// @OpenQ : getName/getDescription useful for debugging purposes?
-public interface WorkContext extends Serializable{
- /**
- * Get the associated name of the <code>WorkContext</code>. This could
- * be used by the WorkManager and the resource adapter for debugging
- * purposes.
- * <p>
- *
- * @return the associated name of the <code>WorkContext</code>
- */
- String getName();
-
- /**
- * Get the brief description of the role played by the
- * <code>WorkContext</code> and any other related debugging information.
- * This could be used by the WorkManager and the resource adapter for
- * debugging purposes.
- * <p>
- *
- * @return the associated description of the <code>WorkContext</code>
- */
- String getDescription();
-
+public interface WorkContext extends Serializable
+{
+ /**
+ * Get the associated name of the <code>WorkContext</code>. This could
+ * be used by the WorkManager and the resource adapter for debugging
+ * purposes.
+ * <p>
+ *
+ * @return the associated name of the <code>WorkContext</code>
+ */
+ String getName();
+
+ /**
+ * Get the brief description of the role played by the
+ * <code>WorkContext</code> and any other related debugging information.
+ * This could be used by the WorkManager and the resource adapter for
+ * debugging purposes.
+ * <p>
+ *
+ * @return the associated description of the <code>WorkContext</code>
+ */
+ String getDescription();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextErrorCodes.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextErrorCodes.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextErrorCodes.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
@@ -32,50 +32,55 @@
* custom <code>WorkContext</code> types.
*
* @since 1.6
- * @version JSR322-EarlyDraft
+ * @version Java EE Connector Architecture 1.6
*/
-public class WorkContextErrorCodes {
- private WorkContextErrorCodes(){}
+public class WorkContextErrorCodes
+{
+ /**
+ * Indicates that a <code>WorkContext</code> type, that was not
+ * specified as optional, passed in by the <code>Work</code> instance is
+ * not supported by the container.
+ *
+ * @since 1.6
+ */
+ public static final String UNSUPPORTED_CONTEXT_TYPE = "1";
+
+ /**
+ * Indicates that there are more than one instance of a <code>WorkContext</code>
+ * type passed in by the <code>Work</code>
+ * instance.
+ * <p>
+ *
+ * @since 1.6
+ */
+ public static final String DUPLICATE_CONTEXTS = "2";
+
+ /**
+ * Indicates a failure in recreating the <code>WorkContext</code>
+ * instance. For <code>TransactionWorkContext</code> instances, the
+ * <code>WorkManager</code> must use this failure code when it should have
+ * used {@link WorkException#TX_RECREATE_FAILED} as the error code.
+ *
+ * @since 1.6
+ */
+ public static final String CONTEXT_SETUP_FAILED = "3";
+
+ /**
+ * Indicates that the container cannot support recreating the
+ * <code>WorkContext</code> instance. For
+ * <code>TransactionWorkContext</code> instances, the
+ * <code>WorkManager</code> must use this failure code when it should have
+ * used {@link WorkException#TX_CONCURRENT_WORK_DISALLOWED} as the error
+ * code.
+ *
+ * @since 1.6
+ */
+ public static final String CONTEXT_SETUP_UNSUPPORTED = "4";
- /**
- * Indicates that a <code>WorkContext</code> type, that was not
- * specified as optional, passed in by the <code>Work</code> instance is
- * not supported by the container.
- *
- * @since 1.6
- */
- public static final String UNSUPPORTED_CONTEXT_TYPE = "1";
-
- /**
- * Indicates that there are more than instance of a
- * <code>WorkContext</code> type passed in by the <code>Work</code>
- * instance.
- * <p>
- *
- * @since 1.6
- */
- public static final String DUPLICATE_CONTEXTS = "2";
-
- /**
- * Indicates a failure in recreating the <code>WorkContext</code>
- * instance. For <code>TransactionWorkContext</code> instances, the
- * <code>WorkManager</code> must use this failure code when it should have
- * used {@link WorkException#TX_RECREATE_FAILED} as the error code.
- *
- * @since 1.6
- */
- public static final String CONTEXT_SETUP_FAILED = "3";
-
- /**
- * Indicates that the container cannot support recreating the
- * <code>WorkContext</code> instance. For
- * <code>TransactionWorkContext</code> instances, the
- * <code>WorkManager</code> must use this failure code when it should have
- * used {@link WorkException#TX_CONCURRENT_WORK_DISALLOWED} as the error
- * code.
- *
- * @since 1.6
- */
- public static final String CONTEXT_SETUP_UNSUPPORTED = "4";
-
+ /**
+ * Private constructor
+ */
+ private WorkContextErrorCodes()
+ {
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextLifecycleListener.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextLifecycleListener.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextLifecycleListener.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
@@ -52,29 +52,29 @@
* <p>
*
* @since 1.6
- * @version JSR322-EarlyDraft
+ * @version Java EE Connector Architecture 1.6
*/
-public interface WorkContextLifecycleListener {
-
- /**
- * Invoked when the <code>WorkContext</code> instance was successfully
- * set as the execution context for the <code>Work</code> instance.
- *
- * @since 1.6
- */
- void contextSetupComplete();
-
- /**
- * Invoked when the <code>WorkContext</code> instance was set as the
- * execution context for the <code>Work</code> instance it was associated
- * with.
- *
- * @param errorCode
- * One of the error-codes defined in or subclasses of
- * {@link WorkContextErrorCodes WorkContextErrorCodes}
- * @since 1.6
- * @see WorkContextErrorCodes
- */
- void contextSetupFailed(String errorCode);
+public interface WorkContextLifecycleListener
+{
+ /**
+ * Invoked when the <code>WorkContext</code> instance was successfully
+ * set as the execution context for the <code>Work</code> instance.
+ *
+ * @since 1.6
+ */
+ void contextSetupComplete();
+
+ /**
+ * Invoked when the <code>WorkContext</code> instance was set as the
+ * execution context for the <code>Work</code> instance it was associated
+ * with.
+ *
+ * @param errorCode
+ * One of the error-codes defined in or subclasses of
+ * {@link WorkContextErrorCodes WorkContextErrorCodes}
+ * @since 1.6
+ * @see WorkContextErrorCodes
+ */
+ void contextSetupFailed(String errorCode);
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextProvider.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextProvider.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkContextProvider.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,29 +1,29 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
+import java.io.Serializable;
import java.util.List;
-import java.io.Serializable;
/**
* This interface specifies the methods a {@link Work Work} instance uses to
@@ -37,17 +37,21 @@
* through the {@link #getWorkContexts() getWorkContexts} method must be
* used while setting the execution context of the <code>Work</code> instance.<p>
*
+ * If the {@link #getWorkContexts() getWorkContexts} method returns an empty List
+ * or null, the WorkManager must treat it as if no additional execution contexts
+ * are associated with that Work instance.
+ *
* @since 1.6
- * @version JSR322-EarlyDraft
+ * @version Java EE Connector Architecture 1.6
*/
-public interface WorkContextProvider extends Serializable{
-
- /**
- * Gets an instance of <code>WorkContexts</code> that needs to be used
- * by the <code>WorkManager</code> to set up the execution context while
- * executing a <code>Work</code> instance.
- *
- * @return an <code>List</code> of <code>WorkContext</code> instances.
- */
- List<WorkContext> getWorkContexts();
+public interface WorkContextProvider extends Serializable
+{
+ /**
+ * Gets an instance of <code>WorkContexts</code> that needs to be used
+ * by the <code>WorkManager</code> to set up the execution context while
+ * executing a <code>Work</code> instance.
+ *
+ * @return an <code>List</code> of <code>WorkContext</code> instances.
+ */
+ List<WorkContext> getWorkContexts();
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkEvent.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkEvent.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkEvent.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,33 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
-import java.lang.Object;
-import java.lang.Runnable;
-import java.lang.Exception;
-import java.lang.Throwable;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.ObjectStreamField;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
import java.util.EventObject;
/**
@@ -35,124 +37,235 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public class WorkEvent extends EventObject {
+public class WorkEvent extends EventObject
+{
+ /** Serial version uid */
+ private static final long serialVersionUID;
- /**
- * Indicates <code>Work</code> instance has been accepted.
- */
- public static final int WORK_ACCEPTED = 1;
+ /** Persistence fields information */
+ private static final ObjectStreamField[] serialPersistentFields;
+ private static final int TYPE_IDX = 0;
+ private static final int WORK_IDX = 1;
+ private static final int EXCPEPTION_IDX = 2;
+ private static final int DURATION_IDX = 2;
- /**
- * Indicates <code>Work</code> instance has been rejected.
- */
- public static final int WORK_REJECTED = 2;
+ /**
+ * Indicates <code>Work</code> instance has been accepted.
+ */
+ public static final int WORK_ACCEPTED = 1;
+
+ /**
+ * Indicates <code>Work</code> instance has been rejected.
+ */
+ public static final int WORK_REJECTED = 2;
+
+ /**
+ * Indicates <code>Work</code> instance has started execution.
+ */
+ public static final int WORK_STARTED = 3;
+
+ /**
+ * Indicates <code>Work</code> instance has completed execution.
+ */
+ public static final int WORK_COMPLETED = 4;
+
+ /**
+ * The event type.
+ */
+ private int type;
+
+ /**
+ * The <code>Work</code> object on which the event occured.
+ */
+ private Work work;
+
+ /**
+ * The exception that occured during <code>Work</code> processing.
+ */
+ private WorkException e;
+
+ /**
+ * The start delay duration (in milliseconds).
+ */
+ private long startDuration = WorkManager.UNKNOWN;
+
- /**
- * Indicates <code>Work</code> instance has started execution.
- */
- public static final int WORK_STARTED = 3;
+ static
+ {
+ Boolean legacy = (Boolean)AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Boolean run()
+ {
+ try
+ {
+ if (System.getProperty("org.jboss.j2ee.LegacySerialization") != null)
+ return Boolean.TRUE;
+ }
+ catch (Throwable ignored)
+ {
+ // Ignore
+ }
+ return Boolean.FALSE;
+ }
+ });
- /**
- * Indicates <code>Work</code> instance has completed execution.
- */
- public static final int WORK_COMPLETED = 4;
+ if (Boolean.TRUE.equals(legacy))
+ {
+ serialVersionUID = 6971276136970053051L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField type int */
+ new ObjectStreamField("type", int.class),
+ /** @serialField work Work */
+ new ObjectStreamField("work", Work.class),
+ /** @serialField exception WorkException */
+ new ObjectStreamField("e", WorkException.class),
+ /** @serialField startDuration long */
+ new ObjectStreamField("startDuration", long.class)
+ };
+ }
+ else
+ {
+ serialVersionUID = -3063612635015047218L;
+ serialPersistentFields = new ObjectStreamField[] {
+ /** @serialField type int */
+ new ObjectStreamField("type", int.class),
+ /** @serialField work Work */
+ new ObjectStreamField("work", Work.class),
+ /** @serialField exception WorkException */
+ new ObjectStreamField("exception", WorkException.class),
+ /** @serialField startDuration long */
+ new ObjectStreamField("startDuration", long.class)
+ };
+ }
+ }
- /**
- * The event type.
- */
- private int type;
+ /**
+ * Constructor.
+ *
+ * @param source The object on which the event initially
+ * occurred.
+ *
+ * @param type The event type.
+ *
+ * @param work The <code>Work</code> object on which
+ * the event occured.
+ *
+ * @param exc The exception that occured during
+ * <code>Work</code> processing.
+ */
+ public WorkEvent(Object source, int type, Work work, WorkException exc)
+ {
+ super(source);
+ this.type = type;
+ this.work = work;
+ this.e = exc;
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param source The object on which the event initially
+ * occurred.
+ *
+ * @param type The event type.
+ *
+ * @param work The <code>Work</code> object on which
+ * the event occured.
+ *
+ * @param exc The exception that occured during
+ * <code>Work</code> processing.
+ *
+ * @param startDuration The start delay duration
+ * (in milliseconds).
+ */
+ public WorkEvent(Object source, int type, Work work, WorkException exc,
+ long startDuration)
+ {
+ this(source, type, work, exc);
+ this.startDuration = startDuration;
+ }
+
+ /**
+ * Return the type of this event.
+ *
+ * @return the event type.
+ */
+ public int getType()
+ {
+ return this.type;
+ }
+
+ /**
+ * Return the <code>Work</code> instance which is the cause of the event.
+ *
+ * @return the <code>Work</code> instance.
+ */
+ public Work getWork()
+ {
+ return this.work;
+ }
- /**
- * The <code>Work</code> object on which the event occured.
- */
- private Work work;
+ /**
+ * Return the start interval duration.
+ *
+ * @return the time elapsed (in milliseconds) since the <code>Work</code>
+ * was accepted, until the <code>Work</code> execution started. Note,
+ * this does not offer real-time guarantees. It is valid to return -1, if
+ * the actual start interval duration is unknown.
+ */
+ public long getStartDuration()
+ {
+ return this.startDuration;
+ }
- /**
- * The exception that occured during <code>Work</code> processing.
- */
- private WorkException exc;
+ /**
+ * Return the <code>WorkException</code>. The actual
+ * <code>WorkException</code> subtype returned depends on the type of the
+ * event.
+ *
+ * @return a <code>WorkRejectedException</code> or a
+ * <code>WorkCompletedException</code>, if any.
+ */
+ public WorkException getException()
+ {
+ return this.e;
+ }
- /**
- * The start delay duration (in milliseconds).
- */
- private long startDuration = WorkManager.UNKNOWN;
+ /**
+ * Read object
+ * @param ois The object input stream
+ * @exception ClassNotFoundException If a class can not be found
+ * @exception IOException Thrown if an error occurs
+ */
+ private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException
+ {
+ ObjectInputStream.GetField fields = ois.readFields();
+ String name = serialPersistentFields[TYPE_IDX].getName();
+ this.type = fields.get(name, 0);
+ name = serialPersistentFields[WORK_IDX].getName();
+ this.work = (Work) fields.get(name, null);
+ name = serialPersistentFields[EXCPEPTION_IDX].getName();
+ this.e = (WorkException) fields.get(name, null);
+ name = serialPersistentFields[DURATION_IDX].getName();
+ this.startDuration = fields.get(name, 0L);
+ }
- /**
- * Constructor.
- *
- * @param source The object on which the event initially
- * occurred.
- *
- * @param type The event type.
- *
- * @param work The <code>Work</code> object on which
- * the event occured.
- *
- * @param exc The exception that occured during
- * <code>Work</code> processing.
-
+ /**
+ * Write object
+ * @param oos The object output stream
+ * @exception IOException Thrown if an error occurs
*/
- public WorkEvent(Object source, int type, Work work, WorkException exc) {
- super(source);
- this.type = type;
- this.work = work;
- this.exc = exc;
- }
-
- /**
- * Constructor.
- *
- * @param source The object on which the event initially
- * occurred.
- *
- * @param type The event type.
- *
- * @param work The <code>Work</code> object on which
- * the event occured.
- *
- * @param exc The exception that occured during
- * <code>Work</code> processing.
- *
- * @param startDuration The start delay duration
- * (in milliseconds).
- */
- public WorkEvent(Object source, int type, Work work, WorkException exc,
- long startDuration) {
- this(source, type, work, exc);
- this.startDuration = startDuration;
- }
-
- /**
- * Return the type of this event.
- *
- * @return the event type.
- */
- public int getType() { return this.type; }
-
- /**
- * Return the <code>Work</code> instance which is the cause of the event.
- *
- * @return the <code>Work</code> instance.
- */
- public Work getWork() { return this.work; }
-
- /**
- * Return the start interval duration.
- *
- * @return the time elapsed (in milliseconds) since the <code>Work</code>
- * was accepted, until the <code>Work</code> execution started. Note,
- * this does not offer real-time guarantees. It is valid to return -1, if
- * the actual start interval duration is unknown.
- */
- public long getStartDuration() { return this.startDuration; }
-
- /**
- * Return the <code>WorkException</code>. The actual
- * <code>WorkException</code> subtype returned depends on the type of the
- * event.
- *
- * @return a <code>WorkRejectedException</code> or a
- * <code>WorkCompletedException</code>, if any.
- */
- public WorkException getException() { return this.exc; }
+ private void writeObject(ObjectOutputStream oos) throws IOException
+ {
+ ObjectOutputStream.PutField fields = oos.putFields();
+ String name = serialPersistentFields[TYPE_IDX].getName();
+ fields.put(name, type);
+ name = serialPersistentFields[WORK_IDX].getName();
+ fields.put(name, work);
+ name = serialPersistentFields[EXCPEPTION_IDX].getName();
+ fields.put(name, e);
+ name = serialPersistentFields[DURATION_IDX].getName();
+ fields.put(name, startDuration);
+ oos.writeFields();
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
@@ -28,80 +28,89 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public class WorkException extends javax.resource.ResourceException {
+public class WorkException extends javax.resource.ResourceException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID = 6360106395593829940L;
+ /**
+ * Indicates an internal error condition.
+ */
+ public static final String INTERNAL = "-1";
+
+ /**
+ * Undefined error code.
+ */
+ public static final String UNDEFINED = "0";
+
+ /**
+ * Indicates start timeout expiration.
+ */
+ public static final String START_TIMED_OUT = "1";
+
+ /**
+ * Indicates that concurrent work within a transaction is
+ * disallowed. That is, there is already another <code>Work</code>
+ * instance associated with the specified transaction context.
+ */
+ public static final String TX_CONCURRENT_WORK_DISALLOWED = "2";
+
+ /**
+ * Indicates a failure in recreating the specified transaction context.
+ */
+ public static final String TX_RECREATE_FAILED = "3";
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public WorkException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public WorkException(String message)
+ {
+ super(message);
+ }
- /**
- * Indicates an internal error condition.
- */
- public static final String INTERNAL = "-1";
-
- /**
- * Undefined error code.
- */
- public static final String UNDEFINED = "0";
-
- /**
- * Indicates start timeout expiration.
- */
- public static final String START_TIMED_OUT = "1";
-
- /**
- * Indicates that concurrent work within a transaction is
- * disallowed. That is, there is already another <code>Work</code>
- * instance associated with the specified transaction context.
- */
- public static final String TX_CONCURRENT_WORK_DISALLOWED = "2";
-
- /**
- * Indicates a failure in recreating the specified transaction context.
- */
- public static final String TX_RECREATE_FAILED = "3";
-
- /**
- * Constructs a new instance with null as its detail message.
- */
- public WorkException() { super(); }
-
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public WorkException(String message) {
- super(message);
- }
-
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public WorkException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type
- * <code>Throwable</code>.
- */
- public WorkException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public WorkException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public WorkException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type
+ * <code>Throwable</code>.
+ */
+ public WorkException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public WorkException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkListener.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkListener.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkListener.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,31 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
-import java.lang.Object;
-import java.lang.Runnable;
-import java.lang.Exception;
-import java.lang.Throwable;
import java.util.EventListener;
/**
@@ -42,26 +38,35 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface WorkListener extends EventListener {
-
- /**
- * Invoked when a <code>Work</code> instance has been accepted.
- */
- void workAccepted(WorkEvent e);
-
- /**
- * Invoked when a <code>Work</code> instance has been rejected.
- */
- void workRejected(WorkEvent e);
-
- /**
- * Invoked when a <code>Work</code> instance has started execution.
- * This only means that a thread has been allocated.
- */
- void workStarted(WorkEvent e);
-
- /**
- * Invoked when a <code>Work</code> instance has completed execution.
- */
- void workCompleted(WorkEvent e);
+public interface WorkListener extends EventListener
+{
+
+ /**
+ * Invoked when a <code>Work</code> instance has been accepted.
+ * @param e A <code>WorkEvent</code> object that provides more
+ * information about the accepted Work.
+ */
+ void workAccepted(WorkEvent e);
+
+ /**
+ * Invoked when a <code>Work</code> instance has been rejected.
+ * @param e A <code>WorkEvent</code> object that provides more
+ * information about the accepted Work.
+ */
+ void workRejected(WorkEvent e);
+
+ /**
+ * Invoked when a <code>Work</code> instance has started execution.
+ * This only means that a thread has been allocated.
+ * @param e A <code>WorkEvent</code> object that provides more
+ * information about the accepted Work.
+ */
+ void workStarted(WorkEvent e);
+
+ /**
+ * Invoked when a <code>Work</code> instance has completed execution.
+ * @param e A <code>WorkEvent</code> object that provides more
+ * information about the accepted Work.
+ */
+ void workCompleted(WorkEvent e);
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkManager.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkManager.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkManager.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,32 +1,27 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
-import java.lang.Object;
-import java.lang.Runnable;
-import java.lang.Exception;
-import java.lang.Throwable;
-
/**
* This interface models a <code>WorkManager</code> which provides a facility
* to submit <code>Work</code> instances for execution. This frees the user
@@ -79,185 +74,207 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public interface WorkManager {
-
- /**
- * A constant to indicate timeout duration. A zero timeout value indicates
- * an action be performed immediately.
- */
- long IMMEDIATE = 0L;
-
- /**
- * A constant to indicate timeout duration. A maximum timeout value
- * indicates that an action be performed arbitrarily without any time
- * constraint.
- */
- long INDEFINITE = Long.MAX_VALUE;
-
- /**
- * A constant to indicate an unknown start delay duration or other unknown
- * values.
- */
- long UNKNOWN = -1;
-
- /**
- * Accepts a <code>Work</code> instance for processing. This call
- * blocks until the <code>Work</code> instance completes execution.
- * There is no guarantee on when the accepted <code>Work</code>
- * instance would start execution ie., there is no time constraint
- * to start execution.
- *
- * @param work The unit of work to be done.
- * Could be long or short-lived.
- *
- * @throws WorkRejectedException indicates that a
- * <code>Work</code> instance has been rejected from further processing.
- * This can occur due to internal factors.
- *
- * @throws WorkCompletedException indicates that a
- * <code>Work</code> instance has completed execution with an exception.
- */
- void doWork(Work work) // startTimeout = INDEFINITE
- throws WorkException;
-
- /**
- * Accepts a <code>Work</code> instance for processing. This call
- * blocks until the <code>Work</code> instance completes execution.
- *
- * @param work The unit of work to be done.
- * Could be long or short-lived.
- *
- * @param startTimeout a time duration (in milliseconds)
- * within which the execution of the <code>Work</code> instance must
- * start. Otherwise, the <code>Work</code> instance is rejected with a
- * <code>WorkRejectedException</code> set to an appropriate error code
- * (<code>WorkRejectedException.TIMED_OUT</code>). Note, this
- * does not offer real-time guarantees.
- *
- * @param execContext an object containing the execution
- * context with which the submitted <code>Work</code> instance must
- * be executed.
- *
- * @param workListener an object which would be notified
- * when the various <code>Work</code> processing events (work accepted,
- * work rejected, work started, work completed) occur.
- *
- * @throws WorkRejectedException indicates that a
- * <code>Work</code> instance has been rejected from further processing.
- * This can occur due to internal factors or start timeout expiration.
- *
- * @throws WorkCompletedException indicates that a
- * <code>Work</code> instance has completed execution with an exception.
- */
- void doWork(Work work, long startTimeout,
- ExecutionContext execContext, WorkListener workListener)
- throws WorkException;
-
- /**
- * Accepts a <code>Work</code> instance for processing. This call
- * blocks until the <code>Work</code> instance starts execution
- * but not until its completion. There is no guarantee on when
- * the accepted <code>Work</code> instance would start
- * execution ie., there is no time constraint to start execution.
- *
- * @param work The unit of work to be done.
- * Could be long or short-lived.
- *
- * @return the time elapsed (in milliseconds) from <code>Work</code>
- * acceptance until start of execution. Note, this does not offer
- * real-time guarantees. It is valid to return -1, if the actual start
- * delay duration is unknown.
- *
- * @throws WorkRejectedException indicates that a
- * <code>Work</code> instance has been rejected from further processing.
- * This can occur due to internal factors.
- */
- long startWork(Work work) // startTimeout = INDEFINITE
- throws WorkException;
-
- /**
- * Accepts a <code>Work</code> instance for processing. This call
- * blocks until the <code>Work</code> instance starts execution
- * but not until its completion. There is no guarantee on when
- * the accepted <code>Work</code> instance would start
- * execution ie., there is no time constraint to start execution.
- *
- * @param work The unit of work to be done.
- * Could be long or short-lived.
- *
- * @param startTimeout a time duration (in milliseconds)
- * within which the execution of the <code>Work</code> instance must
- * start. Otherwise, the <code>Work</code> instance is rejected with a
- * <code>WorkRejectedException</code> set to an appropriate error code
- * (<code>WorkRejectedException.TIMED_OUT</code>). Note, this
- * does not offer real-time guarantees.
- *
- * @param execContext an object containing the execution
- * context with which the submitted <code>Work</code> instance must
- * be executed.
- *
- * @param workListener an object which would be notified
- * when the various <code>Work</code> processing events (work accepted,
- * work rejected, work started, work completed) occur.
- *
- * @return the time elapsed (in milliseconds) from <code>Work</code>
- * acceptance until start of execution. Note, this does not offer
- * real-time guarantees. It is valid to return -1, if the actual start
- * delay duration is unknown.
- *
- * @throws WorkRejectedException indicates that a
- * <code>Work</code> instance has been rejected from further processing.
- * This can occur due to internal factors or start timeout expiration.
- */
- long startWork(Work work, long startTimeout,
- ExecutionContext execContext, WorkListener workListener)
- throws WorkException;
-
- /**
- * Accepts a <code>Work</code> instance for processing. This call
- * does not block and returns immediately once a <code>Work</code>
- * instance has been accepted for processing. There is no guarantee
- * on when the submitted <code>Work</code> instance would start
- * execution ie., there is no time constraint to start execution.
- *
- * @param work The unit of work to be done.
- * Could be long or short-lived.
- *
- * @throws WorkRejectedException indicates that a
- * <code>Work</code> instance has been rejected from further processing.
- * This can occur due to internal factors.
- */
- void scheduleWork(Work work) // startTimeout = INDEFINITE
- throws WorkException;
-
- /**
- * Accepts a <code>Work</code> instance for processing. This call
- * does not block and returns immediately once a <code>Work</code>
- * instance has been accepted for processing.
- *
- * @param work The unit of work to be done.
- * Could be long or short-lived.
- *
- * @param startTimeout a time duration (in milliseconds)
- * within which the execution of the <code>Work</code> instance must
- * start. Otherwise, the <code>Work</code> instance is rejected with a
- * <code>WorkRejectedException</code> set to an appropriate error code
- * (<code>WorkRejectedException.TIMED_OUT</code>). Note, this
- * does not offer real-time guarantees.
- *
- * @param execContext an object containing the execution
- * context with which the submitted <code>Work</code> instance must
- * be executed.
- *
- * @param workListener an object which would be notified
- * when the various <code>Work</code> processing events (work accepted,
- * work rejected, work started, work completed) occur.
- *
- * @throws WorkRejectedException indicates that a
- * <code>Work</code> instance has been rejected from further processing.
- * This can occur due to internal factors.
- */
- void scheduleWork(Work work, long startTimeout,
- ExecutionContext execContext, WorkListener workListener)
- throws WorkException;
+public interface WorkManager
+{
+
+ /**
+ * A constant to indicate timeout duration. A zero timeout value indicates
+ * an action be performed immediately. The WorkManager implementation
+ * must timeout the action as soon as possible.
+ */
+ long IMMEDIATE = 0L;
+
+ /**
+ * A constant to indicate timeout duration. A maximum timeout value
+ * indicates that an action be performed arbitrarily without any time
+ * constraint.
+ */
+ long INDEFINITE = Long.MAX_VALUE;
+
+ /**
+ * A constant to indicate an unknown start delay duration or other unknown
+ * values.
+ */
+ long UNKNOWN = -1;
+
+ /**
+ * Accepts a <code>Work</code> instance for processing. This call
+ * blocks until the <code>Work</code> instance completes execution.
+ * There is no guarantee on when the accepted <code>Work</code>
+ * instance would start execution ie., there is no time constraint
+ * to start execution. (that is, startTimeout=INDEFINITE)
+ *
+ * @param work The unit of work to be done.
+ * Could be long or short-lived.
+ *
+ * @throws WorkException Thrown if an error occurs
+ *
+ * @throws WorkRejectedException indicates that a
+ * <code>Work</code> instance has been rejected from further processing.
+ * This can occur due to internal factors.
+ *
+ * @throws WorkCompletedException indicates that a
+ * <code>Work</code> instance has completed execution with an exception.
+ */
+ void doWork(Work work)
+ throws WorkException;
+
+ /**
+ * Accepts a <code>Work</code> instance for processing. This call
+ * blocks until the <code>Work</code> instance completes execution.
+ *
+ * @param work The unit of work to be done.
+ * Could be long or short-lived.
+ *
+ * @param startTimeout a time duration (in milliseconds)
+ * within which the execution of the <code>Work</code> instance must
+ * start. Otherwise, the <code>Work</code> instance is rejected with a
+ * <code>WorkRejectedException</code> set to an appropriate error code
+ * (<code>WorkRejectedException.TIMED_OUT</code>). Note, this
+ * does not offer real-time guarantees.
+ *
+ * @param execContext an object containing the execution
+ * context with which the submitted <code>Work</code> instance must
+ * be executed.
+ *
+ * @param workListener an object which would be notified
+ * when the various <code>Work</code> processing events (work accepted,
+ * work rejected, work started, work completed) occur.
+ *
+ * @throws WorkException Thrown if an error occurs
+ *
+ * @throws WorkRejectedException indicates that a
+ * <code>Work</code> instance has been rejected from further processing.
+ * This can occur due to internal factors or start timeout expiration.
+ *
+ * @throws WorkCompletedException indicates that a
+ * <code>Work</code> instance has completed execution with an exception.
+ */
+ void doWork(Work work,
+ long startTimeout,
+ ExecutionContext execContext,
+ WorkListener workListener)
+ throws WorkException;
+
+ /**
+ * Accepts a <code>Work</code> instance for processing. This call
+ * blocks until the <code>Work</code> instance starts execution
+ * but not until its completion. There is no guarantee on when
+ * the accepted <code>Work</code> instance would start
+ * execution ie., there is no time constraint to start execution
+ * (that is, startTimeout=INDEFINITE)
+ *
+ * @param work The unit of work to be done.
+ * Could be long or short-lived.
+ *
+ * @return the time elapsed (in milliseconds) from <code>Work</code>
+ * acceptance until start of execution. Note, this does not offer
+ * real-time guarantees. It is valid to return -1, if the actual start
+ * delay duration is unknown.
+ *
+ * @throws WorkException Thrown if an error occurs
+ *
+ * @throws WorkRejectedException indicates that a
+ * <code>Work</code> instance has been rejected from further processing.
+ * This can occur due to internal factors.
+ */
+ long startWork(Work work)
+ throws WorkException;
+
+ /**
+ * Accepts a <code>Work</code> instance for processing. This call
+ * blocks until the <code>Work</code> instance starts execution
+ * but not until its completion. There is no guarantee on when
+ * the accepted <code>Work</code> instance would start
+ * execution ie., there is no time constraint to start execution.
+ *
+ * @param work The unit of work to be done.
+ * Could be long or short-lived.
+ *
+ * @param startTimeout a time duration (in milliseconds)
+ * within which the execution of the <code>Work</code> instance must
+ * start. Otherwise, the <code>Work</code> instance is rejected with a
+ * <code>WorkRejectedException</code> set to an appropriate error code
+ * (<code>WorkRejectedException.TIMED_OUT</code>). Note, this
+ * does not offer real-time guarantees.
+ *
+ * @param execContext an object containing the execution
+ * context with which the submitted <code>Work</code> instance must
+ * be executed.
+ *
+ * @param workListener an object which would be notified
+ * when the various <code>Work</code> processing events (work accepted,
+ * work rejected, work started, work completed) occur.
+ *
+ * @return the time elapsed (in milliseconds) from <code>Work</code>
+ * acceptance until start of execution. Note, this does not offer
+ * real-time guarantees. It is valid to return -1, if the actual start
+ * delay duration is unknown.
+ *
+ * @throws WorkException Thrown if an error occurs
+ *
+ * @throws WorkRejectedException indicates that a
+ * <code>Work</code> instance has been rejected from further processing.
+ * This can occur due to internal factors or start timeout expiration.
+ */
+ long startWork(Work work,
+ long startTimeout,
+ ExecutionContext execContext,
+ WorkListener workListener)
+ throws WorkException;
+
+ /**
+ * Accepts a <code>Work</code> instance for processing. This call
+ * does not block and returns immediately once a <code>Work</code>
+ * instance has been accepted for processing. There is no guarantee
+ * on when the submitted <code>Work</code> instance would start
+ * execution ie., there is no time constraint to start execution
+ * (that is, startTimeout=INDEFINITE).
+ *
+ * @param work The unit of work to be done.
+ * Could be long or short-lived.
+ *
+ * @throws WorkException Thrown if an error occurs
+ *
+ * @throws WorkRejectedException indicates that a
+ * <code>Work</code> instance has been rejected from further processing.
+ * This can occur due to internal factors.
+ */
+ void scheduleWork(Work work)
+ throws WorkException;
+
+ /**
+ * Accepts a <code>Work</code> instance for processing. This call
+ * does not block and returns immediately once a <code>Work</code>
+ * instance has been accepted for processing.
+ *
+ * @param work The unit of work to be done.
+ * Could be long or short-lived.
+ *
+ * @param startTimeout a time duration (in milliseconds)
+ * within which the execution of the <code>Work</code> instance must
+ * start. Otherwise, the <code>Work</code> instance is rejected with a
+ * <code>WorkRejectedException</code> set to an appropriate error code
+ * (<code>WorkRejectedException.TIMED_OUT</code>). Note, this
+ * does not offer real-time guarantees.
+ *
+ * @param execContext an object containing the execution
+ * context with which the submitted <code>Work</code> instance must
+ * be executed.
+ *
+ * @param workListener an object which would be notified
+ * when the various <code>Work</code> processing events (work accepted,
+ * work rejected, work started, work completed) occur.
+ *
+ * @throws WorkException Thrown if an error occurs
+ *
+ * @throws WorkRejectedException indicates that a
+ * <code>Work</code> instance has been rejected from further processing.
+ * This can occur due to internal factors.
+ */
+ void scheduleWork(Work work,
+ long startTimeout,
+ ExecutionContext execContext,
+ WorkListener workListener)
+ throws WorkException;
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkRejectedException.java
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkRejectedException.java 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/WorkRejectedException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -1,24 +1,24 @@
/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package javax.resource.spi.work;
@@ -38,50 +38,60 @@
* @version 1.0
* @author Ram Jeyaraman
*/
-public class WorkRejectedException extends WorkException {
+public class WorkRejectedException extends WorkException
+{
+ /** Serial version uid */
+ private static final long serialVersionUID = -687129544691878081L;
+
+ /**
+ * Constructs a new instance with null as its detail message.
+ */
+ public WorkRejectedException()
+ {
+ super();
+ }
- /**
- * Constructs a new instance with null as its detail message.
- */
- public WorkRejectedException() { super(); }
+ /**
+ * Constructs a new instance with the specified detail message.
+ *
+ * @param message the detail message.
+ */
+ public WorkRejectedException(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Constructs a new throwable with the specified cause.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public WorkRejectedException(Throwable cause)
+ {
+ super(cause);
+ }
- /**
- * Constructs a new instance with the specified detail message.
- *
- * @param message the detail message.
- */
- public WorkRejectedException(String message) {
- super(message);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and cause.
+ *
+ * @param message the detail message.
+ *
+ * @param cause a chained exception of type <code>Throwable</code>.
+ */
+ public WorkRejectedException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
- /**
- * Constructs a new throwable with the specified cause.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public WorkRejectedException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and cause.
- *
- * @param message the detail message.
- *
- * @param cause a chained exception of type <code>Throwable</code>.
- */
- public WorkRejectedException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new throwable with the specified detail message and
- * an error code.
- *
- * @param message a description of the exception.
- * @param errorCode a string specifying the vendor specific error code.
- */
- public WorkRejectedException(String message, String errorCode) {
- super(message, errorCode);
- }
+ /**
+ * Constructs a new throwable with the specified detail message and
+ * an error code.
+ *
+ * @param message a description of the exception.
+ * @param errorCode a string specifying the vendor specific error code.
+ */
+ public WorkRejectedException(String message, String errorCode)
+ {
+ super(message, errorCode);
+ }
}
Modified: projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/package.html
===================================================================
--- projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/package.html 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-connector-api_1.6_spec/src/main/javax/resource/spi/work/package.html 2010-01-28 22:28:11 UTC (rev 100091)
@@ -2,6 +2,6 @@
<head>
</head>
<body>
-This package contains APIs for the Work Management, Generic Inflow and Security Inflow contracts.
+This package contains APIs for the Work Management, Generic Work and Security Work contracts.
</body>
</html>
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/pom.xml
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/pom.xml (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/pom.xml 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+<!--
+ vim:ts=2:sw=2:expandtab
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.spec</groupId>
+ <artifactId>jboss-spec-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ <relativePath>../jboss-spec-parent/pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.spec.javax.ejb</groupId>
+ <artifactId>jboss-ejb-api_3.0_spec</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+ <name>EJB 3.0 API</name>
+ <url>http://www.jboss.org</url>
+ <description>The Java EJB 3.0 API classes</description>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.spec.javax.transaction</groupId>
+ <artifactId>jboss-transaction-api_1.0_spec</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.ws.native</groupId>
+ <artifactId>jbossws-native-jaxrpc</artifactId>
+ <version>3.0.4.GA</version>
+ </dependency>
+ </dependencies>
+</project>
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/etc/default.mf
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/etc/default.mf (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/etc/default.mf 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,10 @@
+Manifest-Version: 1.0
+Created-By: @java.vm.version@ (@java.vm.vendor@)
+Specification-Title: @specification.title@
+Specification-Version: @specification.version@
+Specification-Vendor: @specification.vendor@
+Implementation-Title: @implementation.title@
+Implementation-URL: @implementation.url@
+Implementation-Version: @implementation.version@
+Implementation-Vendor: @implementation.vendor@
+Implementation-Vendor-Id: @implementation.vendor.id@
Property changes on: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/etc/default.mf
___________________________________________________________________
Name: svn:executable
+ *
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Generated.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Generated.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Generated.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,65 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.annotation;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * The Generated annoation is used to mark source code that has been generated.
+ * It can also be used to differentiate user written code from generated code in
+ * a single file. When used, the value element must have the name of the code
+ * generator. The recommended convention is to use the fully qualified name of
+ * the code generator in the value field . For example: com.company.package.classname.
+ * The date element is used to indicate the date the source was generated. The
+ * date element must follow the ISO 8601 standard. For example the date element
+ * would have the following value 2001-07-04T12:08:56.235-0700 which represents
+ * 2001-07-04 12:08:56 local time in the U.S. Pacific Time time zone. The comment
+ * element is a place holder for any comments that the code generator may want to
+ * include in the generated code.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ * @since Common Annotations 1.0
+ */
+ at Documented
+ at Retention(SOURCE)
+ at Target({PACKAGE, TYPE, ANNOTATION_TYPE, METHOD, CONSTRUCTOR, FIELD, LOCAL_VARIABLE, PARAMETER})
+public @interface Generated {
+ /**
+ * This is used by the code generator to mark the generated classes and methods.
+ */
+ String[] value();
+
+ /**
+ * A place holder for any comments that the code generator may want to include in the generated code.
+ */
+ String comments() default "";
+
+ /**
+ * Date when the source was generated.
+ */
+ String date() default "";
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PostConstruct.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PostConstruct.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PostConstruct.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * The PostConstruct method is invoked on the newly constructed instance, after
+ * any dependency injection has been performed by the container and before the
+ * first business method is invoked on the bean.
+ *
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target({METHOD})
+ at Retention(RUNTIME)
+public @interface PostConstruct
+{
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PreDestroy.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PreDestroy.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/PreDestroy.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * The PreDestroy method will execute after any method annotated with the Remove
+ * annotation has completed.
+ *
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target({METHOD})
+ at Retention(RUNTIME)
+public @interface PreDestroy
+{
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resource.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resource.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resource.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,65 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation;
+
+import static java.lang.annotation.ElementType.*;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The Resource annotation is used to express a dependency on an external
+ * resource in the bean’s environment. The name property refers to the name by
+ * which the resource is to be known in the environment; the type is the
+ * resource manager connection factory type. The authenticationType member
+ * specifies whether the container or bean is to perform authentication. The
+ * shareable member refers to the sharability of resource manager connections.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57283 $
+ */
+ at Target({TYPE, FIELD, METHOD})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface Resource
+{
+ /**
+ * Enums for whether the container or bean is to perform authentication.
+ */
+ public enum AuthenticationType
+ {
+ CONTAINER,
+ APPLICATION
+ }
+
+ String name() default "";
+
+ Class type() default Object.class;
+
+ AuthenticationType authenticationType() default AuthenticationType.CONTAINER;
+
+ boolean shareable() default true;
+
+ String description() default "";
+
+ String mappedName() default "";
+
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resources.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resources.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/Resources.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import javax.annotation.Resource;
+
+/**
+ * Specify a collection of Resources on a bean class.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target({ElementType.TYPE})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface Resources
+{
+ Resource[] value();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DeclareRoles.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DeclareRoles.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DeclareRoles.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation.security;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The Bean Provider is responsible for using the RolesReferenced metadata
+ * annotation or the security-role-ref elements of the deployment descriptor to
+ * declare all the security role names used in the enterprise bean code. The
+ * values must be the security role name that is used as a parameter to the
+ * isCallerInRole(String roleName) method.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target({ElementType.TYPE})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface DeclareRoles
+{
+ String[] value();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DenyAll.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DenyAll.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/DenyAll.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation.security;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The DenyAll annotation specifies that no security roles are permitted to
+ * execute the specified method(s).
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target({ElementType.METHOD})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface DenyAll
+{
+}
+
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/PermitAll.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/PermitAll.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/PermitAll.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation.security;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The PermitAll annotation specifies that all security roles are permitted to
+ * execute the specified method(s).
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target({ElementType.TYPE, ElementType.METHOD})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface PermitAll
+{
+}
+
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RolesAllowed.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RolesAllowed.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RolesAllowed.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation.security;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The value of the RolesAllowed annotation is a list of security role names to
+ * be mapped to the security roles that are permitted to execute the specified
+ * method(s).
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target({ElementType.TYPE, ElementType.METHOD})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface RolesAllowed
+{
+ String[] value();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RunAs.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RunAs.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/annotation/security/RunAs.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.annotation.security;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The Bean Provider can use the RunAs metadata annotation or the Bean Provider
+ * or Application Assembler can use the run-as deployment descriptor element to
+ * define a run-as identity for an enterprise bean in the deployment descriptor.
+ * The run-as identity applies to the enterprise bean as a whole, that is, to
+ * all methods of the enterprise bean’s business, home, component, web service
+ * endpoint interfaces, to the message listener methods of a message-driven
+ * bean, and to the timeout callback method of an enterprise bean, and all
+ * internal methods of the bean that they might in turn call. The value is
+ * the security role the bean runs as.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57283 $
+ */
+ at Documented
+ at Target(ElementType.TYPE)
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface RunAs
+{
+ String value();
+}
+
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/AccessLocalException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/AccessLocalException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/AccessLocalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,56 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * An AccessLocalException is thrown to indicate that the caller does not
+ * have permission to call the method. This exception is thrown to local clients.
+ */
+public class AccessLocalException extends EJBException {
+
+ /**
+ * Constructs an AccessLocalException with no detail message.
+ */
+ public AccessLocalException() {
+ super();
+ }
+
+ /**
+ * Constructs an AccessLocalException with the specified detail message.
+ *
+ * @param message - The detailed message
+ */
+ public AccessLocalException(java.lang.String message) {
+ super(message);
+ }
+
+ /**
+ * Constructs an AccessLocalException with the specified detail message and a nested exception.
+ *
+ * @param message - The detailed message
+ * @param ex - The nested exception
+ */
+ public AccessLocalException(java.lang.String message,
+ java.lang.Exception ex) {
+ super(message,ex);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ActivationConfigProperty.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ActivationConfigProperty.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ActivationConfigProperty.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.*;
+import java.lang.annotation.Target;
+
+
+
+/**
+ * Annotation for adding properties to messaging bean annotations (i.e. @MessageDriven, @Consumer)
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 62510 $
+ */
+ at Retention(RUNTIME)
+ at Target({})
+public @interface ActivationConfigProperty
+{
+ String propertyName();
+
+ String propertyValue();
+}
Property changes on: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ActivationConfigProperty.java
___________________________________________________________________
Name: svn:executable
+ *
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ApplicationException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ApplicationException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ApplicationException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,41 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation for identifying an Exception class as an Application Exception, which does not cause
+ * a transaction rollback
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 37459 $
+ */
+ at Target(ElementType.TYPE)
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface ApplicationException
+{
+ boolean rollback() default false;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ConcurrentAccessException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ConcurrentAccessException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ConcurrentAccessException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.ejb;
+
+/**
+ * A ConcurrentAccessException indicates that the client has attempted an invocation on a
+ * stateful session bean while another invocation is in progress.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+public class ConcurrentAccessException extends EJBException
+{
+ private static final long serialVersionUID = 1L;
+
+ public ConcurrentAccessException()
+ {
+ super();
+ }
+
+ public ConcurrentAccessException(String message)
+ {
+ super(message);
+ }
+
+ public ConcurrentAccessException(String message, Exception ex)
+ {
+ super(message, ex);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/CreateException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/CreateException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/CreateException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <P>The CreateException exception must be included in the throws clauses of
+ * all create(...) methods define in an enterprise Bean's remote interface.</P>
+ * <P>The exception is used as a standard application-level exception
+ * to report a failure to create an entity EJB object. </P>
+ */
+public class CreateException extends Exception {
+
+ /**
+ * Constructs an CreateException with no detail message.
+ */
+ public CreateException() {
+ super();
+ }
+
+ /**
+ * Constructs an CreateException with the specified detail message.
+ *
+ * @param message - The detailed message
+ */
+ public CreateException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/DuplicateKeyException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/DuplicateKeyException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/DuplicateKeyException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * The DuplicateKeyException exception is thrown if an entity EJB
+ * object cannot be created because an object with the same key already
+ * exists. This exception is thrown by the create methods defined in an
+ * enterprise Bean's home interface.
+ */
+public class DuplicateKeyException extends CreateException {
+
+ /**
+ * Constructs an DuplicateKeyException with no detail message.
+ */
+ public DuplicateKeyException() {
+ super();
+ }
+
+ /**
+ * Constructs an DuplicateKeyException with the specified detail message.
+ *
+ * @param message - The detailed message
+ */
+ public DuplicateKeyException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJB.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJB.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJB.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import static java.lang.annotation.ElementType.*;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.*;
+import java.lang.annotation.Target;
+
+/**
+ * The EJB annotation denotes a reference to an EJB 3.0 session bean.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 62538 $
+ */
+ at Retention(RUNTIME)
+ at Target({TYPE, METHOD, FIELD})
+public @interface EJB
+{
+ String name() default "";
+
+ Class beanInterface() default java.lang.Object.class;
+
+ String beanName() default "";
+
+ String mappedName() default "";
+
+ String description() default "";
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBAccessException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBAccessException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBAccessException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * An AccessLocalException is thrown to indicate that the caller does not
+ * have permission to call the method. This exception is thrown to local clients.
+ * @version $Revision: 62510 $
+ */
+public class EJBAccessException extends EJBException {
+
+ /**
+ * Constructs an AccessLocalException with no detail message.
+ */
+ public EJBAccessException() {
+ super();
+ }
+
+ /**
+ * Constructs an AccessLocalException with the specified detail message.
+ *
+ * @param message - The detailed message
+ */
+ public EJBAccessException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBContext.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBContext.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,161 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import javax.transaction.UserTransaction;
+import java.security.Identity;
+import java.security.Principal;
+import java.util.Properties;
+
+/**
+ * <P>The EJBContext interface provides an instance with access to the
+ * container-provided runtime context of an enterprise Bean instance.</P>
+ * <P>This interface is extended by the SessionContext and EntityContext
+ * interface to provide additional methods specific to the enterprise
+ * Bean type.</P>
+ * @version $Revision: 78512 $
+ */
+public interface EJBContext
+{
+
+ /**
+ * Obtain the enterprise bean's remote home interface.
+ *
+ * @return The enterprise bean's remote home interface.
+ * @exception java.lang.IllegalStateException - if the enterprise bean does not have a remote home interface.
+ */
+ public EJBHome getEJBHome();
+
+ /**
+ * Obtain the enterprise bean's local home interface.
+ *
+ * @return The enterprise bean's local home interface.
+ * @exception java.lang.IllegalStateException - if the enterprise bean does not have a local home interface.
+ */
+ public EJBLocalHome getEJBLocalHome();
+
+ /**
+ * <B>Deprecated.</B> <I>Use the JNDI naming context java:comp/env to access enterprise bean's environment.</I>
+ *
+ * <P>Obtain the enterprise bean's environment properties.</P>
+ *
+ * <P><B>Note:</B> If the enterprise bean has no environment properties this method returns an empty
+ * java.util.Properties object. This method never returns null.</P>
+ *
+ * @return The environment properties for the enterprise bean.
+ */
+ public Properties getEnvironment();
+
+ /**
+ * <B>Deprecated.</B> <I>Use Principal getCallerPrincipal() instead.</I>
+ *
+ * <P>Obtain the java.security.Identity of the caller. This method is deprecated in EJB 1.1.
+ * The Container is allowed to return alway null from this method. The enterprise bean should use
+ * the getCallerPrincipal method instead.</P>
+ *
+ * @return The Identity object that identifies the caller.
+ */
+ public Identity getCallerIdentity();
+
+ /**
+ * Obtains the java.security.Principal of the caller.
+ *
+ * @return The Principal object that identifies the caller. This method never returns null.
+ */
+ public Principal getCallerPrincipal();
+
+
+ /**
+ * <B>Deprecated.</B> <I>Use boolean isCallerInRole(String roleName) instead.</I>
+ *
+ * <P>Test if the caller has a given role.</P>
+ *
+ * <P>This method is deprecated in EJB 1.1. The enterprise bean should use the
+ * isCallerInRole(String roleName) method instead.</P>
+ *
+ * @param role - The java.security.Identity of the role to be tested.
+ * @return True if the caller has the specified role.
+ */
+ public boolean isCallerInRole(Identity role);
+
+ /**
+ * Tests if the caller has a given role.
+ *
+ * @param roleName - The name of the security role. The role must be one of the security roles that
+ * is defined in the deployment descriptor.
+ * @return True if the caller has the specified role.
+ */
+ public boolean isCallerInRole(String roleName);
+
+ /**
+ * Obtain the transaction demarcation interface. Only enterprise beans with bean-managed transactions
+ * are allowed to to use the UserTransaction interface. As entity beans must always use container-managed
+ * transactions, only session beans with bean-managed transactions are allowed to invoke this method.
+ *
+ * @return The UserTransaction interface that the enterprise bean instance can use for transaction demarcation.
+ * @exception java.lang.IllegalStateException - The Container throws the exception if the instance is not
+ * allowed to use the UserTransaction interface (i.e. the instance is of a bean with container-managed
+ * transactions).
+ */
+ public UserTransaction getUserTransaction() throws IllegalStateException;
+
+ /**
+ * Mark the current transaction for rollback. The transaction will become permanently marked for rollback.
+ * A transaction marked for rollback can never commit. Only enterprise beans with container-managed
+ * transactions are allowed to use this method.
+ *
+ * @exception java.lang.IllegalStateException - The Container throws the exception if the instance is not
+ * allowed to use this method (i.e. the instance is of a bean with bean-managed transactions).
+ */
+ public void setRollbackOnly() throws IllegalStateException;
+
+ /**
+ * Test if the transaction has been marked for rollback only. An enterprise bean instance can use
+ * this operation, for example, to test after an exception has been caught, whether it is fruitless
+ * to continue computation on behalf of the current transaction. Only enterprise beans with
+ * container-managed transactions are allowed to use this method.</P>
+ *
+ * @return True if the current transaction is marked for rollback, false otherwise.
+ * @exception java.lang.IllegalStateException - The Container throws the exception if the instance
+ * is not allowed to use this method (i.e. the instance is of a bean with bean-managed transactions).
+ */
+ public boolean getRollbackOnly() throws IllegalStateException;
+
+ /**
+ * Get access to the EJB Timer Service.
+ *
+ * @exception IllegalStateException The Container throws the exception
+ * if the instance is not allowed to use this method (e.g. if the bean
+ * is a stateful session bean)
+ */
+ public TimerService getTimerService() throws IllegalStateException;
+
+ /**
+ * Lookup a resource within the component's private naming context.
+ *
+ * @param name - Name of the entry (relative to java:comp/env).
+ * @throws IllegalArgumentException - The Container throws the exception if
+ * the given name does not match an entry within the component's environment.
+ */
+ public Object lookup(String name) throws IllegalArgumentException;
+
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,91 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * The EJBException exception is thrown by an enterprise Bean instance to its
+ * container to report that the invoked business method or callback method
+ * could not be completed because of an unexpected error (e.g. the instance
+ * failed to open a database connection).
+ */
+public class EJBException extends RuntimeException
+{
+ /** @since 4.0.2 */
+ private static final long serialVersionUID = 796770993296843510L;
+ private Exception causeException;
+
+ /**
+ * Constructs an EJBException with no detail message.
+ */
+ public EJBException()
+ {
+ super();
+ causeException = null;
+ }
+
+ /**
+ * Constructs an EJBException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public EJBException(String message)
+ {
+ super(message);
+ causeException = null;
+ }
+
+ /**
+ * Constructs an EJBException that embeds the originally thrown exception.
+ *
+ * @param ex - The originally thrown exception.
+ */
+ public EJBException(Exception ex)
+ {
+ super(ex);
+ causeException = ex;
+ }
+
+ /**
+ * Constructs an EJBException with the specified message and the
+ * originally throw exception.
+ *
+ * @param message - The detailed message.
+ * @param ex - The originally thrown exception.
+ */
+ public EJBException(String message, Exception ex)
+ {
+ super(message, ex);
+ causeException = ex;
+ }
+
+ /**
+ * Obtain the exception that caused the EJBException being thrown.
+ *
+ * @return The originally thrown exception.
+ */
+ public Exception getCausedByException()
+ {
+ return causeException;
+ }
+
+}
+
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBHome.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBHome.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBHome.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,78 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.rmi.RemoteException;
+
+/**
+ * <P>The EJBHome interface must be extended by all enterprise Beans' remote home interfaces.
+ * An enterprise Bean's remote home interface defines the methods that allow a remote client to
+ * create, find, and remove EJB objects, as well as home business methods that are not specific to
+ * a bean instance (Session Beans do not have finders and home methods).</P>
+ *
+ * <P>The remote home interface is defined by the enterprise Bean provider and implemented by the
+ * enterprise Bean container.</P>
+ */
+public interface EJBHome extends java.rmi.Remote {
+
+ /**
+ * Remove an EJB object identified by its handle.
+ *
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ * @exception RemoveException - Thrown if the enterprise Bean or the container does not allow
+ * the client to remove the object.
+ */
+ public void remove(Handle handle) throws RemoteException, RemoveException;
+
+ /**
+ * <P>Remove an EJB object identified by its primary key.</P>
+ *
+ * <P>This method can be used only for an entity bean. An attempt to call this method on
+ * a session bean will result in a RemoteException.</P>
+ *
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ * @exception RemoveException - Thrown if the enterprise Bean or the container does not allow
+ * the client to remove the object.
+ */
+ public void remove(Object primaryKey) throws RemoteException, RemoveException;
+
+ /**
+ * <P>Obtain the EJBMetaData interface for the enterprise Bean. The EJBMetaData interface allows
+ * the client to obtain information about the enterprise Bean.</P>
+ *
+ * <P>The information obtainable via the EJBMetaData interface is intended to be used by tools.</P>
+ *
+ * @return The enterprise Bean's EJBMetaData interface.
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ */
+ public EJBMetaData getEJBMetaData() throws RemoteException;
+
+ /**
+ * Obtain a handle for the remote home object. The handle can be used at later time to re-obtain
+ * a reference to the remote home object, possibly in a different Java Virtual Machine.
+ *
+ * @return A handle for the remote home object.
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ */
+ public HomeHandle getHomeHandle() throws RemoteException;
+
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalHome.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalHome.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalHome.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <p>The EJBLocalHome interface must be extended by all enterprise Beans'
+ * local home interfaces. An enterprise Bean's local home interface defines
+ * the methods that allow local clients to create, find, and remove EJB
+ * objects, as well as home business methods that are not specific to a
+ * bean instance (session Beans do not have finders and home business methods).</p>
+ *
+ * <p>The local home interface is defined by the enterprise Bean provider
+ * and implemented by the enterprise Bean container.</p>
+ */
+public interface EJBLocalHome {
+
+ /**
+ * <p>Remove an EJB object identified by its primary key.</p>
+ *
+ * <p>This method can only be used by local clients of an entity bean.
+ * An attempt to call this method on a session bean will result in an EJBException.</p>
+ *
+ * @param primaryKey - The primary key
+ * @exception RemoveException - Thrown if the enterprise Bean or the container does
+ * not allow the client to remove the object.
+ * @exception EJBException - Thrown when the method failed due to a system-level failure.
+ */
+ public void remove(java.lang.Object primaryKey)
+ throws RemoveException, EJBException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalObject.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalObject.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBLocalObject.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,77 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <p>The EJBLocalObject interface must be extended by all enterprise
+ * Beans' local interfaces. An enterprise Bean's local interface provides
+ * the local client view of an EJB object. An enterprise Bean's local interface
+ * defines the business methods callable by local clients.</p>
+ *
+ * <p>The enterprise Bean's local interface is defined by the enterprise Bean
+ * provider and implemented by the enterprise Bean container.</p>
+ */
+public interface EJBLocalObject {
+
+ /**
+ * Obtain the enterprise Bean's local home interface. The local home interface
+ * defines the enterprise Bean's create, finder, remove, and home business methods
+ * that are available to local clients.
+ *
+ * @return A reference to the enterprise Bean's local home interface.
+ * @exception EJBException - Thrown when the method failed due to a system-level failure.
+ */
+ public EJBLocalHome getEJBLocalHome()
+ throws EJBException;
+
+ /**
+ * <p>Obtain the primary key of the EJB local object.</p>
+ *
+ * <p>This method can be called on an entity bean. An attempt to invoke this method
+ * on a session Bean will result in an EJBException.</p>
+ *
+ * @return The EJB local object's primary key.
+ * @exception EJBException - Thrown when the method failed due to a system-level failure.
+ */
+ public java.lang.Object getPrimaryKey()
+ throws EJBException;
+
+ /**
+ * Remove the EJB local object.
+ *
+ * @exception RemoveException - The enterprise Bean or the container does not allow
+ * destruction of the object.
+ * @exception EJBException - Thrown when the method failed due to a system-level failure.
+ */
+ public void remove()
+ throws RemoveException, EJBException;
+
+ /**
+ * Test if a given EJB local object is identical to the invoked EJB local object.
+ *
+ * @param obj - An object to test for identity with the invoked object.
+ * @return True if the given EJB local object is identical to the invoked object, false otherwise.
+ * @exception EJBException - Thrown when the method failed due to a system-level failure.
+ */
+ public boolean isIdentical(EJBLocalObject obj)
+ throws EJBException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBMetaData.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBMetaData.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBMetaData.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,79 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <P>The EJBMetaData interface allows a client to obtain the enterprise
+ * Bean's meta-data information. </P>
+ *
+ * <P>The meta-data is intended for development tools used for building
+ * applications that use deployed enterprise Beans, and for clients using
+ * a scripting language to access the enterprise Bean. </P>
+ *
+ * <P>Note that the EJBMetaData is not a remote interface. The class that
+ * implements this interface (this class is typically generated by container
+ * tools) must be serializable, and must be a valid RMI/IDL value type. </P>
+ */
+public interface EJBMetaData {
+
+ /**
+ * Obtains the home interface of the enterprise Bean.
+ *
+ * @return The home interface of the enterprise Bean.
+ */
+ public EJBHome getEJBHome();
+
+ /**
+ * Obtains the Class object for the enterprise Bean's home interface.
+ *
+ * @return The class object for the enterprise Bean's home interface.
+ */
+ public Class getHomeInterfaceClass();
+
+ /**
+ * Obtains the Class object for the enterprise Bean's remote interface.
+ *
+ * @return The class object for the enterprise Bean's remote interface.
+ */
+ public Class getRemoteInterfaceClass();
+
+ /**
+ * Obtains the Class object for the enterprise Bean's primary key class.
+ *
+ * @return The class object for the enterprise Bean's primary key class.
+ */
+ public Class getPrimaryKeyClass();
+
+ /**
+ * Tests if the type of the enterprise Bean is "session".
+ *
+ * @return True if the type of the enterprise Bean is session bean.
+ */
+ public boolean isSession();
+
+ /**
+ * Tests if the type of the enterprise Bean is "stateless session".
+ *
+ * @return True if the type of the enterprise Bean is stateless session.
+ */
+ public boolean isStatelessSession();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBObject.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBObject.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBObject.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,87 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.rmi.Remote;
+import java.rmi.RemoteException;
+
+/**
+ * <P>The EJBObject interface is extended by all enterprise Bean's remote
+ * interface. An enterprise Bean's remote interface provides the client's
+ * view of an EJB object. An enterprise Bean's remote interface defines
+ * the business methods callable by a client.</P>
+ *
+ * <P>Each enterprise Bean has a remote interface. The remote interface must
+ * extend the javax.ejb.EJBObject interface, and define the enterprise Bean
+ * specific business methods.</P>
+ *
+ * <P>The enterprise Bean's remote interface is defined by the enterprise Bean
+ * provider and implemented by the enterprise Bean container.</P>
+ */
+public interface EJBObject extends Remote {
+
+ /**
+ * Obtain the enterprise Bean's remote home interface. The remote home interface defines the
+ * enterprise Bean's create, finder, remove, and home business methods.
+ *
+ * @return A reference to the enterprise Bean's home interface.
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ */
+ public EJBHome getEJBHome() throws RemoteException;
+
+ /**
+ * <P>Obtain the primary key of the EJB object.</P>
+ *
+ * <P>This method can be called on an entity bean. An attempt to invoke this method on a session
+ * bean will result in RemoteException.</P>
+ *
+ * @return The EJB object's primary key.
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ */
+ public Object getPrimaryKey() throws RemoteException;
+
+ /**
+ * Remove the EJB object.
+ *
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ * @exception RemoveException - The enterprise Bean or the container does not allow destruction of the object.
+ */
+ public void remove() throws RemoteException, RemoveException;
+
+ /**
+ * Obtain a handle for the EJB object. The handle can be used at later time to re-obtain a
+ * reference to the EJB object, possibly in a different Java Virtual Machine.
+ *
+ * @return A handle for the EJB object.
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ */
+ public Handle getHandle() throws RemoteException;
+
+ /**
+ * Tests if a given EJB object is identical to the invoked EJB object.
+ *
+ * @param ejbo - An object to test for identity with the invoked object.
+ * @return True if the given EJB object is identical to the invoked object, false otherwise.
+ * @exception java.rmi.RemoteException - Thrown when the method failed due to a system-level failure.
+ */
+ public boolean isIdentical(EJBObject ejbo) throws RemoteException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRequiredException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRequiredException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRequiredException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * This exception indicates that a request carried a null transaction context,
+ * but the target object requires an activate transaction.
+ *
+ * @version $Revision: 37459 $
+ */
+public class EJBTransactionRequiredException extends EJBException {
+
+ /**
+ * Constructs a TransactionRequiredLocalException with no detail message.
+ */
+ public EJBTransactionRequiredException() {
+ super();
+ }
+
+ /**
+ * Constructs a TransactionRequiredLocalException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public EJBTransactionRequiredException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRolledbackException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRolledbackException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBTransactionRolledbackException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,60 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * This exception indicates that the transaction associated with processing
+ * of the request has been rolled back, or marked to roll back. Thus the
+ * requested operation either could not be performed or was not performed
+ * because further computation on behalf of the transaction would be fruitless.
+ *
+ * @version $Revision: 62510 $
+ */
+public class EJBTransactionRolledbackException extends EJBException {
+
+ /**
+ * Constructs a TransactionRolledbackLocalException with no detail message.
+ */
+ public EJBTransactionRolledbackException() {
+ super();
+ }
+
+ /**
+ * Constructs a TransactionRolledbackLocalException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public EJBTransactionRolledbackException(String message) {
+ super(message);
+ }
+
+ /**
+ * Constructs a TransactionRolledbackLocalException with the specified detail
+ * message and a nested exception.
+ *
+ * @param message - The detailed message.
+ * @param ex - The originally thrown exception.
+ */
+ public EJBTransactionRolledbackException(String message,Exception ex) {
+ super(message,ex);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBs.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBs.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EJBs.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,41 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import javax.ejb.EJB;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The EJBs annotation is used to specify multiple EJB 3.0 session bean
+ * references on a bean class.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 45433 $
+ */
+ at Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME)
+public @interface EJBs
+{
+ EJB[] value();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EnterpriseBean.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EnterpriseBean.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EnterpriseBean.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,29 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * The EnterpriseBean interface must be implemented by every enterprise Bean class.
+ * It is a common superinterface for the SessionBean, EntityBean and MessageDrivenBean interfaces.
+ */
+public interface EnterpriseBean extends java.io.Serializable {
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityBean.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityBean.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityBean.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,148 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.rmi.RemoteException;
+
+/**
+ * The EntityBean interface is implemented by every entity enterprise
+ * Bean class. The container uses the EntityBean methods to notify the
+ * enterprise Bean instances of the instance's life cycle events.
+ */
+public interface EntityBean extends EnterpriseBean {
+
+ /**
+ * <P>Set the associated entity context. The container invokes this method on an instance
+ * after the instance has been created.</P>
+ *
+ * <P>This method is called in an unspecified transaction context.</P>
+ *
+ * @param ctx - An EntityContext interface for the instance. The instance should store the
+ * reference to the context in an instance variable.
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void setEntityContext(EntityContext ctx) throws EJBException, RemoteException;
+
+ /**
+ * <P>Unset the associated entity context. The container calls this method before removing the instance.</P>
+ *
+ * <P>This is the last method that the container invokes on the instance. The Java garbage collector
+ * will eventually invoke the finalize() method on the instance.</P>
+ *
+ * <P>This method is called in an unspecified transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void unsetEntityContext() throws EJBException, RemoteException;
+
+ /**
+ * <P>A container invokes this method before it removes the EJB object that is currently associated
+ * with the instance. This method is invoked when a client invokes a remove operation on the enterprise
+ * Bean's home interface or the EJB object's remote interface. This method transitions the instance from
+ * the ready state to the pool of available instances.</P>
+ *
+ * <P>This method is called in the transaction context of the remove operation.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbRemove() throws RemoveException, EJBException, RemoteException;
+
+ /**
+ * <P>A container invokes this method when the instance is taken out of the pool of available
+ * instances to become associated with a specific EJB object. This method transitions the instance
+ * to the ready state.</P>
+ *
+ * <P>This method executes in an unspecified transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbActivate() throws EJBException, RemoteException;
+
+ /**
+ * <P>A container invokes this method on an instance before the instance becomes disassociated with
+ * a specific EJB object. After this method completes, the container will place the instance into the
+ * pool of available instances.</P>
+ *
+ * <P>This method executes in an unspecified transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbPassivate() throws EJBException, RemoteException;
+
+ /**
+ * <P>A container invokes this method to instruct the instance to synchronize its state by loading
+ * it state from the underlying database.</P>
+ *
+ * <P>This method always executes in the transaction context determined by the value of the transaction
+ * attribute in the deployment descriptor.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbLoad() throws EJBException, RemoteException;
+
+ /**
+ * <P>A container invokes this method to instruct the instance to synchronize its state by storing it to
+ * the underlying database.</P>
+ *
+ * <P>This method always executes in the transaction context determined by the value of the transaction
+ * attribute in the deployment descriptor.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbStore() throws EJBException, RemoteException;
+
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityContext.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityContext.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/EntityContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,86 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <P>The EntityContext interface provides an instance with access to
+ * the container-provided runtime context of an entity enterprise Bean
+ * instance. The container passes the EntityContext interface to an entity
+ * enterprise Bean instance after the instance has been created.</P>
+ *
+ * <P>The EntityContext interface remains associated with the instance for the
+ * lifetime of the instance. Note that the information that the instance
+ * obtains using the EntityContext interface (such as the result of the
+ * getPrimaryKey() method) may change, as the container assigns the instance
+ * to different EJB objects during the instance's life cycle.</P>
+ */
+public interface EntityContext extends EJBContext {
+
+ /**
+ * <P>Obtain a reference to the EJB local object that is currently associated with the instance.</P>
+ *
+ * <P>An instance of an entity enterprise Bean can call this method only when the instance is associated
+ * with an EJB local object identity, i.e. in the ejbActivate, ejbPassivate, ejbPostCreate, ejbRemove, ejbLoad,
+ * ejbStore, and business methods.</P>
+ *
+ * <P>An instance can use this method, for example, when it wants to pass a reference to itself in a
+ * method argument or result.</P>
+ *
+ * @return The EJB local object currently associated with the instance.
+ * @exception java.lang.IllegalStateException - if the instance invokes this method while the instance
+ * is in a state that does not allow the instance to invoke this method, or if the instance does not have
+ * a local interface.
+ */
+ public EJBLocalObject getEJBLocalObject() throws IllegalStateException;
+
+ /**
+ * <P>Obtain a reference to the EJB object that is currently associated with the instance.</P>
+ *
+ * <P>An instance of an entity enterprise Bean can call this method only when the instance is associated
+ * with an EJB object identity, i.e. in the ejbActivate, ejbPassivate, ejbPostCreate, ejbRemove, ejbLoad,
+ * ejbStore, and business methods.</P>
+ *
+ * <P>An instance can use this method, for example, when it wants to pass a reference to itself in a method
+ * argument or result.</P>
+ *
+ * @return The EJB object currently associated with the instance.
+ * @exception java.lang.IllegalStateException - Thrown if the instance invokes this method while the instance
+ * is in a state that does not allow the instance to invoke this method, or if the instance does not have a
+ * remote interface.
+ */
+ public EJBObject getEJBObject() throws IllegalStateException;
+
+ /**
+ * <P>Obtain the primary key of the EJB object that is currently associated with this instance.</P>
+ *
+ * <P>An instance of an entity enterprise Bean can call this method only when the instance is associated
+ * with an EJB object identity, i.e. in the ejbActivate, ejbPassivate, ejbPostCreate, ejbRemove, ejbLoad,
+ * ejbStore, and business methods.</P>
+ *
+ * <P><B>Note:</B> The result of this method is that same as the result of getEJBObject().getPrimaryKey().</P>
+ *
+ * @return The primary key currently associated with the instance.
+ * @exception java.lang.IllegalStateException - Thrown if the instance invokes this method while the
+ * instance is in a state that does not allow the instance to invoke this method.
+ */
+ public Object getPrimaryKey() throws IllegalStateException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/FinderException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/FinderException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/FinderException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <P>The FinderException exception must be included in the throws clause
+ * of every findMETHOD(...) method of an entity Bean's home interface.</P>
+ *
+ * <P>The exception is used as a standard application-level exception to,
+ * report a failure to find the requested EJB object(s).</P>
+ */
+public class FinderException extends Exception {
+
+ /**
+ * Constructs an FinderException with no detail message.
+ */
+ public FinderException() {
+ super();
+ }
+
+ /**
+ * Constructs an FinderException with the specified detail message.
+ *
+ * @param message The detailed message.
+ */
+ public FinderException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Handle.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Handle.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Handle.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,41 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.rmi.RemoteException;
+
+/**
+ * The Handle interface is implemented by all EJB object handles. A handle
+ * is an abstraction of a network reference to an EJB object. A handle is
+ * intended to be used as a "robust" persistent reference to an EJB object.
+ */
+public interface Handle extends java.io.Serializable {
+
+ /**
+ * Obtains the EJB object reference represented by this handle.
+ *
+ * @return The EJB object reference represented by this handle.
+ * @exception java.rmi.RemoteException - The EJB object could not be obtained because of a
+ * system-level failure.
+ */
+ public EJBObject getEJBObject() throws RemoteException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/HomeHandle.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/HomeHandle.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/HomeHandle.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.rmi.RemoteException;
+
+/**
+ * The HomeHandle interface is implemented by all home object handles. A
+ * handle is an abstraction of a network reference to a home object. A
+ * handle is intended to be used as a "robust" persistent reference to a
+ * home object.
+ */
+public interface HomeHandle extends java.io.Serializable {
+
+ /**
+ * Obtains the home object represented by this handle.
+ *
+ * @return The home object represented by this handle.
+ * @exception java.rmi.RemoteException - The home object could not be obtained because of a
+ * system-level failure.
+ */
+ public EJBHome getEJBHome() throws RemoteException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Init.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Init.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Init.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation to mark a method that will initialize a stateful session
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 62510 $
+ */
+ at Target({ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME)
+public @interface Init{
+ String value() default "";
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Local.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Local.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Local.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,40 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Bean class annotation that specifies remote interfaces of the Session bean.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 37459 $
+ */
+ at Target({ElementType.TYPE})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface Local
+{
+ Class[] value() default {};
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/LocalHome.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/LocalHome.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/LocalHome.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation for specifying the local home interface for a bean
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 39861 $
+ */
+ at Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
+public @interface LocalHome
+{
+ Class value();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDriven.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDriven.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDriven.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The MessageDriven annotation specifies that the enterprise bean is a
+ * message-driven bean. This annotation is applied to the bean class.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 42322 $
+ */
+ at Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
+ public @interface MessageDriven
+{
+ String name() default "";
+ Class messageListenerInterface() default Object.class;
+ ActivationConfigProperty[] activationConfig() default {};
+ String mappedName() default "";
+ String description() default "";
+}
Property changes on: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDriven.java
___________________________________________________________________
Name: svn:executable
+ *
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenBean.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenBean.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenBean.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,54 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * The MessageDrivenBean interface is implemented by every message driven
+ * enterprise bean class. The container uses the MessageDrivenBean methods
+ * to notify the enterprise bean instances of the instance's life cycle events.
+ */
+public interface MessageDrivenBean extends EnterpriseBean {
+
+ /**
+ * <P>Set the associated message-driven context. The container calls this method after the
+ * instance creation.</P>
+ *
+ * <P>The enterprise Bean instance should store the reference to the context object in an instance
+ * variable.</P>
+ *
+ * <P>This method is called with no transaction context.</P>
+ *
+ * @param ctx - A MessageDrivenContext interface for the instance.
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ */
+ public void setMessageDrivenContext( MessageDrivenContext ctx ) throws EJBException;
+
+ /**
+ * <P>A container invokes this method before it ends the life of the message-driven object.
+ * This happens when a container decides to terminate the message-driven object.</P>
+ *
+ * <P>This method is called with no transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ */
+ public void ejbRemove() throws EJBException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenContext.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenContext.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/MessageDrivenContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <P>The MessageDrivenContext interface provides an instance with access
+ * to the container-provided runtime context of a message-driven enterprise
+ * bean instance. The container passes the MessageDrivenContext interface
+ * to an entity enterprise Bean instance after the instance has been
+ * created.</P>
+ *
+ * <P>The MessageDrivenContext interface remains associated with the
+ * instance for the lifetime of the instance.
+ */
+
+public interface MessageDrivenContext extends EJBContext {
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEJBException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEJBException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEJBException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,58 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * A NoSuchEJBException is thrown if an attempt is made to invoke
+ * a method on an object that no longer exists.
+ * @version $Revision: 57789 $
+ */
+public class NoSuchEJBException extends EJBException {
+ private static final long serialVersionUID = -4861625171310593950L;
+
+ /**
+ * Constructs a NoSuchEJBException with no detail message.
+ */
+ public NoSuchEJBException() {
+ super();
+ }
+
+ /**
+ * Constructs a NoSuchEJBException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public NoSuchEJBException(String message) {
+ super(message);
+ }
+
+ /**
+ * Constructs a NoSuchEJBException with the specified detail message and a
+ * nested exception.
+ *
+ * @param message - The detailed message.
+ * @param ex - The originally thrown exception.
+ */
+ public NoSuchEJBException(String message, Exception ex) {
+ super(message,ex);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEntityException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEntityException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchEntityException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,60 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <p>The NoSuchEntityException exception is thrown by an Entity Bean
+ * instance to its container to report that the invoked business method
+ * or callback method could not be completed because of the underlying
+ * entity was removed from the database.</p>
+ *
+ * <p>This exception may be thrown by the bean class methods that implement
+ * the business methods defined in the bean's component interface; and by the
+ * ejbLoad and ejbStore methods.</p>
+ */
+public class NoSuchEntityException extends EJBException {
+
+ /**
+ * Constructs a NoSuchEntityException with no detail message.
+ */
+ public NoSuchEntityException() {
+ super();
+ }
+
+ /**
+ * Constructs a NoSuchEntityException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public NoSuchEntityException(String message) {
+ super(message);
+ }
+
+ /**
+ * Constructs a NoSuchEntityException that embeds the originally thrown exception.
+ *
+ * @param ex - The originally thrown exception.
+ */
+ public NoSuchEntityException(Exception ex) {
+ super(ex);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchObjectLocalException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchObjectLocalException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/NoSuchObjectLocalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,56 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * A NoSuchObjectLocalException is thrown if an attempt is made to invoke
+ * a method on an object that no longer exists.
+ */
+public class NoSuchObjectLocalException extends EJBException {
+
+ /**
+ * Constructs a NoSuchObjectLocalException with no detail message.
+ */
+ public NoSuchObjectLocalException() {
+ super();
+ }
+
+ /**
+ * Constructs a NoSuchObjectLocalException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public NoSuchObjectLocalException(String message) {
+ super(message);
+ }
+
+ /**
+ * Constructs a NoSuchObjectLocalException with the specified detail message and a
+ * nested exception.
+ *
+ * @param message - The detailed message.
+ * @param ex - The originally thrown exception.
+ */
+ public NoSuchObjectLocalException(String message, Exception ex) {
+ super(message,ex);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ObjectNotFoundException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ObjectNotFoundException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/ObjectNotFoundException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * <p>The ObjectNotFoundException exception is thrown by a finder method
+ * to indicate that the specified EJB object does not exist.</p>
+ *
+ * <p>Only the finder methods that are declared to return a single EJB object
+ * use this exception. This exception should not be thrown by finder methods
+ * that return a collection of EJB objects (they should return an empty collection
+ * instead).</p>
+ */
+public class ObjectNotFoundException extends FinderException {
+
+ /**
+ * Constructs an ObjectNotFoundException with no detail message.
+ */
+ public ObjectNotFoundException() {
+ super();
+ }
+
+ /**
+ * Constructs an ObjectNotFoundException with the specified detail message.
+ *
+ * @param message - The detailed message.
+ */
+ public ObjectNotFoundException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PostActivate.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PostActivate.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PostActivate.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * An ejbActivate type of callback marker. The method may be called ejbActivate,
+ * or any signature matching:
+ * public void <METHOD>()
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 37459 $
+ */
+ at Target({METHOD}) @Retention(RUNTIME)
+public @interface PostActivate
+{
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PrePassivate.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PrePassivate.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/PrePassivate.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,40 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * An ejbPassivate type of callback marker. The method may be called ejbPassivate,
+ * or any signature matching:
+ * public void <METHOD>()
+ *
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 37459 $
+ */
+ at Target({METHOD}) @Retention(RUNTIME)
+public @interface PrePassivate
+{
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remote.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remote.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remote.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,40 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Bean class annotation that specifies remote interfaces of the Session bean.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 37459 $
+ */
+ at Target({ElementType.TYPE})
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface Remote
+{
+ Class[] value() default {};
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoteHome.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoteHome.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoteHome.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation for specifying the remote home interface for a bean
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 39861 $
+ */
+ at Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
+public @interface RemoteHome
+{
+ Class value();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remove.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remove.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Remove.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation to mark a method that will remove a stateful session on completion
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 37459 $
+ */
+ at Target({ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME)
+public @interface Remove
+{
+ boolean retainIfException() default false;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoveException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoveException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/RemoveException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * The RemoveException exception is thrown at an attempt to remove an EJB
+ * object when the enterprise Bean or the container does not allow the EJB
+ * object to be removed.
+ */
+public class RemoveException extends Exception {
+
+ /**
+ * Constructs an RemoveException with no detail message.
+ */
+ public RemoveException() {
+ super();
+ }
+
+ /**
+ * Constructs an RemoveException with the specified detail message.
+ *
+ * @param message - The detailed message.
+ */
+ public RemoveException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionBean.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionBean.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionBean.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,98 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.rmi.RemoteException;
+
+/**
+ * The SessionBean interface is implemented by every session enterprise
+ * Bean class. The container uses the SessionBean methods to notify the
+ * enterprise Bean instances of the instance's life cycle events.
+ */
+public interface SessionBean extends EnterpriseBean {
+
+ /**
+ * <P>Set the associated session context. The container calls this method after the instance creation.</P>
+ *
+ * <P>The enterprise Bean instance should store the reference to the context object in an instance variable.</P>
+ *
+ * <P>This method is called with no transaction context.</P>
+ *
+ * @param ctx - A SessionContext interface for the instance.
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void setSessionContext(SessionContext ctx) throws EJBException, RemoteException;
+
+ /**
+ * <P>A container invokes this method before it ends the life of the session object. This happens
+ * as a result of a client's invoking a remove operation, or when a container decides to terminate
+ * the session object after a timeout.</P>
+ *
+ * <P>This method is called with no transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbRemove() throws EJBException, RemoteException;
+
+ /**
+ * <P>The activate method is called when the instance is activated from its "passive" state.
+ * The instance should acquire any resource that it has released earlier in the ejbPassivate() method.</P>
+ *
+ * <P>This method is called with no transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbActivate() throws EJBException, RemoteException;
+
+ /**
+ * <P>The passivate method is called before the instance enters the "passive" state. The instance should
+ * release any resources that it can re-acquire later in the ejbActivate() method.</P>
+ *
+ * <P>After the passivate method completes, the instance must be in a state that allows the container to
+ * use the Java Serialization protocol to externalize and store away the instance's state.</P>
+ *
+ * <P>This method is called with no transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide
+ * backward compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans
+ * written for the EJB 1.1 specification should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB2.0 and higher specifications must throw the javax.ejb.EJBException
+ * instead of this exception.
+ */
+ public void ejbPassivate() throws EJBException, RemoteException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionContext.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionContext.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,98 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import javax.xml.rpc.handler.MessageContext;
+
+/**
+ * The SessionContext interface provides access to the runtime session
+ * context that the container provides for a session enterprise Bean
+ * instance. The container passes the SessionContext interface to an
+ * instance after the instance has been created. The session context
+ * remains associated with the instance for the lifetime of the instance.
+ * @version $Revision: 61191 $
+ */
+public interface SessionContext extends EJBContext
+{
+
+ /**
+ * <P>Obtain a reference to the EJB local object that is currently associated with the instance.</P>
+ *
+ * <P>An instance of an entity enterprise Bean can call this method only when the instance is associated
+ * with an EJB local object identity, i.e. in the ejbActivate, ejbPassivate, ejbPostCreate, ejbRemove, ejbLoad,
+ * ejbStore, and business methods.</P>
+ *
+ * <P>An instance can use this method, for example, when it wants to pass a reference to itself in a method
+ * argument or result.</P>
+ *
+ * @return The EJB local object currently associated with the instance.
+ * @exception java.lang.IllegalStateException - Thrown if the instance invokes this method while the instance
+ * is in a state that does not allow the instance to invoke this method, or if the instance does not have a
+ * local interface.
+ */
+ public EJBLocalObject getEJBLocalObject() throws IllegalStateException;
+
+ /**
+ * <P>Obtain a reference to the EJB object that is currently associated with the instance.</P>
+ *
+ * <P>An instance of a session enterprise Bean can call this method at anytime between the ejbCreate()
+ * and ejbRemove() methods, including from within the ejbCreate() and ejbRemove() methods.</P>
+ *
+ * <P>An instance can use this method, for example, when it wants to pass a reference to itself in a method
+ * argument or result.</P>
+ *
+ * @return The EJB object currently associated with the instance.
+ * @exception java.lang.IllegalStateException - Thrown if the instance invokes this method while the instance
+ * is in a state that does not allow the instance to invoke this method, or if the instance does not have a
+ * remote interface.
+ */
+ public EJBObject getEJBObject() throws IllegalStateException;
+
+ /** Obtain a reference to the JAX-RPC MessageContext. An instance of a
+ * stateless session bean can call this method from any business method
+ * invoked through its web service endpoint interface.
+ *
+ * @return The MessageContext for this web service invocation.
+ * @throws IllegalStateException - Thrown if this method is invoked while
+ * the instance is in a state that does not allow access to this method.
+ */
+ public MessageContext getMessageContext() throws IllegalStateException;
+
+ /** Returns the session bean�s business interface. Only session beans with an EJB 3.0 business interface
+ * can call this method.
+ *
+ * @return The business interface associated with the instance.
+ * @throws IllegalStateException - Thrown if this method is invoked while
+ * the instance is in a state that does not allow access to this method.
+ */
+ public <T> T getBusinessObject(Class<T> businessInterface) throws IllegalStateException;
+
+ /** Returns the session bean business interface through which the bean was invoked.
+ *
+ * @return The business interface through which the bean was invoked.
+ * @throws IllegalStateException - Thrown if this method is invoked while
+ * the instance is in a state that does not allow access to this method.
+ */
+ public Class getInvokedBusinessInterface() throws IllegalStateException;
+
+
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionSynchronization.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionSynchronization.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/SessionSynchronization.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,86 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.rmi.RemoteException;
+
+/**
+ * <P>The SessionSynchronization interface allows a session Bean instance
+ * to be notified by its container of transaction boundaries.</P>
+ *
+ * <P>An session Bean class is not required to implement this interface. A
+ * session Bean class should implement this interface only if it wishes to
+ * synchronize its state with the transactions.</P>
+ */
+public interface SessionSynchronization {
+
+ /**
+ * <P>The afterBegin method notifies a session Bean instance that a new transaction has started, and that
+ * the subsequent business methods on the instance will be invoked in the context of the transaction.</P>
+ *
+ * <P>The instance can use this method, for example, to read data from a database and cache the data in
+ * the instance fields.</P>
+ *
+ * <P>This method executes in the proper transaction context.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide backward
+ * compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans written for the
+ * EJB 1.1 and higher specifications should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB 2.0 and higher specifications must not throw the java.rmi.RemoteException.
+ */
+ public void afterBegin() throws EJBException, RemoteException;
+
+ /**
+ * <P>The beforeCompletion method notifies a session Bean instance that a transaction is about to be committed.
+ * The instance can use this method, for example, to write any cached data to a database.</P>
+ *
+ * <P>This method executes in the proper transaction context.</P>
+ *
+ * <P><B>Note:</B> The instance may still cause the container to rollback the transaction by invoking the
+ * setRollbackOnly() method on the instance context, or by throwing an exception.</P>
+ *
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide backward
+ * compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans written for the
+ * EJB 1.1 and higher specifications should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB 2.0 and higher specifications must not throw the java.rmi.RemoteException.
+ */
+ public void beforeCompletion() throws EJBException, RemoteException;
+
+ /**
+ * <P>The afterCompletion method notifies a session Bean instance that a transaction commit protocol has
+ * completed, and tells the instance whether the transaction has been committed or rolled back.</P>
+ *
+ * <P>This method executes with no transaction context.</P>
+ *
+ * <P>This method executes with no transaction context.</P>
+ *
+ * @param committed - True if the transaction has been committed, false if is has been rolled back.
+ * @exception EJBException - Thrown by the method to indicate a failure caused by a system-level error.
+ * @exception java.rmi.RemoteException - This exception is defined in the method signature to provide backward
+ * compatibility for enterprise beans written for the EJB 1.0 specification. Enterprise beans written for the
+ * EJB 1.1 and higher specifications should throw the javax.ejb.EJBException instead of this exception.
+ * Enterprise beans written for the EJB 2.0 and higher specifications must not throw the java.rmi.RemoteException.
+ */
+ public void afterCompletion(boolean committed) throws EJBException, RemoteException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateful.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateful.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateful.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * A stateful session bean must be annotated with the Stateful annotation or
+ * denoted in the deployment descriptor as a stateful session bean. If other
+ * annotations are applied to the bean class or its members, the Stateful
+ * annotation must be used. The bean class does not implement the
+ * javax.ejb.SessionBean interface.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 42322 $
+ */
+ at Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
+ public @interface Stateful
+{
+ String name() default "";
+ String mappedName() default "";
+ String description() default "";
+}
+
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateless.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateless.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Stateless.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,45 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * A stateless session bean must be annotated with the Stateless annotation or
+ * denoted in the deployment descriptor as a stateless session bean. If other
+ * annotations are applied to the bean class or its members, the Stateless
+ * annotation must be used. The bean class does not implement the
+ * javax.ejb.SessionBean interface.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 42322 $
+ */
+ at Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
+ public @interface Stateless
+{
+ String name() default "";
+ String mappedName() default "";
+ String description() default "";
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimedObject.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimedObject.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimedObject.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * The TimedObject interface contains the callback method that is used
+ * to deliver timer expiration notifications. It is implemented by an
+ * entity bean or stateless session bean or message-driven bean class.
+ **/
+public interface TimedObject {
+
+ /**
+ * Invoked by the EJB container upon timer expiration.
+ *
+ * @param timer Timer whose expiration caused this notification
+ **/
+ public void ejbTimeout( Timer timer );
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timeout.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timeout.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timeout.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * Marks an ejbTimeout callback method:
+ * public void <METHOD>(Timer timer)
+ *
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 37459 $
+ */
+ at Target({METHOD}) @Retention(RUNTIME)
+public @interface Timeout
+{
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timer.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timer.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/Timer.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,112 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * The Timer interface contains information about a timer that was created
+ * through the EJB Timer Service
+ **/
+public interface Timer {
+
+ /**
+ * Cause the timer and all its associated expiration notifications to be cancelled.
+ *
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws NoSuchObjectLocalException If invoked on a timer that has expired or has been cancelled.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public void cancel()
+ throws
+ IllegalStateException,
+ NoSuchObjectLocalException,
+ EJBException;
+
+ /**
+ * Get the number of milliseconds that will elapse before the next scheduled timer expiration.
+ *
+ * @return Number of milliseconds that will elapse before the next scheduled timer expiration.
+ *
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws NoSuchObjectLocalException If invoked on a timer that has expired or has been cancelled.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public long getTimeRemaining()
+ throws
+ IllegalStateException,
+ NoSuchObjectLocalException,
+ EJBException;
+
+ /**
+ * Get the point in time at which the next timer expiration is scheduled to occur.
+ *
+ * @return Get the point in time at which the next timer expiration is scheduled to occur.
+ *
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws NoSuchObjectLocalException If invoked on a timer that has expired or has been cancelled.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Date getNextTimeout()
+ throws
+ IllegalStateException,
+ NoSuchObjectLocalException,
+ EJBException;
+
+ /**
+ * Get the information associated with the timer at the time of creation.
+ *
+ * @return The Serializable object that was passed in at timer creation, or null if the
+ * info argument passed in at timer creation was null.
+ *
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws NoSuchObjectLocalException If invoked on a timer that has expired or has been cancelled.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Serializable getInfo()
+ throws
+ IllegalStateException,
+ NoSuchObjectLocalException,
+ EJBException;
+
+ /**
+ * Get a serializable handle to the timer. This handle can be used at a later time to
+ * re-obtain the timer reference.
+ *
+ * @return Handle of the Timer
+ *
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws NoSuchObjectLocalException If invoked on a timer that has expired or has been cancelled.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public TimerHandle getHandle()
+ throws
+ IllegalStateException,
+ NoSuchObjectLocalException,
+ EJBException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerHandle.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerHandle.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerHandle.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.io.Serializable;
+
+/**
+ * The TimerHandle interface is implemented by all EJB timer handles.
+ **/
+public interface TimerHandle
+ extends Serializable
+{
+
+ /**
+ * Obtain a reference to the timer represented by this handle.
+ *
+ * @return Timer which this handle represents
+ *
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws NoSuchObjectLocalException If invoked on a timer that has expired or has been cancelled.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Timer getTimer()
+ throws
+ IllegalStateException,
+ NoSuchObjectLocalException,
+ EJBException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerService.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerService.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TimerService.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,145 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.Date;
+
+/**
+ * The TimerService interface provides enterprise bean components with access to the
+ * container-provided Timer Service. The EJB Timer Service allows entity beans, stateless
+ * session beans, and message-driven beans to be registered for timer callback events at
+ * a specified time, after a specified elapsed time, or after a specified interval.
+ **/
+public interface TimerService {
+
+ /**
+ * Create a single-action timer that expires after a specified duration.
+ *
+ * @param duration The number of milliseconds that must elapse before the timer expires.
+ * @param info Application information to be delivered along with the timer expiration
+ * notification. This can be null.
+ *
+ * @return The newly created Timer.
+ *
+ * @throws IllegalArgumentException If duration is negative
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Timer createTimer( long duration, Serializable info )
+ throws
+ IllegalArgumentException,
+ IllegalStateException,
+ EJBException;
+
+ /**
+ * Create an interval timer whose first expiration occurs after a specified duration,
+ * and whose subsequent expirations occur after a specified interval.
+ *
+ * @param initialDuration The number of milliseconds that must elapse before the first
+ * timer expiration notification.
+ * @param intervalDuration The number of milliseconds that must elapse between timer
+ * expiration notifications. Expiration notifications are
+ * scheduled relative to the time of the first expiration. If
+ * expiration is delayed(e.g. due to the interleaving of other
+ * method calls on the bean) two or more expiration notifications
+ * may occur in close succession to "catch up".
+ * @param info Application information to be delivered along with the timer expiration
+ * notification. This can be null.
+ *
+ * @return The newly created Timer.
+ *
+ * @throws IllegalArgumentException If initialDuration is negative, or intervalDuration
+ * is negative.
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Timer createTimer( long initialDuration, long intervalDuration, Serializable info )
+ throws
+ IllegalArgumentException,
+ IllegalStateException,
+ EJBException;
+
+ /**
+ * Create a single-action timer that expires at a given point in time.
+ *
+ * @param expiration The point in time at which the timer must expire.
+ * @param info Application information to be delivered along with the timer expiration
+ * notification. This can be null.
+ *
+ * @return The newly created Timer.
+ *
+ * @throws IllegalArgumentException If expiration is null, or expiration.getTime() is negative.
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Timer createTimer( Date expiration, Serializable info )
+ throws
+ IllegalArgumentException,
+ IllegalStateException,
+ EJBException;
+
+ /**
+ * Create an interval timer whose first expiration occurs at a given point in time and
+ * whose subsequent expirations occur after a specified interval.
+ *
+ * @param initialExpiration The point in time at which the first timer expiration must occur.
+ * @param intervalDuration The number of milliseconds that must elapse between timer
+ * expiration notifications. Expiration notifications are
+ * scheduled relative to the time of the first expiration. If
+ * expiration is delayed(e.g. due to the interleaving of other
+ * method calls on the bean) two or more expiration notifications
+ * may occur in close succession to "catch up".
+ * @param info Application information to be delivered along with the timer expiration
+ * notification. This can be null.
+ *
+ * @return The newly created Timer.
+ *
+ * @throws IllegalArgumentException If initialExpiration is null, or initialExpiration.getTime()
+ * is negative, or intervalDuration is negative.
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Timer createTimer( Date initialExpiration, long intervalDuration, Serializable info )
+ throws
+ IllegalArgumentException,
+ IllegalStateException,
+ EJBException;
+
+ /**
+ * Get all the active timers associated with this bean.
+ *
+ * @return A collection of javax.ejb.Timer objects.
+ * @throws IllegalStateException If this method is invoked while the instance is in
+ * a state that does not allow access to this method.
+ * @throws EJBException If this method could not complete due to a system-level failure.
+ **/
+ public Collection getTimers()
+ throws
+ IllegalStateException,
+ EJBException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttribute.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttribute.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttribute.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,41 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The TransactionManagement annotation specifies the transaction management
+ * demarcation type of a session bean or message-driven bean.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 37459 $
+ */
+ at Target({ElementType.METHOD, ElementType.TYPE})
+ @Retention(RetentionPolicy.RUNTIME)
+ public @interface TransactionAttribute
+{
+ TransactionAttributeType value() default TransactionAttributeType.REQUIRED;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttributeType.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttributeType.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttributeType.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * Enum for the types of TransactionAttributes
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 37459 $
+ */
+public enum TransactionAttributeType
+{
+ MANDATORY,
+ REQUIRED,
+ REQUIRES_NEW,
+ SUPPORTS,
+ NOT_SUPPORTED,
+ NEVER
+}
Property changes on: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionAttributeType.java
___________________________________________________________________
Name: svn:executable
+ *
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagement.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagement.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagement.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * The TransactionManagement annotation specifies the transaction management
+ * demarcation type of a session bean or message-driven bean. If the
+ * TransactionManagement annotation is not specified for a session bean or
+ * message-driven bean, the bean is assume to have container managed transaction
+ * demarcation.
+ *
+ * @author <a href="mailto:bdecoste at jboss.com">William DeCoste</a>
+ * @version $Revision: 37459 $
+ */
+ at Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
+ public @interface TransactionManagement
+{
+ TransactionManagementType value() default TransactionManagementType.CONTAINER;
+}
Property changes on: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagement.java
___________________________________________________________________
Name: svn:executable
+ *
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagementType.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagementType.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagementType.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,36 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+
+
+/**
+ * Enums for the TransactionManagement types
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 37459 $
+ */
+public enum TransactionManagementType
+{
+ CONTAINER,
+ BEAN
+}
Property changes on: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionManagementType.java
___________________________________________________________________
Name: svn:executable
+ *
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRequiredLocalException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRequiredLocalException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRequiredLocalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,45 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * This exception indicates that a request carried a null transaction context,
+ * but the target object requires an activate transaction.
+ */
+public class TransactionRequiredLocalException extends EJBException {
+
+ /**
+ * Constructs a TransactionRequiredLocalException with no detail message.
+ */
+ public TransactionRequiredLocalException() {
+ super();
+ }
+
+ /**
+ * Constructs a TransactionRequiredLocalException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public TransactionRequiredLocalException(String message) {
+ super(message);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRolledbackLocalException.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRolledbackLocalException.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/TransactionRolledbackLocalException.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,58 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb;
+
+/**
+ * This exception indicates that the transaction associated with processing
+ * of the request has been rolled back, or marked to roll back. Thus the
+ * requested operation either could not be performed or was not performed
+ * because further computation on behalf of the transaction would be fruitless.
+ */
+public class TransactionRolledbackLocalException extends EJBException {
+
+ /**
+ * Constructs a TransactionRolledbackLocalException with no detail message.
+ */
+ public TransactionRolledbackLocalException() {
+ super();
+ }
+
+ /**
+ * Constructs a TransactionRolledbackLocalException with the specified detailed message.
+ *
+ * @param message - The detailed message.
+ */
+ public TransactionRolledbackLocalException(String message) {
+ super(message);
+ }
+
+ /**
+ * Constructs a TransactionRolledbackLocalException with the specified detail
+ * message and a nested exception.
+ *
+ * @param message - The detailed message.
+ * @param ex - The originally thrown exception.
+ */
+ public TransactionRolledbackLocalException(String message,Exception ex) {
+ super(message,ex);
+ }
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/spi/HandleDelegate.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/spi/HandleDelegate.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/ejb/spi/HandleDelegate.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,113 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.ejb.spi;
+
+import javax.ejb.EJBHome;
+import javax.ejb.EJBObject;
+
+/**
+ * <P>The HandleDelegate interface is implemented by the EJB container.
+ * It is used by portable implementations of javax.ejb.Handle and
+ * javax.ejb.HomeHandle. It is not used by EJB components or by client components.
+ * It provides methods to serialize and deserialize EJBObject and EJBHome
+ * references to streams.</P>
+ *
+ * <P>The HandleDelegate object is obtained by JNDI lookup at the reserved name
+ * "java:comp/HandleDelegate".</P>
+ */
+public interface HandleDelegate {
+
+ /**
+ * <P>Serialize the EJBObject reference corresponding to a Handle.</P>
+ *
+ * <P>This method is called from the writeObject method of portable
+ * Handle implementation classes. The ostream object is the same
+ * object that was passed in to the Handle class's writeObject.</P>
+ *
+ * @param ejbObject - The EJBObject reference to be serialized.
+ * @param ostream - The output stream.
+ * @exception java.io.IOException - The EJBObject could not be serialized
+ * because of a system-level failure.
+ */
+ public void writeEJBObject(EJBObject ejbObject,
+ java.io.ObjectOutputStream ostream)
+ throws java.io.IOException;
+
+
+ /**
+ * <P>Deserialize the EJBObject reference corresponding to a Handle.</P>
+ *
+ * <P>readEJBObject is called from the readObject method of portable
+ * Handle implementation classes. The istream object is the same object
+ * that was passed in to the Handle class's readObject. When readEJBObject
+ * is called, istream must point to the location in the stream at which
+ * the EJBObject reference can be read. The container must ensure that
+ * the EJBObject reference is capable of performing invocations immediately
+ * after deserialization.</P>
+ *
+ * @param istream - The input stream.
+ * @return The deserialized EJBObject reference.
+ * @exception java.io.IOException - The EJBObject could not be deserialized
+ * because of a system-level failure.
+ * @exception java.lang.ClassNotFoundException - The EJBObject could not be
+ * deserialized because some
+ * class could not be found.
+ */
+ public EJBObject readEJBObject(java.io.ObjectInputStream istream)
+ throws java.io.IOException, java.lang.ClassNotFoundException;
+
+ /**
+ * <P>Serialize the EJBHome reference corresponding to a HomeHandle.</P>
+ *
+ * <P>This method is called from the writeObject method of portable HomeHandle
+ * implementation classes. The ostream object is the same object that was
+ * passed in to the Handle class's writeObject.</P>
+ *
+ * @param ejbHome - The EJBHome reference to be serialized.
+ * @param ostream - The output stream.
+ * @exception java.io.IOException - The EJBObject could not be serialized
+ * because of a system-level failure.
+ */
+ public void writeEJBHome(EJBHome ejbHome,
+ java.io.ObjectOutputStream ostream)
+ throws java.io.IOException;
+
+ /**
+ * <P>Deserialize the EJBHome reference corresponding to a HomeHandle.</P>
+ *
+ * <P>readEJBHome is called from the readObject method of portable HomeHandle
+ * implementation classes. The istream object is the same object that was
+ * passed in to the HomeHandle class's readObject. When readEJBHome is called,
+ * istream must point to the location in the stream at which the EJBHome reference
+ * can be read. The container must ensure that the EJBHome reference is capable
+ * of performing invocations immediately after deserialization.</P>
+ *
+ * @param istream - The input stream.
+ * @return The deserialized EJBHome reference.
+ * @exception java.io.IOException - The EJBHome could not be deserialized because
+ * of a system-level failure.
+ * @exception java.lang.ClassNotFoundException - The EJBHome could not be deserialized
+ * because some class could not be found.
+ */
+ public EJBHome readEJBHome(java.io.ObjectInputStream istream)
+ throws java.io.IOException, java.lang.ClassNotFoundException;
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/AroundInvoke.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/AroundInvoke.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/AroundInvoke.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.interceptor;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * Defines an interceptor method. The method must have the signature:
+ * public Object <METHOD>(InvocationContext) throws Exception
+ *
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 44679 $
+ */
+ at Target({METHOD}) @Retention(RUNTIME)
+public @interface AroundInvoke {
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeClassInterceptors.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeClassInterceptors.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeClassInterceptors.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,23 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ *
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package javax.interceptor;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ *
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 44679 $
+ */
+ at Target({METHOD}) @Retention(RUNTIME)
+public @interface ExcludeClassInterceptors {
+
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeDefaultInterceptors.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeDefaultInterceptors.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/ExcludeDefaultInterceptors.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,24 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ *
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package javax.interceptor;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ *
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 57282 $
+ */
+ at Target({TYPE, METHOD}) @Retention(RUNTIME)
+public @interface ExcludeDefaultInterceptors {
+
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/Interceptors.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/Interceptors.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/Interceptors.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,41 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.interceptor;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * An interceptor class is denoted using the Interceptor annotation on the bean
+ * class with which it is associated. In the case of multiple interceptor
+ * classes, the Interceptors annotation is used.
+ *
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 44679 $
+ */
+ at Target({TYPE, METHOD}) @Retention(RUNTIME)
+ public @interface Interceptors
+{
+ Class[] value();
+}
Added: projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/InvocationContext.java
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/InvocationContext.java (rev 0)
+++ projects/javaee/trunk/jboss-ejb-api_3.0_spec/src/main/javax/interceptor/InvocationContext.java 2010-01-28 22:28:11 UTC (rev 100091)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2010, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.interceptor;
+
+import java.lang.reflect.Method;
+
+/**
+ * The InvocationContext object provides the metadata that is required for
+ * AroundInvoke interceptor methods.
+ *
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ * @version $Revision: 57282 $
+ */
+public interface InvocationContext
+{
+ public Object getTarget();
+
+ public Method getMethod();
+
+ public Object[] getParameters();
+
+ public void setParameters(Object[] params);
+
+ /**
+ * Returns the context data associated with this invocation or lifecycle callback. If there is no context data, an empty Map object will be returned.
+ */
+ public java.util.Map<String, Object> getContextData();
+
+ public Object proceed() throws Exception;
+}
Modified: projects/javaee/trunk/jboss-ejb-api_3.1_spec/pom.xml
===================================================================
--- projects/javaee/trunk/jboss-ejb-api_3.1_spec/pom.xml 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-ejb-api_3.1_spec/pom.xml 2010-01-28 22:28:11 UTC (rev 100091)
@@ -37,7 +37,7 @@
<dependency>
<groupId>org.jboss.ws.native</groupId>
<artifactId>jbossws-native-jaxrpc</artifactId>
- <version>3.0.4.GA</version>
+ <version>3.2.2.GA</version>
</dependency>
</dependencies>
</project>
Copied: projects/javaee/trunk/jboss-el-api_2.2_spec (from rev 100072, projects/javaee/trunk/jboss-el-api_1.2_spec)
Modified: projects/javaee/trunk/jboss-el-api_2.2_spec/pom.xml
===================================================================
--- projects/javaee/trunk/jboss-el-api_1.2_spec/pom.xml 2010-01-28 19:11:59 UTC (rev 100072)
+++ projects/javaee/trunk/jboss-el-api_2.2_spec/pom.xml 2010-01-28 22:28:11 UTC (rev 100091)
@@ -7,12 +7,12 @@
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.spec.javax.el</groupId>
- <artifactId>jboss-el-api_1.2_spec</artifactId>
+ <artifactId>jboss-el-api_2.2_spec</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
- <name>Expression Language 1.2 API</name>
+ <name>Expression Language 2.2 API</name>
<url>http://www.jboss.org</url>
- <description>The Expression Language 1.2 API classes</description>
+ <description>The Expression Language 2.2 API classes</description>
<reporting>
<plugins>
<plugin>
Modified: projects/javaee/trunk/jboss-spec-parent/pom.xml
===================================================================
--- projects/javaee/trunk/jboss-spec-parent/pom.xml 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-spec-parent/pom.xml 2010-01-28 22:28:11 UTC (rev 100091)
@@ -30,7 +30,7 @@
</dependency>
<dependency>
<groupId>org.jboss.spec.javax.resource</groupId>
- <artifactId>jboss-connector-api_1.6_spec</artifactId>
+ <artifactId>jboss-connector-api_1.5_spec</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
@@ -40,7 +40,7 @@
</dependency>
<dependency>
<groupId>org.jboss.spec.javax.el</groupId>
- <artifactId>jboss-el-api_1.2_spec</artifactId>
+ <artifactId>jboss-el-api_2.2_spec</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
Modified: projects/javaee/trunk/jboss-transaction-api_1.0_spec/pom.xml
===================================================================
--- projects/javaee/trunk/jboss-transaction-api_1.0_spec/pom.xml 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/jboss-transaction-api_1.0_spec/pom.xml 2010-01-28 22:28:11 UTC (rev 100091)
@@ -13,4 +13,16 @@
<name>Transaction 1.0.1 API</name>
<url>http://www.jboss.org</url>
<description>The Java Transaction 1.0.1 API classes</description>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
Modified: projects/javaee/trunk/pom.xml
===================================================================
--- projects/javaee/trunk/pom.xml 2010-01-28 22:19:45 UTC (rev 100090)
+++ projects/javaee/trunk/pom.xml 2010-01-28 22:28:11 UTC (rev 100091)
@@ -29,9 +29,11 @@
<!-- individual specs -->
<module>jboss-annotations-api_1.1_spec</module>
+ <module>jboss-connector-api_1.5_spec</module>
<module>jboss-connector-api_1.6_spec</module>
+ <module>jboss-ejb-api_3.0_spec</module>
<module>jboss-ejb-api_3.1_spec</module>
- <module>jboss-el-api_1.2_spec</module>
+ <module>jboss-el-api_2.2_spec</module>
<module>jboss-interceptors-api_1.1_spec</module>
<module>jboss-jacc-api_1.1_spec</module>
<module>jboss-jad-api_1.2_spec</module>
More information about the jboss-cvs-commits
mailing list