Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.jdo
Interface PersistenceManagerFactory

All Superinterfaces:
  java.io.Serializable

All Known Subinterfaces:
  JDOEntityManagerFactory

    public interface PersistenceManagerFactory

extends java.io.Serializable

The `PersistenceManagerFactory` is the interface to use to obtain `PersistenceManager` instances. All `PersistenceManager` instances obtained from the same `PersistenceManagerFactory` will have the same default properties.

`PersistenceManagerFactory` instances may be configured and serialized for later use. They may be stored via JNDI and looked up and used later. Any properties configured will be saved and restored.

Once the first `PersistenceManager` is obtained from the `PersistenceManagerFactory`, the factory can no longer be configured.

If the `ConnectionFactory` property is set (non-`null`) then all other Connection properties including `ConnectionFactoryName` are ignored; otherwise, if `ConnectionFactoryName` is set (non-`null`) then all other Connection properties are ignored. Similarly, if the `ConnectionFactory2` property is set (non-`null`) then `ConnectionFactory2Name` is ignored.

Operational state (`PersistenceManager` pooling, connection pooling, operational parameters) must not be serialized.

Version:
  2.2

Method Summary
`void` | `addFetchGroups(FetchGroup... groups)` Add the `FetchGroup`s to the set of active fetch groups.
`void` | `addInstanceLifecycleListener(InstanceLifecycleListener listener, java.lang.Class[] classes)` Add the parameter listener to the list of instance lifecycle event listeners set as the initial listeners for each PersistenceManager created by this PersistenceManagerFactory.
`void` | `close()` Close this PersistenceManagerFactory.
`java.lang.String` | `getConnectionDriverName()` Get the driver name for the data store connection.
`java.lang.Object` | `getConnectionFactory()` Get the data store connection factory.
`java.lang.Object` | `getConnectionFactory2()` Get the second data store connection factory.
`java.lang.String` | `getConnectionFactory2Name()` Get the name for the second data store connection factory.
`java.lang.String` | `getConnectionFactoryName()` Get the name for the data store connection factory.
`java.lang.String` | `getConnectionURL()` Get the URL for the data store connection.
`java.lang.String` | `getConnectionUserName()` Get the user name for the data store connection.
`boolean` | `getCopyOnAttach()` Gets the default copyOnAttach setting for all `PersistenceManager` instances obtained from this factory.
`DataStoreCache` | `getDataStoreCache()` Return the `DataStoreCache` that this factory uses for controlling a second-level cache.
`java.lang.Integer` | `getDatastoreReadTimeoutMillis()` Get the default timeout setting for read operations.
`java.lang.Integer` | `getDatastoreWriteTimeoutMillis()` Get the default timeout setting for write operations.
`boolean` | `getDetachAllOnCommit()` Gets the detachAllOnCommit setting.
`FetchGroup` | `getFetchGroup(java.lang.Class cls, java.lang.String name)` Create an unscoped, modifiable `FetchGroup` for the Class and name.
`java.util.Set` | `getFetchGroups()` Get a modifiable Set containing a mutable copy of all currently active (in scope) fetch groups.
`boolean` | `getIgnoreCache()` Get the default IgnoreCache setting for all `PersistenceManager` instances obtained from this factory.
`java.lang.String` | `getMapping()` Get the Mapping setting for this factory.
`TypeMetadata` | `getMetadata(java.lang.String className)` Method to return the metadata object for the specified class/interface, if there is metadata defined for that class/interface.
`boolean` | `getMultithreaded()` Get the default Multithreaded setting for all `PersistenceManager` instances obtained from this factory.
`java.lang.String` | `getName()` Gets the name of this PersistenceManagerFactory.
`boolean` | `getNontransactionalRead()` Get the default NontransactionalRead setting for all `PersistenceManager` instances obtained from this factory.
`boolean` | `getNontransactionalWrite()` Get the default NontransactionalWrite setting for all `PersistenceManager` instances obtained from this factory.
`boolean` | `getOptimistic()` Get the default Optimistic setting for all `PersistenceManager` instances obtained from this factory.
`PersistenceManager` | `getPersistenceManager()` Get an instance of `PersistenceManager` from this factory.
`PersistenceManager` | `getPersistenceManager(java.lang.String userid, java.lang.String password)` Get an instance of `PersistenceManager` from this factory.
`PersistenceManager` | `getPersistenceManagerProxy()` Get a thread-safe instance of a proxy that dynamically binds on each method call to an instance of `PersistenceManager`.
`java.lang.String` | `getPersistenceUnitName()` Gets the PersistenceUnitName for this PersistenceManagerFactory.
`java.util.Properties` | `getProperties()` Return non-configurable properties of this `PersistenceManagerFactory`.
`boolean` | `getReadOnly()` Gets the value for read-only for this PMF.
`boolean` | `getRestoreValues()` Get the default value for the RestoreValues property.
`boolean` | `getRetainValues()` Get the default RetainValues setting for all `PersistenceManager` instances obtained from this factory.
`java.lang.String` | `getServerTimeZoneID()` Gets the TimeZone ID of the server associated with this PersistenceManagerFactory.
`java.lang.String` | `getTransactionIsolationLevel()` Get the value for transaction isolation level for this PMF.
`java.lang.String` | `getTransactionType()` Gets the TransactionType for this PersistenceManagerFactory.
`boolean` | `isClosed()` A `PersistenceManagerFactory` instance can be used until it is closed.
`JDOMetadata` | `newMetadata()` Method to return a new metadata object that can be subsequently modified and registered with the persistence process using the method `registerMetadata(javax.jdo.metadata.JDOMetadata)`.
`void` | `registerMetadata(JDOMetadata metadata)` Method to register metadata with the persistence process managed by this `PersistenceManagerFactory`.
`void` | `removeAllFetchGroups()` Remove all `FetchGroup`s from the set of active `FetchGroup`s.
`void` | `removeFetchGroups(FetchGroup... groups)` Remove the `FetchGroup`s from the set of active `FetchGroup`s.
`void` | `removeInstanceLifecycleListener(InstanceLifecycleListener listener)` Remove the parameter listener instance from the list of instance lifecycle event listeners set as the initial listeners for each PersistenceManager created by this PersistenceManagerFactory.
`void` | `setConnectionDriverName(java.lang.String driverName)` Set the driver name for the data store connection.
`void` | `setConnectionFactory(java.lang.Object connectionFactory)` Set the data store connection factory.
`void` | `setConnectionFactory2(java.lang.Object connectionFactory)` Set the second data store connection factory.
`void` | `setConnectionFactory2Name(java.lang.String connectionFactoryName)` Set the name for the second data store connection factory.
`void` | `setConnectionFactoryName(java.lang.String connectionFactoryName)` Set the name for the data store connection factory.
`void` | `setConnectionPassword(java.lang.String password)` Set the password for the data store connection.
`void` | `setConnectionURL(java.lang.String url)` Set the URL for the data store connection.
`void` | `setConnectionUserName(java.lang.String userName)` Set the user name for the data store connection.
`void` | `setCopyOnAttach(boolean flag)` Sets the default copyOnAttach setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setDatastoreReadTimeoutMillis(java.lang.Integer interval)` Specify a default timeout interval (milliseconds) for any read operations for persistence managers obtained from this persistence manager factory.
`void` | `setDatastoreWriteTimeoutMillis(java.lang.Integer interval)` Specify a default timeout interval (milliseconds) for any write operations for persistence managers obtained from this persistence manager factory.
`void` | `setDetachAllOnCommit(boolean flag)` Sets the default detachAllOnCommit setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setIgnoreCache(boolean flag)` Set the default IgnoreCache setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setMapping(java.lang.String mapping)` Set the Mapping setting for this factory.
`void` | `setMultithreaded(boolean flag)` Set the default Multithreaded setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setName(java.lang.String name)` Sets the name of this PersistenceManagerFactory.
`void` | `setNontransactionalRead(boolean flag)` Set the default NontransactionalRead setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setNontransactionalWrite(boolean flag)` Set the default NontransactionalWrite setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setOptimistic(boolean flag)` Set the default Optimistic setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setPersistenceUnitName(java.lang.String name)` Sets the PersistenceUnitName for this PersistenceManagerFactory.
`void` | `setReadOnly(boolean flag)` Sets the value for whether the datastore is to be considered read-only.
`void` | `setRestoreValues(boolean restoreValues)` Set the default value for the RestoreValues property.
`void` | `setRetainValues(boolean flag)` Set the default RetainValues setting for all `PersistenceManager` instances obtained from this factory.
`void` | `setServerTimeZoneID(java.lang.String timezoneid)` Sets the TimeZone ID of the server associated with this PersistenceManagerFactory.
`void` | `setTransactionIsolationLevel(java.lang.String level)` Set the value for transaction isolation level for this PMF.
`void` | `setTransactionType(java.lang.String name)` Sets the TransactionType for this PersistenceManagerFactory.
`java.util.Collection<java.lang.String>` | `supportedOptions()` The application can determine from the results of this method which optional features, and which query languages are supported by the JDO implementation.

Method Detail

### close

    void close()

  Close this PersistenceManagerFactory. Check for JDOPermission("closePersistenceManagerFactory") and if not authorized, throw SecurityException.

  If the authorization check succeeds, check to see that all PersistenceManager instances obtained from this PersistenceManagerFactory have no active transactions. If any PersistenceManager instances have an active transaction, throw a JDOUserException, with one nested JDOUserException for each PersistenceManager with an active Transaction.

  If there are no active transactions, then close all PersistenceManager instances obtained from this PersistenceManagerFactory, mark this PersistenceManagerFactory as closed, disallow getPersistenceManager methods, and allow all other get methods. If a set method or getPersistenceManager method is called after close, then JDOUserException is thrown.

  Since:
    1.0.1

### isClosed

    boolean isClosed()

  A `PersistenceManagerFactory` instance can be used until it is closed.

  Returns:
    `true` if this `PersistenceManagerFactory` has been closed.
  Since:
    2.0
  See Also:
    `close()`

### getPersistenceManager

    PersistenceManager getPersistenceManager()

  Get an instance of `PersistenceManager` from this factory. The instance has default values for options.

  After the first use of `getPersistenceManager`, no "set" methods will succeed.

  Returns:
    a `PersistenceManager` instance with default options.

### getPersistenceManagerProxy

    PersistenceManager getPersistenceManagerProxy()

  Get a thread-safe instance of a proxy that dynamically binds on each method call to an instance of `PersistenceManager`.

  When used with a `PersistenceManagerFactory` that uses TransactionType JTA, the proxy can be used in a server to dynamically bind to an instance from this factory associated with the thread's current transaction. In this case, the close method is ignored, as the `PersistenceManager` is automatically closed when the transaction completes.

  When used with a `PersistenceManagerFactory` that uses TransactionType RESOURCE_LOCAL, the proxy uses an inheritable ThreadLocal to bind to an instance of `PersistenceManager` associated with the thread. In this case, the close method executed on the proxy closes the `PersistenceManager` and then clears the ThreadLocal. Use of this method does not affect the configurability of the `PersistenceManagerFactory`.

  Returns:
    a `PersistenceManager` proxy.
  Since:
    2.1

### getPersistenceManager

    PersistenceManager getPersistenceManager(java.lang.String userid,
                                             java.lang.String password)

  Get an instance of `PersistenceManager` from this factory. The instance has default values for options. The parameters `userid` and `password` are used when obtaining datastore connections from the connection pool.

  After the first use of `getPersistenceManager`, no "set" methods will succeed.

  Parameters:
    `userid` - the userid for the connection
    `password` - the password for the connection
  Returns:
    a `PersistenceManager` instance with default options.

### setConnectionUserName

    void setConnectionUserName(java.lang.String userName)

  Set the user name for the data store connection.

  Parameters:
    `userName` - the user name for the data store connection.

### getConnectionUserName

    java.lang.String getConnectionUserName()

  Get the user name for the data store connection.

  Returns:
    the user name for the data store connection.

### setConnectionPassword

    void setConnectionPassword(java.lang.String password)

  Set the password for the data store connection.

  Parameters:
    `password` - the password for the data store connection.

### setConnectionURL

    void setConnectionURL(java.lang.String url)

  Set the URL for the data store connection.

  Parameters:
    `url` - the URL for the data store connection.

### getConnectionURL

    java.lang.String getConnectionURL()

  Get the URL for the data store connection.

  Returns:
    the URL for the data store connection.

### setConnectionDriverName

    void setConnectionDriverName(java.lang.String driverName)

  Set the driver name for the data store connection.

  Parameters:
    `driverName` - the driver name for the data store connection.

### getConnectionDriverName

    java.lang.String getConnectionDriverName()

  Get the driver name for the data store connection.

  Returns:
    the driver name for the data store connection.

### setConnectionFactoryName

    void setConnectionFactoryName(java.lang.String connectionFactoryName)

  Set the name for the data store connection factory.

  Parameters:
    `connectionFactoryName` - the name of the data store connection factory.

### getConnectionFactoryName

    java.lang.String getConnectionFactoryName()

  Get the name for the data store connection factory.

  Returns:
    the name of the data store connection factory.

### setConnectionFactory

    void setConnectionFactory(java.lang.Object connectionFactory)

  Set the data store connection factory. JDO implementations will support specific connection factories. The connection factory interfaces are not part of the JDO specification.

  Parameters:
    `connectionFactory` - the data store connection factory.

### getConnectionFactory

    java.lang.Object getConnectionFactory()

  Get the data store connection factory.

  Returns:
    the data store connection factory.

### setConnectionFactory2Name

    void setConnectionFactory2Name(java.lang.String connectionFactoryName)

  Set the name for the second data store connection factory. This is needed for managed environments to get nontransactional connections for optimistic transactions.

  Parameters:
    `connectionFactoryName` - the name of the data store connection factory.

### getConnectionFactory2Name

    java.lang.String getConnectionFactory2Name()

  Get the name for the second data store connection factory. This is needed for managed environments to get nontransactional connections for optimistic transactions.

  Returns:
    the name of the data store connection factory.

### setConnectionFactory2

    void setConnectionFactory2(java.lang.Object connectionFactory)

  Set the second data store connection factory. This is needed for managed environments to get nontransactional connections for optimistic transactions. JDO implementations will support specific connection factories. The connection factory interfaces are not part of the JDO specification.

  Parameters:
    `connectionFactory` - the data store connection factory.

### getConnectionFactory2

    java.lang.Object getConnectionFactory2()

  Get the second data store connection factory. This is needed for managed environments to get nontransactional connections for optimistic transactions.

  Returns:
    the data store connection factory.

### setMultithreaded

    void setMultithreaded(boolean flag)

  Set the default Multithreaded setting for all `PersistenceManager` instances obtained from this factory.

  Parameters:
    `flag` - the default Multithreaded setting.

### getMultithreaded

    boolean getMultithreaded()

  Get the default Multithreaded setting for all `PersistenceManager` instances obtained from this factory.

  Returns:
    the default Multithreaded setting.

### setMapping

    void setMapping(java.lang.String mapping)

  Set the Mapping setting for this factory. This is used to find the object-datastore mapping file(s).

  Parameters:
    `mapping` - the Mapping setting.

### getMapping

    java.lang.String getMapping()

  Get the Mapping setting for this factory. This is used to find the object-datastore mapping file(s).

  Returns:
    the Mapping setting.

### setOptimistic

    void setOptimistic(boolean flag)

  Set the default Optimistic setting for all `PersistenceManager` instances obtained from this factory.

  Parameters:
    `flag` - the default Optimistic setting.

### getOptimistic

    boolean getOptimistic()

  Get the default Optimistic setting for all `PersistenceManager` instances obtained from this factory.

  Returns:
    the default Optimistic setting.

### setRetainValues

    void setRetainValues(boolean flag)

  Set the default RetainValues setting for all `PersistenceManager` instances obtained from this factory.

  Parameters:
    `flag` - the default RetainValues setting.

### getRetainValues

    boolean getRetainValues()

  Get the default RetainValues setting for all `PersistenceManager` instances obtained from this factory.

  Returns:
    the default RetainValues setting.

### setRestoreValues

    void setRestoreValues(boolean restoreValues)

  Set the default value for the RestoreValues property. If `true`, at rollback, fields of newly persistent instances are restored to their values as of the beginning of the transaction, and the instances revert to transient. Additionally, fields of modified instances of primitive types and immutable reference types are restored to their values as of the beginning of the transaction.

  If `false`, at rollback, the values of fields of newly persistent instances are unchanged and the instances revert to transient. Additionally, dirty instances transition to hollow. If an implementation does not support this option, a `JDOUnsupportedOptionException` is thrown.

  Parameters:
    `restoreValues` - the value of the restoreValues property

### getRestoreValues

    boolean getRestoreValues()

  Get the default value for the RestoreValues property.

  Returns:
    the value of the restoreValues property

### setNontransactionalRead

    void setNontransactionalRead(boolean flag)

  Set the default NontransactionalRead setting for all `PersistenceManager` instances obtained from this factory.

  Parameters:
    `flag` - the default NontransactionalRead setting.

### getNontransactionalRead

    boolean getNontransactionalRead()

  Get the default NontransactionalRead setting for all `PersistenceManager` instances obtained from this factory.

  Returns:
    the default NontransactionalRead setting.

### setNontransactionalWrite

    void setNontransactionalWrite(boolean flag)

  Set the default NontransactionalWrite setting for all `PersistenceManager` instances obtained from this factory.

  Parameters:
    `flag` - the default NontransactionalWrite setting.

### getNontransactionalWrite

    boolean getNontransactionalWrite()

  Get the default NontransactionalWrite setting for all `PersistenceManager` instances obtained from this factory.

  Returns:
    the default NontransactionalWrite setting.

### setIgnoreCache

    void setIgnoreCache(boolean flag)

  Set the default IgnoreCache setting for all `PersistenceManager` instances obtained from this factory.

  Parameters:
    `flag` - the default IgnoreCache setting.

### getIgnoreCache

    boolean getIgnoreCache()

  Get the default IgnoreCache setting for all `PersistenceManager` instances obtained from this factory.

  Returns:
    the default IngoreCache setting.

### getDetachAllOnCommit

    boolean getDetachAllOnCommit()

  Gets the detachAllOnCommit setting.

  Returns:
    the default detachAllOnCommit setting.
  Since:
    2.0
  See Also:
    `setDetachAllOnCommit(boolean)`

### setDetachAllOnCommit

    void setDetachAllOnCommit(boolean flag)

  Sets the default detachAllOnCommit setting for all `PersistenceManager` instances obtained from this factory.

  Parameters:
    `flag` - the default DetachAllOnCommit setting
  Since:
    2.0
  See Also:
    `getDetachAllOnCommit()`

### getCopyOnAttach

    boolean getCopyOnAttach()

  Gets the default copyOnAttach setting for all `PersistenceManager` instances obtained from this factory.

  Returns:
    the copyOnAttach setting.
  Since:
    2.1
  See Also:
    `setCopyOnAttach(boolean)`

### setCopyOnAttach

    void setCopyOnAttach(boolean flag)

  Sets the default copyOnAttach setting for all `PersistenceManager` instances obtained from this factory.

  CopyOnAttach set to `true` specifies that during makePersistent, copies are made of detached parameter instances. With this flag set to `false`, detached parameter instances are attached directly and change their state from detached-clean to persistent-clean or from detached-dirty to persistent-dirty.

  Since:
    2.1
  See Also:
    `getCopyOnAttach()`

### setName

    void setName(java.lang.String name)

  Sets the name of this PersistenceManagerFactory.

  Parameters:
    `name` - the name of this PMF
  Since:
    2.1

### getName

    java.lang.String getName()

  Gets the name of this PersistenceManagerFactory.

  Returns:
    the name of this PMF
  Since:
    2.1

### setPersistenceUnitName

    void setPersistenceUnitName(java.lang.String name)

  Sets the PersistenceUnitName for this PersistenceManagerFactory. This has the same semantics as the same-named property in JSR-220 PersistenceUnitInfo.

  Parameters:
    `name` - the PersistenceUnitName
  Since:
    2.1
  See Also:
    `getPersistenceUnitName()`

### getPersistenceUnitName

    java.lang.String getPersistenceUnitName()

  Gets the PersistenceUnitName for this PersistenceManagerFactory.

  Returns:
    the PersistenceUnitName
  Since:
    2.1
  See Also:
    `setPersistenceUnitName(String)`

### setServerTimeZoneID

    void setServerTimeZoneID(java.lang.String timezoneid)

  Sets the TimeZone ID of the server associated with this PersistenceManagerFactory. The parameter is a String suitable for use with TimeZone.getTimeZone(). The String must match an ID returned by TimeZone.getAvailableIDs(). If the ServerTimeZoneID is not set, or set to the null String, assume that the server has the same TimeZone ID as the client. If incorrectly set, the result of PersistenceManager.getServerDate() might be incorrect.

  Parameters:
    `timezoneid` - the TimeZone ID of the server
  Throws:
    `JDOUserException` - if the parameter does not match an ID from TimeZone.getAvailableIDs()
  Since:
    2.1
  See Also:
    `getServerTimeZoneID()`, `TimeZone.getTimeZone(String)`, `TimeZone.getAvailableIDs()`, `PersistenceManager.getServerDate()`

### getServerTimeZoneID

    java.lang.String getServerTimeZoneID()

  Gets the TimeZone ID of the server associated with this PersistenceManagerFactory. If not set, assume that the server has the same TimeZone ID as the client.

  Returns:
    the TimeZone of the server
  Since:
    2.1
  See Also:
    `setServerTimeZoneID(String)`

### setTransactionType

    void setTransactionType(java.lang.String name)

  Sets the TransactionType for this PersistenceManagerFactory. Permitted values are "JTA" and "RESOURCE_LOCAL". This has the same semantics as the same-named property in JSR-220 EntityManagerFactory.

  Parameters:
    `name` - the TransactionType
  Throws:
    `JDOUserException` - if the parameter is not a permitted value
  Since:
    2.1
  See Also:
    `getTransactionType()`, `Constants.JTA`, `Constants.RESOURCE_LOCAL`

### getTransactionType

    java.lang.String getTransactionType()

  Gets the TransactionType for this PersistenceManagerFactory.

  Returns:
    the TransactionType
  Since:
    2.1
  See Also:
    `setTransactionType(String)`

### getReadOnly

    boolean getReadOnly()

  Gets the value for read-only for this PMF. Indicates whether the datastore is read-only or writable.

  Returns:
    the readOnly setting.
  Since:
    2.2
  See Also:
    `setReadOnly(boolean)`

### setReadOnly

    void setReadOnly(boolean flag)

  Sets the value for whether the datastore is to be considered read-only.

  ReadOnly set to `false` specifies that no updates can be performed to the datastore, and if updates are attempted a JDOReadOnlyException is thrown.

  Since:
    2.2
  See Also:
    `getReadOnly()`

### getTransactionIsolationLevel

    java.lang.String getTransactionIsolationLevel()

  Get the value for transaction isolation level for this PMF.

  Returns:
    the transaction isolation level
  Since:
    2.2
  See Also:
    `setTransactionIsolationLevel(String)`

### setTransactionIsolationLevel

    void setTransactionIsolationLevel(java.lang.String level)

  Set the value for transaction isolation level for this PMF. Transaction isolation levels are defined in javax.jdo.Constants. If the requested level is not available, but a higher level is available, the higher level is silently used. If the requested level is not available, and no higher level is available, then JDOUnsupportedOptionException is thrown. Standard values in order from low to high are:
  - read-uncommitted
  - read-committed
  - repeatable-read
  - snapshot
  - serializable

  Parameters:
    `level` - the transaction isolation level
  Since:
    2.2
  See Also:
    `getTransactionIsolationLevel()`, `Constants.TX_READ_UNCOMMITTED`, `Constants.TX_READ_COMMITTED`, `Constants.TX_REPEATABLE_READ`, `Constants.TX_SNAPSHOT`, `Constants.TX_SERIALIZABLE`

### setDatastoreReadTimeoutMillis

    void setDatastoreReadTimeoutMillis(java.lang.Integer interval)

  Specify a default timeout interval (milliseconds) for any read operations for persistence managers obtained from this persistence manager factory. To unset the explicit timeout, specify null. For no timeout, specify 0. If the datastore and JDO implementation support timeouts, then javax.jdo.option.DatastoreTimeout is returned by supportedOptions(). If timeouts are not supported,this method will throw JDOUnsupportedOptionException.

  Parameters:
    `interval` - the timeout interval (milliseconds)
  Since:
    3.0

### getDatastoreReadTimeoutMillis

    java.lang.Integer getDatastoreReadTimeoutMillis()

  Get the default timeout setting for read operations. If timeouts are not supported,this method will return null.

  Returns:
    the default timeout setting (milliseconds).
  Since:
    3.0
  See Also:
    `setDatastoreReadTimeoutMillis(Integer)`

### setDatastoreWriteTimeoutMillis

    void setDatastoreWriteTimeoutMillis(java.lang.Integer interval)

  Specify a default timeout interval (milliseconds) for any write operations for persistence managers obtained from this persistence manager factory. To unset the explicit timeout, specify null. For no timeout, specify 0. If the datastore and JDO implementation support timeouts, then javax.jdo.option.DatastoreTimeout is returned by supportedOptions(). If timeouts are not supported,this method will throw JDOUnsupportedOptionException.

  Parameters:
    `interval` - the timeout interval (milliseconds)
  Since:
    3.0

### getDatastoreWriteTimeoutMillis

    java.lang.Integer getDatastoreWriteTimeoutMillis()

  Get the default timeout setting for write operations. If timeouts are not supported,this method will return null.

  Returns:
    the default timeout setting (milliseconds).
  Since:
    3.0
  See Also:
    `setDatastoreWriteTimeoutMillis(Integer)`

### getProperties

    java.util.Properties getProperties()

  Return non-configurable properties of this `PersistenceManagerFactory`. Properties with keys `VendorName` and `VersionNumber` are required. Other keys are optional.

  Returns:
    the non-configurable properties of this `PersistenceManagerFactory`.

### supportedOptions

    java.util.Collection<java.lang.String> supportedOptions()

  The application can determine from the results of this method which optional features, and which query languages are supported by the JDO implementation.

  Each supported JDO feature is represented by a `String` with one of the following values:

  `javax.jdo.option.TransientTransactional
  javax.jdo.option.NontransactionalRead
  javax.jdo.option.NontransactionalWrite
  javax.jdo.option.RetainValues
  javax.jdo.option.Optimistic
  javax.jdo.option.ApplicationIdentity
  javax.jdo.option.DatastoreIdentity
  javax.jdo.option.NonDurableIdentity
  javax.jdo.option.ArrayList
  javax.jdo.option.HashMap
  javax.jdo.option.Hashtable
  javax.jdo.option.LinkedList
  javax.jdo.option.TreeMap
  javax.jdo.option.TreeSet
  javax.jdo.option.Vector
  javax.jdo.option.Map
  javax.jdo.option.List
  javax.jdo.option.Array
  javax.jdo.option.NullCollection
  javax.jdo.option.ChangeApplicationIdentity
  javax.jdo.option.BinaryCompatibility
  javax.jdo.option.GetDataStoreConnection
  javax.jdo.option.UnconstrainedQueryVariables
  javax.jdo.option.TransactionIsolationLevel.read-uncommitted
  javax.jdo.option.TransactionIsolationLevel.read-committed
  javax.jdo.option.TransactionIsolationLevel.repeatable-read
  javax.jdo.option.TransactionIsolationLevel.snapshot
  javax.jdo.option.TransactionIsolationLevel.serializable
  javax.jdo.option.QueryCancel
  javax.jdo.option.DatastoreTimeout
  javax.jdo.query.SQL
  javax.jdo.query.JDOQL`

  The standard JDO query language is represented by a `String`:

  `javax.jdo.query.JDOQL`

  Returns:
    the `Collection` of `String`s representing the supported options.

### getDataStoreCache

    DataStoreCache getDataStoreCache()

  Return the `DataStoreCache` that this factory uses for controlling a second-level cache. If this factory does not use a second-level cache, the returned instance does nothing. This method never returns `null`.

  Returns:
    the DataStoreCache
  Since:
    2.0

### addInstanceLifecycleListener

    void addInstanceLifecycleListener(InstanceLifecycleListener listener,
                                      java.lang.Class[] classes)

  Add the parameter listener to the list of instance lifecycle event listeners set as the initial listeners for each PersistenceManager created by this PersistenceManagerFactory. The `addInstanceLifecycleListener` and `removeInstanceLifecycleListener` methods are considered to be configuration methods and can only be called when the PersistenceManagerFactory is configurable (before the first time `getPersistenceManager()` is called).

  The `classes` parameter identifies all of the classes of interest. If the `classes` parameter is specified as `null`, events for all persistent classes and interfaces will be sent to the listener.

  The listener will be called for each event for which it implements the corresponding `InstanceLifecycleListener` interface.

  Parameters:
    `listener` - the lifecycle listener
    `classes` - the classes of interest to the listener
  Since:
    2.0

### removeInstanceLifecycleListener

    void removeInstanceLifecycleListener(InstanceLifecycleListener listener)

  Remove the parameter listener instance from the list of instance lifecycle event listeners set as the initial listeners for each PersistenceManager created by this PersistenceManagerFactory. The `addInstanceLifecycleListener` and `removeInstanceLifecycleListener` methods are considered to be configuration methods and can only be called when the PersistenceManagerFactory is configurable (before the first time `getPersistenceManager()` is called).

  Parameters:
    `listener` - the listener instance to be removed
  Since:
    2.0

### addFetchGroups

    void addFetchGroups(FetchGroup... groups)

  Add the `FetchGroup`s to the set of active fetch groups. `FetchGroup`s are made unmodifiable before being added. `FetchGroup`s that match existing `FetchGroup`s replace the corresponding `FetchGroup`s. The replaced `FetchGroup`s become unscoped. Match is based on identical class and equal name. The methods `addFetchGroups(javax.jdo.FetchGroup...)`, `removeFetchGroups(javax.jdo.FetchGroup...)`, `getFetchGroups()`, and `removeAllFetchGroups()` are internally serialized.

  Parameters:
    `groups` - an array of FetchGroups
  Throws:
    `java.lang.SecurityException` - if the caller is not authorized for `JDOPermission` ("manageMetadata")
  Since:
    2.2

### removeFetchGroups

    void removeFetchGroups(FetchGroup... groups)

  Remove the `FetchGroup`s from the set of active `FetchGroup`s. Existing `FetchGroup`s that match parameter `FetchGroup`s are removed. Parameter `FetchGroup`s that do not match any existing `FetchGroup` are ignored. Removed `FetchGroup`s become unscoped. Match is based on identical class and equal name. The methods `addFetchGroups(javax.jdo.FetchGroup...)`, `removeFetchGroups(javax.jdo.FetchGroup...)`, `getFetchGroups()`, and `removeAllFetchGroups()` are internally serialized.

  Parameters:
    `groups` - an array of FetchGroups
  Throws:
    `java.lang.SecurityException` - if the caller is not authorized for `JDOPermission` ("manageMetadata")
  Since:
    2.2

### removeAllFetchGroups

    void removeAllFetchGroups()

  Remove all `FetchGroup`s from the set of active `FetchGroup`s. All removed `FetchGroup`s become unscoped. The methods `addFetchGroups(javax.jdo.FetchGroup...)`, `removeFetchGroups(javax.jdo.FetchGroup...)`, `getFetchGroups()`, and `removeAllFetchGroups()` are internally serialized.

  Throws:
    `java.lang.SecurityException` - if the caller is not authorized for `JDOPermission` ("manageMetadata")
  Since:
    2.2

### getFetchGroup

    FetchGroup getFetchGroup(java.lang.Class cls,
                             java.lang.String name)

  Create an unscoped, modifiable `FetchGroup` for the Class and name. If a corresponding `FetchGroup` already exists in `PersistenceManagerFactory` scope, copy its definition to a new `FetchGroup`. If the `FetchGroup` does not already exist, create it with no members. The `FetchGroup` does not become in scope until it is added to the current set via `addFetchGroups(javax.jdo.FetchGroup...)`.

  Parameters:
    `cls` - the class or interface for the FetchGroup
    `name` - the name of the fetch group
  Returns:
    the FetchGroup
  Throws:
    `JDOUserException` - if the class is not a persistence-capable class or interface
  Since:
    2.2

### getFetchGroups

    java.util.Set getFetchGroups()

  Get a modifiable Set containing a mutable copy of all currently active (in scope) fetch groups. The methods `addFetchGroups(javax.jdo.FetchGroup...)`, `removeFetchGroups(javax.jdo.FetchGroup...)`, `getFetchGroups()`, and `removeAllFetchGroups()` are internally serialized.

  Returns:
    a copy of all currently active fetch groups
  Throws:
    `java.lang.SecurityException` - if the caller is not authorized for `JDOPermission` ("getMetadata")
  Since:
    2.2

### registerMetadata

    void registerMetadata(JDOMetadata metadata)

  Method to register metadata with the persistence process managed by this `PersistenceManagerFactory`. Metadata can be created using the method `newMetadata()`. If there is already metadata registered for a class contained in this metadata object then a JDOUserException will be thrown.

  Parameters:
    `metadata` - The Metadata to register.
  Since:
    3.0

### newMetadata

    JDOMetadata newMetadata()

  Method to return a new metadata object that can be subsequently modified and registered with the persistence process using the method `registerMetadata(javax.jdo.metadata.JDOMetadata)`.

  Returns:
    The metadata
  Since:
    3.0

### getMetadata

    TypeMetadata getMetadata(java.lang.String className)

  Method to return the metadata object for the specified class/interface, if there is metadata defined for that class/interface. If there is no metadata for the specified class/interface, or the parameter is null, then null will be returned.

  Returns:
    The metadata
  Since:
    3.0

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2005-2011 Apache Software Foundation. All Rights Reserved.