RepositoryConfig Class
- public class RepositoryConfig
extends Object
Represents the configuration of a content repository. Each Repository may have
specific properties that are necessary in order to be properly configured. Please
see the specific repositories documentation for configuration information.
****************WARNING****************
When getting binaries from the BEA Repository (including
both a binary Node Property and also a binary PropertyChoice) the default is to return
the InputStream as a ByteArrayInputStream, thus consuming server memory until the
bytes are released. If your application will be reading in very large files, you
may switch to streaming mode. This means that the InputStream returned may read directly
from a database resource, depending on the database or driver.
This is accomplished by creating a property
on the RepositoryConfig called "STREAMING_ENABLED" with the value set to "true".
To disable streaming you must remove the "STREAMING_ENABLED" property entirely.
Switching to streaming mode must be done with caution as it places additional
requirements on developers using the api. The issue is that the InputStream
through a BLOB, may be attached to a database connection
(or other transactional resource). The use of this stream must therefore be
within the context of a transaction to ensure that it is isolated from uses by other threads, etc.
If you don't begin a UserTransaction before calling this method
and then either commit or rollback the tx after you close the InputStream,
the connection may go back to the WLS connection Pool and will be
reused by another thread. This will lead to deadlocking the server.
All of the BEA code that uses the api (tags, servlets, portlets and admin tools) are all protected
through the use of a transaction. For those that are calling the API directly,
here is an example of wrapping the call in a tx with exception handling left out
try {
Context initCtx = new InitialContext();
tx = (UserTransaction)initCtx.lookup( "java:comp/UserTransaction" );
tx.setTransactionTimeout( transactionTimeout );
tx.begin();
bytes = nodeOps.getPropertyBytes(nodeId, propertyId);
// empty the bytes
}
finally {
// make sure to close InputStream
if ( bytes != null ) {
bytes.close();
}
if ( tx != null ) {
switch ( tx.getStatus() ) {
case Status.STATUS_ACTIVE:
tx.commit();
break;
case Status.STATUS_MARKED_ROLLBACK:
tx.rollback();
break;
default:
// this is bad - an unexpected status
// throw exception
break;
}
}
}
-
Hierarchy
-
Object
RepositoryConfig
-
RepositoryConfig(
String name, String className, Properties properties, String userName, String password, boolean readOnly, int nodeCacheMaxEntries, long nodeCacheTtl, boolean nodeCacheIsEnabled, int binaryCacheMaxEntries, long binaryCacheMaxEntrySize, long binaryCacheTtl, boolean binaryCacheIsEnabled)
- Constructs an instance using all attributes.
|
-
RepositoryConfig(
String name, String className, Properties properties)
- Constructs an instance with just name, className and properties using
the defined DEFAULTS for other attributes.
|
-
RepositoryConfig(
String name)
- Constructs an instance with just name using
the defined DEFAULTS for other attributes.
|
DEFAULT_BINARY_CACHE_IS_ENABLED
public static final boolean DEFAULT_BINARY_CACHE_IS_ENABLED
DEFAULT_BINARY_CACHE_MAX_ENTRIES
public static final int DEFAULT_BINARY_CACHE_MAX_ENTRIES
DEFAULT_BINARY_CACHE_MAX_ENTRY_SIZE
public static final long DEFAULT_BINARY_CACHE_MAX_ENTRY_SIZE
DEFAULT_BINARY_CACHE_TTL
public static final long DEFAULT_BINARY_CACHE_TTL
DEFAULT_CLASS_NAME
public static final String
DEFAULT_CLASS_NAME
DEFAULT_NODE_CACHE_IS_ENABLED
public static final boolean DEFAULT_NODE_CACHE_IS_ENABLED
DEFAULT_NODE_CACHE_MAX_ENTRIES
public static final int DEFAULT_NODE_CACHE_MAX_ENTRIES
DEFAULT_NODE_CACHE_TTL
public static final long DEFAULT_NODE_CACHE_TTL
DEFAULT_NODE_OPS_HOME
public static final String
DEFAULT_NODE_OPS_HOME
DEFAULT_OBJECT_CLASS_OPS_HOME
public static final String
DEFAULT_OBJECT_CLASS_OPS_HOME
DEFAULT_READ_ONLY
public static final boolean DEFAULT_READ_ONLY
DEFAULT_SEARCH_OPS_HOME
public static final String
DEFAULT_SEARCH_OPS_HOME
FILESYSTEM_CLASS_NAME
public static final String
FILESYSTEM_CLASS_NAME
FILESYSTEM_DIRECTORY_KEY
public static final String
FILESYSTEM_DIRECTORY_KEY
FILESYSTEM_IS_LINKED
public static final String
FILESYSTEM_IS_LINKED
FILESYSTEM_NIO
public static final String
FILESYSTEM_NIO
FILESYSTEM_WEBAPP_KEY
public static final String
FILESYSTEM_WEBAPP_KEY
MANAGEMENT_ENABLED_KEY
public static final String
MANAGEMENT_ENABLED_KEY
STREAMING_ENABLED_KEY
public static final String
STREAMING_ENABLED_KEY
RepositoryConfig
public RepositoryConfig(String
name,
String
className,
Properties
properties,
String
userName,
String
password,
boolean readOnly,
int nodeCacheMaxEntries,
long nodeCacheTtl,
boolean nodeCacheIsEnabled,
int binaryCacheMaxEntries,
long binaryCacheMaxEntrySize,
long binaryCacheTtl,
boolean binaryCacheIsEnabled)
- Constructs an instance using all attributes.
RepositoryConfig
public RepositoryConfig(String
name,
String
className,
Properties
properties)
- Constructs an instance with just name, className and properties using
the defined DEFAULTS for other attributes.
RepositoryConfig
public RepositoryConfig(String
name)
- Constructs an instance with just name using
the defined DEFAULTS for other attributes.
getBinaryCacheIsEnabled() Method
public boolean getBinaryCacheIsEnabled()
Gets the active state for the binary cache of a repository.
getBinaryCacheMaxEntries() Method
public int getBinaryCacheMaxEntries()
Gets the max entries for the binary cache of a repository.
getBinaryCacheMaxEntrySize() Method
public long getBinaryCacheMaxEntrySize()
Gets the max size for the binary cache of a repository.
getBinaryCacheTtl() Method
public long getBinaryCacheTtl()
Gets the time-to-live for entries in a binary cache of a repository.
getClassName() Method
public String
getClassName()
The class that implements com.bea.content.repostiory.Repository.
getName() Method
public String
getName()
The name of the Repository.
getNodeCacheIsEnabled() Method
public boolean getNodeCacheIsEnabled()
Gets the active state for the node cache of a repository.
getNodeCacheMaxEntries() Method
public int getNodeCacheMaxEntries()
Gets the max entries for the node cache of a repository.
getNodeCacheTtl() Method
public long getNodeCacheTtl()
Gets the time-to-live for entries in a node cache of a repository.
getPassword() Method
public String
getPassword()
Gets the password for the repository.
getProperties() Method
public Properties
getProperties()
Gets the configuration properties for the repository.
getReadOnly() Method
public boolean getReadOnly()
Gets the read-only attribute for the repository.
getUserName() Method
public String
getUserName()
Gets the username for the repository.
isManaged() Method
public boolean isManaged()
True if this repository is versionable, false otherwise.
isStreamable() Method
public boolean isStreamable()
True if this repository is versionable, false otherwise.
toString() Method
public String
toString()
Gets attributes as String.
-
Overrides
-
Object.toString()