EclipseLink1.0 - 20080707 API Reference

org.eclipse.persistence.sessions
Interface Login

All Known Implementing Classes:
DatabaseLogin, DatasourceLogin, EISLogin, XMLLogin

public interface Login

Purpose: Define the information required to connect to a EclipseLink session.

Description: This interface represents a generic concept of a login to be used when connecting to a data-store. It is independant of JDBC so that the EclipseLink session interface can be used for JCA, XML, non-relational or three-tiered frameworks.

See Also:
DatabaseLogin

Method Summary
 org.eclipse.persistence.internal.databaseaccess.Accessor buildAccessor()
          INTERNAL: Build the correct datasource Accessor for this login instance.
 java.lang.Object clone()
          INTERNAL: Clone the login.
 java.lang.Object connectToDatasource(org.eclipse.persistence.internal.databaseaccess.Accessor accessor, Session session)
          INTERNAL: Connect to the datasource, and return the driver level connection object.
 org.eclipse.persistence.internal.databaseaccess.Platform getDatasourcePlatform()
          PUBLIC: Return the datasource platform specific information.
 java.lang.String getPassword()
          PUBLIC: All logins must take a user name and password.
 DatabasePlatform getPlatform()
          INTERNAL: Return the database platform specific information.
 java.lang.Object getProperty(java.lang.String name)
          PUBLIC: The properties are additional, driver-specific, connection information to be passed to the driver.
 java.lang.String getTableQualifier()
          PUBLIC: Return the qualifier for the all of the tables.
 java.lang.String getUserName()
          PUBLIC: All logins must take a user name and password.
 boolean isConnectionHealthValidatedOnError()
          PUBLIC: This value defaults to false when not on a DatabaseLogin as the functionality has not been implemented for other datasource type.
 void setDatasourcePlatform(org.eclipse.persistence.internal.databaseaccess.Platform platform)
          PUBLIC: Set the database platform specific information.
 void setPassword(java.lang.String password)
          PUBLIC: All logins must take a user name and password.
 void setPlatform(org.eclipse.persistence.internal.databaseaccess.Platform platform)
          INTERNAL: Set the database platform specific information.
 void setProperties(java.util.Properties properties)
          PUBLIC: The properties are additional, driver-specific, connection information to be passed to the JDBC driver.
 void setProperty(java.lang.String propertyName, java.lang.Object propertyValue)
          PUBLIC: Some JDBC drivers require additional, driver-specific, properties.
 void setUserName(java.lang.String userName)
          PUBLIC: All logins must take a user name and password.
 boolean shouldAllowConcurrentReadWrite()
          INTERNAL: Used for cache isolation.
 boolean shouldSynchronizedReadOnWrite()
          INTERNAL: Used for cache isolation.
 boolean shouldSynchronizeObjectLevelReadWrite()
          INTERNAL: Used for Cache Isolation.
 boolean shouldSynchronizeObjectLevelReadWriteDatabase()
          INTERNAL: Used for Cache Isolation.
 boolean shouldSynchronizeWrites()
          INTERNAL: Used for Cache Isolation.
 boolean shouldUseExternalConnectionPooling()
          PUBLIC: Return whether EclipseLink uses some externally managed connection pooling.
 boolean shouldUseExternalTransactionController()
          PUBLIC: Return whether EclipseLink uses some externally managed transaction service such as JTS.
 

Method Detail

getPassword

java.lang.String getPassword()
PUBLIC: All logins must take a user name and password.


getUserName

java.lang.String getUserName()
PUBLIC: All logins must take a user name and password.


isConnectionHealthValidatedOnError

boolean isConnectionHealthValidatedOnError()
PUBLIC: This value defaults to false when not on a DatabaseLogin as the functionality has not been implemented for other datasource type. On an SQL Exception EclipseLink will ping the database to determine if the connection used can continue to be used for queries. This should have no impact on applications unless the user is using pessimistic locking queries with 'no wait' or are using a query timeout feature. If that is the case and the application is experiencing a performance impact from the health check then this feature can be turned off. Turning this feature off will prevent EclipseLink from being able to retry queries in the case of database failure.


setPassword

void setPassword(java.lang.String password)
PUBLIC: All logins must take a user name and password.


setUserName

void setUserName(java.lang.String userName)
PUBLIC: All logins must take a user name and password.


shouldUseExternalConnectionPooling

boolean shouldUseExternalConnectionPooling()
PUBLIC: Return whether EclipseLink uses some externally managed connection pooling.


shouldUseExternalTransactionController

boolean shouldUseExternalTransactionController()
PUBLIC: Return whether EclipseLink uses some externally managed transaction service such as JTS.


getPlatform

DatabasePlatform getPlatform()
INTERNAL: Return the database platform specific information. This allows EclipseLink to configure certain advanced features for the database desired. The platform also allows configuration of sequence information. NOTE: this must only be used for relational specific usage and will not work for non-relational datasources.


getDatasourcePlatform

org.eclipse.persistence.internal.databaseaccess.Platform getDatasourcePlatform()
PUBLIC: Return the datasource platform specific information. This allows EclipseLink to configure certain advanced features for the datasource desired. The platform also allows configuration of sequence information.


setPlatform

void setPlatform(org.eclipse.persistence.internal.databaseaccess.Platform platform)
INTERNAL: Set the database platform specific information. This allows EclipseLink to configure certain advanced features for the database desired. The platform also allows configuration of sequence information.


setDatasourcePlatform

void setDatasourcePlatform(org.eclipse.persistence.internal.databaseaccess.Platform platform)
PUBLIC: Set the database platform specific information. This allows EclipseLink to configure certain advanced features for the database desired. The platform also allows configuration of sequence information.


connectToDatasource

java.lang.Object connectToDatasource(org.eclipse.persistence.internal.databaseaccess.Accessor accessor,
                                     Session session)
                                     throws DatabaseException
INTERNAL: Connect to the datasource, and return the driver level connection object.

Throws:
DatabaseException

buildAccessor

org.eclipse.persistence.internal.databaseaccess.Accessor buildAccessor()
INTERNAL: Build the correct datasource Accessor for this login instance.


clone

java.lang.Object clone()
INTERNAL: Clone the login.


getTableQualifier

java.lang.String getTableQualifier()
PUBLIC: Return the qualifier for the all of the tables.


shouldAllowConcurrentReadWrite

boolean shouldAllowConcurrentReadWrite()
INTERNAL: Used for cache isolation.


shouldSynchronizeWrites

boolean shouldSynchronizeWrites()
INTERNAL: Used for Cache Isolation. Causes EclipseLink to lock at the class level on cache updates.


shouldSynchronizeObjectLevelReadWrite

boolean shouldSynchronizeObjectLevelReadWrite()
INTERNAL: Used for Cache Isolation. Causes EclipseLink to lock at the object level on cache updates and cache access.


shouldSynchronizeObjectLevelReadWriteDatabase

boolean shouldSynchronizeObjectLevelReadWriteDatabase()
INTERNAL: Used for Cache Isolation. Causes EclipseLink to lock at the object level on cache updates and cache access, based on database transaction.


shouldSynchronizedReadOnWrite

boolean shouldSynchronizedReadOnWrite()
INTERNAL: Used for cache isolation.


getProperty

java.lang.Object getProperty(java.lang.String name)
PUBLIC: The properties are additional, driver-specific, connection information to be passed to the driver.

NOTE: Do not set the password directly by getting the properties and setting the "password" property directly. Use the method DatabaseLogin.setPassword(String).


setProperties

void setProperties(java.util.Properties properties)
PUBLIC: The properties are additional, driver-specific, connection information to be passed to the JDBC driver.


setProperty

void setProperty(java.lang.String propertyName,
                 java.lang.Object propertyValue)
PUBLIC: Some JDBC drivers require additional, driver-specific, properties. Add the specified property to those to be passed to the JDBC driver.


EclipseLink1.0 - 20080707 API Reference