WebObjects 5.4.2

com.webobjects.jndiadaptor
Class JNDIContext

java.lang.Object
  extended by com.webobjects.eoaccess.EOAdaptorContext
      extended by com.webobjects.jndiadaptor.JNDIContext

public class JNDIContext
extends EOAdaptorContext

The JNDIContext class represents a transaction scope on a Java Naming and Directory Interface service.


Nested Class Summary
 
Nested classes/interfaces inherited from class com.webobjects.eoaccess.EOAdaptorContext
EOAdaptorContext.Delegate
 
Field Summary
 
Fields inherited from class com.webobjects.eoaccess.EOAdaptorContext
AdaptorContextBeginTransactionNotification, AdaptorContextCommitTransactionNotification, AdaptorContextRollbackTransactionNotification
 
Constructor Summary
JNDIContext(EOAdaptor adaptor)
          Creates a new instance of JNDIContext.
 
Method Summary
 void beginTransaction()
          An abstract method that should be implemented by subclasses to attempt to begin a new transaction.
 void commitTransaction()
          An abstract method that should be implemented by subclasses to attempt to commit the last transaction begun.
 EOAdaptorChannel createAdaptorChannel()
          An abstract method that should be implemented by subclasses to create and return a new EOAdaptorChannel, or null if a new channel cannot be created.
 void handleDroppedConnection()
          An abstract method that should be implemented by subclasses to clean up after the receiver's adaptor has lost its connection to its database server.
 InitialDirContext initialDirContext()
          Gets the initial directory context.
 void rollbackTransaction()
          An abstract method that should be implemented by subclasses to attempt to roll back the last transaction begun.
 
Methods inherited from class com.webobjects.eoaccess.EOAdaptorContext
adaptor, canNestTransactions, channels, defaultDelegate, delegate, hasBusyChannels, hasOpenChannels, hasOpenTransaction, setDefaultDelegate, setDelegate, transactionDidBegin, transactionDidCommit, transactionDidRollback, transactionNestingLevel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JNDIContext

public JNDIContext(EOAdaptor adaptor)
Creates a new instance of JNDIContext.

Parameters:
adaptor - - the adaptor
See Also:
EOAdaptorContext.EOAdaptorContext(EOAdaptor)
Method Detail

initialDirContext

public InitialDirContext initialDirContext()
Gets the initial directory context. The initial directory context represents the connection to the Java Naming and Directory Interface service. When trying to establish a connection, the adaptor calls the createInitialDirContext method on the plug-in.

Returns:
instance of InitialDirContext
See Also:
JNDIPlugIn#createInitialDirContext(JNDIAdaptor adaptor), InitialDirContext

handleDroppedConnection

public void handleDroppedConnection()
Description copied from class: EOAdaptorContext
An abstract method that should be implemented by subclasses to clean up after the receiver's adaptor has lost its connection to its database server. Invoked from EOAdaptor's handleDroppedConnection, this method should clean up the state of the receiver and its adaptor channels so they can be safely disposed of without any errors. Subclasses must implement this method if the adaptor supports automatic database reconnection.

Never invoke this method yourself; it is invoked automatically by the Enterprise Objects Framework.

Specified by:
handleDroppedConnection in class EOAdaptorContext
See Also:
EOAdaptor.handleDroppedConnection()

beginTransaction

public void beginTransaction()
Description copied from class: EOAdaptorContext
An abstract method that should be implemented by subclasses to attempt to begin a new transaction. A successful invocation of beginTransaction must be paired with an invocation of either commitTransaction or rollbackTransaction to end the transaction.

The Enterprise Objects Framework automatically wraps database operations in transactions, so you don't have to begin and end transactions explicitly. In fact, letting the framework manage transactions is sometimes more efficient. You typically implement beginTransaction only to execute more than one database operation in the same transaction scope.

This method should invoke the delegate method adaptorContextShouldBegin before beginning the transaction. If the transaction is begun successfully, the method should invoke transactionDidBegin on the receiver and invoke the delegate method adaptorContextDidBegin. Should throw a runtime exception if the attempt is unsuccessful. Some possible reasons for failure are:

Specified by:
beginTransaction in class EOAdaptorContext
See Also:
EOAdaptorContext.hasOpenTransaction(), EOAdaptorContext.transactionDidBegin(), EOAdaptorContext.Delegate.adaptorContextShouldBegin(EOAdaptorContext adaptorContext), EOAdaptorContext.Delegate.adaptorContextDidBegin(EOAdaptorContext adaptorContext)

commitTransaction

public void commitTransaction()
Description copied from class: EOAdaptorContext
An abstract method that should be implemented by subclasses to attempt to commit the last transaction begun. Should invoke the delegate method adaptorContextShouldCommit before committing the transaction. If the transaction is committed successfully, the method should invoke transactionDidCommit and invoke the delegate method adaptorContextDidCommit. Should throw a runtime exception if the attempt is unsuccessful. Some possible reasons for failure are:

Specified by:
commitTransaction in class EOAdaptorContext
See Also:
EOAdaptorContext.beginTransaction(), EOAdaptorContext.rollbackTransaction(), EOAdaptorContext.hasBusyChannels(), EOAdaptorContext.transactionDidCommit(), EOAdaptorContext.Delegate.adaptorContextShouldCommit(EOAdaptorContext adaptorContext), EOAdaptorContext.Delegate.adaptorContextDidCommit(EOAdaptorContext adaptorContext)

rollbackTransaction

public void rollbackTransaction()
Description copied from class: EOAdaptorContext
An abstract method that should be implemented by subclasses to attempt to roll back the last transaction begun. Should invoke the delegate method adaptorContextShouldRollback before rolling back the transaction. If the transaction is begun successfully, the method should invoke transactionDidRollback and invoke the delegate method adaptorContextDidRollback. Should throw a runtime exception if the attempt is unsuccessful. Some possible reasons for failure are:

Specified by:
rollbackTransaction in class EOAdaptorContext
See Also:
EOAdaptorContext.beginTransaction(), EOAdaptorContext.commitTransaction(), EOAdaptorContext.transactionDidRollback(), EOAdaptorContext.Delegate.adaptorContextShouldRollback(EOAdaptorContext adaptorContext), EOAdaptorContext.Delegate.adaptorContextDidRollback(EOAdaptorContext adaptorContext)

createAdaptorChannel

public EOAdaptorChannel createAdaptorChannel()
Description copied from class: EOAdaptorContext
An abstract method that should be implemented by subclasses to create and return a new EOAdaptorChannel, or null if a new channel cannot be created. Should set the new channel's adaptorContext to this.

A newly created adaptor context has no channels. Specific adaptors have different limits on the maximum number of channels a context can have, and createAdaptorChannel should fail if a creating a new channel would exceed the limits.

Specified by:
createAdaptorChannel in class EOAdaptorContext
Returns:
A new EOAdaptorChannel.
See Also:
EOAdaptorChannel.adaptorContext(), EOAdaptorContext.channels()

Last updated June 2008

Copyright © 2000-2008 Apple Inc.