|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.ihr.xbrl.dataloader.target.SQLDriver
public class SQLDriver
This driver loads data in an SQL repository responding to load events generated by the loader engine.
The configuration file is read when init() method is called.
The configuration file provides initial data to open a connection to the database.
The connection to the database is created at the time the loader
calls createNewResult(Processor) method.
A new transaction is started when the loader calls startOfDocument(XBRLInstance)
The configuration file must have one SQL statement per identifier. The SQL statement may have parts that will be replaced by the result of XPath expressions. The XPath expressions will be evaluated at the time the event is produced and in order to complete the SQL expression. The XPath expression will contain some environmental variables that facilitates access to parts of the DTS.
The transaction is closed when the loader calls endOfDocument()
| Nested Class Summary | |
|---|---|
static class |
SQLDriver.SQLIdentifier
This class is the object that contains the identifier and the SQL text with XPath sentences to parameterize the final SQL statement |
static class |
SQLDriver.SQLTransformationResult
This is the result of the execution of the SQL procedures |
| Constructor Summary | |
|---|---|
SQLDriver()
|
|
| Method Summary | |
|---|---|
XBRLTransformationResult |
createNewResult(net.sf.saxon.s9api.Processor configuration)
Creates a new document container. |
void |
endOfDocument()
Called by the transformation processor to indicate the end of a document processing Usually a document footer is produced. |
java.net.URI |
getConfigFile()
Returns back the URI of the configuration file |
void |
init()
This method is called by the loader just after object has been created and if a configuration file is set (which is an optional step only if configuration file is indicated as a parameter) This method should read the configuration file and set values for constants and things like that. |
void |
processContexts(java.util.Iterator<XBRLContext> contexts)
Called by the transformation processor to provide the contexts for the data that will be found later during the processing of facts the default process updates the content of some variables. or calculates number of columns, rows. |
void |
processFact(java.lang.String identifier,
XBRLFact fact)
Called by the processor to inform about a new fact that requires processing. |
void |
setConfigFile(java.net.URI uriConfigFile)
This method is called by the loader when a new loader is just created and for each one of the drivers that exist on the loader configuration file and only if the driver has a parameter indicating the URL of the configuration file Next call is XBRLLoaderInterface.init() |
void |
startOfDocument(XBRLInstance instance)
Called by the transformation processor to indicate the start of a new document. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SQLDriver()
| Method Detail |
|---|
public void init()
throws LoaderConfigurationFileException
XBRLLoaderInterfaceXBRLLoaderInterface.createNewResult(Processor)
init in interface XBRLLoaderInterfaceLoaderConfigurationFileExceptionpublic void setConfigFile(java.net.URI uriConfigFile)
XBRLLoaderInterfaceXBRLLoaderInterface.init()
setConfigFile in interface XBRLLoaderInterface
public XBRLTransformationResult createNewResult(net.sf.saxon.s9api.Processor configuration)
throws FactHandlerException
XBRLLoaderInterfaceXBRLLoaderInterface.startOfDocument(XBRLInstance)
createNewResult in interface XBRLLoaderInterfaceconfiguration - Saxon s9api Processor object
FactHandlerException - if anything goes wrong.
public void startOfDocument(XBRLInstance instance)
throws FactHandlerException
XBRLLoaderInterfaceXBRLLoaderInterface.processContexts(Iterator)
startOfDocument in interface XBRLLoaderInterfaceFactHandlerExceptionpublic void processContexts(java.util.Iterator<XBRLContext> contexts)
XBRLLoaderInterfaceXBRLLoaderInterface.processFact(String, XBRLFact) for facts that passes
the filters established by the loader engine and are the true loading events.
processContexts in interface XBRLLoaderInterfacecontexts - Iterator<XBRLContext>
public void processFact(java.lang.String identifier,
XBRLFact fact)
throws FactHandlerException
XBRLLoaderInterfaceXBRLLoaderInterface.endOfDocument() when the instance document is finished and no more
events needs to be generated
processFact in interface XBRLLoaderInterfaceidentifier - as String which is the identifier code in the loader configuration file.fact - XBRLFact the loaded fact
FactHandlerException - if something goes wrong.
public void endOfDocument()
throws FactHandlerException
XBRLLoaderInterface
endOfDocument in interface XBRLLoaderInterfaceFactHandlerException - if something goes wrongpublic java.net.URI getConfigFile()
XBRLLoaderInterface
getConfigFile in interface XBRLLoaderInterface
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||