public class DALImpl extends JDALPOA implements Recoverer
WDALBaseImpl.
It only adds the implementation of the WDALOperations methods.| Modifier and Type | Class and Description |
|---|---|
static class |
DALImpl.Filter
Filter which selects all xsd files in the root/schemas directory.
|
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
EXTERNAL_SCHEMA_LOCATION_PROPERTY_ID
Property for setting the mapping of URIs to XML schemas.
|
static java.lang.String |
SCHEMA_VALIDATION_FEATURE_ID
Schema validation feature id (http://apache.org/xml/features/validation/schema).
|
protected java.util.concurrent.atomic.AtomicLong |
totalDALInvocationCounter |
static java.lang.String |
USE_XSD_CACHE_PROPERTYNAME
The XSD cache may have additional bad side effects (one was a failure with xinclude which has been fixed),
so we only use it if this property is set to true to switch it off easily in case of problems.
|
boolean |
useXsdCache |
| Modifier and Type | Method and Description |
|---|---|
int |
add_change_listener(DALChangeListener listener) |
protected void |
cleanListenedCurls()
Cleans listened curls from invalid listeners
to avoid repeatedly calling invalid listeners
|
void |
clear_cache_all() |
void |
clear_cache(java.lang.String curl) |
java.lang.String |
configuration_name() |
DAO |
get_DAO_Servant(java.lang.String curl)
create DAO servant with requested XML
|
java.lang.String |
get_DAO(java.lang.String curl)
returns full expanded XML string
|
LogLevels |
get_default_logLevels()
Gets the log levels of the default logging configuration.
|
java.lang.String[] |
get_logger_names()
Gets the names of all loggers, to allow configuring their levels
individually.
|
LogLevels |
get_logLevels(java.lang.String logger_name)
Gets log levels for a particular named logger.
|
static void |
getFiles(java.lang.String filePath,
java.util.LinkedHashMap<java.lang.String,java.lang.String> map)
Adds all *.xsd files from filePath directory
if file already exists in map it is skipped
|
java.lang.String |
getRecordPath(java.lang.String curl) |
javax.xml.parsers.SAXParser |
getSaxParser() |
static java.lang.String |
getSchemas(java.lang.String root,
java.util.logging.Logger logger)
returns string of URIs separated by ' ' for all schema files in root/schemas and
directories list given by ACS.cdbpath environment variable
This method is public static to be used more easily in the HibernateDAL
(com.cosylab.cdb.jdal.XSDElementTypeResolver#initializeParser())
|
protected java.io.File |
getStorageFile() |
java.lang.String |
internal_get_DAO(java.lang.String curl,
boolean precacheStage)
returns full expanded XML string
|
boolean |
isShutdown() |
java.lang.String |
list_daos(java.lang.String name) |
java.lang.String |
list_nodes(java.lang.String name) |
void |
listen_for_changes(java.lang.String curl,
int listenerID) |
void |
loadFactory() |
void |
loadListeners() |
XMLHandler |
loadRecords(java.lang.String curl,
boolean toString)
Returns a xml constructed of all records below given curl
|
protected void |
object_changed(java.lang.String curl) |
void |
parseNode(DALNode node,
XMLHandler xmlSolver,
java.lang.String path) |
void |
recoverClients()
Recovery related implementation.
|
void |
refresh_logging_config()
Commands the container or manager to read in again the logging
configuration from the CDB and to reconfigure the loggers accordingly.
|
void |
remove_change_listener(int listenerID) |
boolean |
saveListeners() |
void |
set_default_logLevels(LogLevels levels)
Sets the log levels of the default logging configuration.
|
void |
set_logLevels(java.lang.String logger_name,
LogLevels levels)
Sets log levels for a particular named logger.
|
void |
shutdown() |
void |
shutdownEmbeddedDALImpl() |
boolean |
wasCacheLimitReached() |
public static final java.lang.String SCHEMA_VALIDATION_FEATURE_ID
public static final java.lang.String EXTERNAL_SCHEMA_LOCATION_PROPERTY_ID
public static final java.lang.String USE_XSD_CACHE_PROPERTYNAME
public final boolean useXsdCache
protected final java.util.concurrent.atomic.AtomicLong totalDALInvocationCounter
public void loadFactory()
public void recoverClients()
recoveryRead variable.recoverClients in interface Recovererpublic static java.lang.String getSchemas(java.lang.String root,
java.util.logging.Logger logger)
public static void getFiles(java.lang.String filePath,
java.util.LinkedHashMap<java.lang.String,java.lang.String> map)
public java.lang.String getRecordPath(java.lang.String curl)
public void parseNode(DALNode node, XMLHandler xmlSolver, java.lang.String path) throws org.xml.sax.SAXException, java.io.IOException, AcsJCDBXMLErrorEx
org.xml.sax.SAXExceptionjava.io.IOExceptionAcsJCDBXMLErrorExpublic XMLHandler loadRecords(java.lang.String curl, boolean toString) throws AcsJCDBRecordDoesNotExistEx, AcsJCDBXMLErrorEx
curl - toString - AcsJCDBRecordDoesNotExistExAcsJCDBXMLErrorExpublic boolean wasCacheLimitReached()
public java.lang.String get_DAO(java.lang.String curl)
throws CDBRecordDoesNotExistEx,
CDBXMLErrorEx
CDBRecordDoesNotExistExCDBXMLErrorExpublic java.lang.String internal_get_DAO(java.lang.String curl,
boolean precacheStage)
throws CDBRecordDoesNotExistEx,
CDBXMLErrorEx
CDBRecordDoesNotExistExCDBXMLErrorExpublic DAO get_DAO_Servant(java.lang.String curl)
throws CDBRecordDoesNotExistEx,
CDBXMLErrorEx
CDBRecordDoesNotExistExCDBXMLErrorExpublic void shutdown()
public void shutdownEmbeddedDALImpl()
protected void object_changed(java.lang.String curl)
curl - protected java.io.File getStorageFile()
public void loadListeners()
public boolean saveListeners()
public int add_change_listener(DALChangeListener listener)
public void listen_for_changes(java.lang.String curl,
int listenerID)
public void remove_change_listener(int listenerID)
protected void cleanListenedCurls()
public void clear_cache(java.lang.String curl)
public void clear_cache_all()
public java.lang.String list_nodes(java.lang.String name)
public java.lang.String list_daos(java.lang.String name)
public java.lang.String configuration_name()
public javax.xml.parsers.SAXParser getSaxParser()
public boolean isShutdown()
public LogLevels get_default_logLevels()
public void set_default_logLevels(LogLevels levels)
throws IllegalLogLevelsEx
IllegalLogLevelsExpublic java.lang.String[] get_logger_names()
The returned logger names are randomly ordered.
public LogLevels get_logLevels(java.lang.String logger_name)
throws LoggerDoesNotExistEx
For possible convenience, the default levels are returned in addition to
setting LogLevels#useDefault to true.
LoggerDoesNotExistExpublic void set_logLevels(java.lang.String logger_name,
LogLevels levels)
throws LoggerDoesNotExistEx,
IllegalLogLevelsEx
LoggerDoesNotExistExIllegalLogLevelsExpublic void refresh_logging_config()
Note that unlike for the logging initialization in #initialize(),
now we give precedence to the CDB values over any previous settings.