summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank Schoenheit [fs] <frank.schoenheit@sun.com>2010-02-01 21:32:33 +0100
committerFrank Schoenheit [fs] <frank.schoenheit@sun.com>2010-02-01 21:32:33 +0100
commitcd6abead393fa3f4edef8ac056dd8e548d7cf3d1 (patch)
treeec6691f8579026768f147ad64e440c4f4e1b170c
parent923e15dd7d61770613e0d7c5c2a15695c95b606c (diff)
autorecovery: more sophisticated configuration data for interaction handlers
The generic css.task.InteractionHandler implementation in module uui is now able to instantiate "sub handlers", i.e. components to delegate a request to, based on the type of the request, and some configuration data. The "old" (and now deprecated) configuration scheme at org.openoffice.ucb.InteractionHandler did not contain type information, so any handlers registered there were always called when no default implementation for a given request was available. The "new" configuration scheme at org.openoffice.Interaction contains UNO type information. That is, a given handler implementation can declare itself responsible for an arbitrary set of UNO types, and for each of those types, whether it is also responsible for sub types. The generic interaction handler implementation uses this configuration data, when it encounteres an interaction request it cannot fullfill itself, to instantiate a component to delegate the request to. As with the "old" data, such a component is required to support the css.task.XInteractionHandler2 interface. Also, if it supports css.lang.XInitialization, then it will be initialized with a name-value pair, the name being "Parent", the value being the XWindow interface of the parent window for any message boxes. As an examplary implementation for this feature, the css.sdb.InteractionHandler has been deprecated. Now the css.sdb.DatabaseInteractionHandler is reponsible for database-related interactions, and the new configuration scheme is pre-filled with data assigning this responsibility. Consequently, a lot of places previously creating an css.sdb.InteractionHandler have been modified to create the default css.task.InteractionHandler.
-rw-r--r--extensions/source/abpilot/datasourcehandling.cxx2
-rw-r--r--extensions/source/bibliography/datman.cxx2
-rw-r--r--extensions/source/dbpilots/controlwizard.cxx2
-rw-r--r--extensions/source/dbpilots/controlwizard.hxx2
-rw-r--r--wizards/com/sun/star/wizards/db/DBMetaData.java4
-rw-r--r--wizards/com/sun/star/wizards/db/RecordParser.java2
-rw-r--r--wizards/source/formwizard/DBMeta.xba2
7 files changed, 8 insertions, 8 deletions
diff --git a/extensions/source/abpilot/datasourcehandling.cxx b/extensions/source/abpilot/datasourcehandling.cxx
index 14ad3543ac51..a33133916219 100644
--- a/extensions/source/abpilot/datasourcehandling.cxx
+++ b/extensions/source/abpilot/datasourcehandling.cxx
@@ -565,7 +565,7 @@ namespace abp
// ................................................................
// create the interaction handler (needed for authentication and error handling)
- static ::rtl::OUString s_sInteractionHandlerServiceName = ::rtl::OUString::createFromAscii("com.sun.star.sdb.InteractionHandler");
+ static ::rtl::OUString s_sInteractionHandlerServiceName = ::rtl::OUString::createFromAscii("com.sun.star.task.InteractionHandler");
Reference< XInteractionHandler > xInteractions;
try
{
diff --git a/extensions/source/bibliography/datman.cxx b/extensions/source/bibliography/datman.cxx
index 5a95f61f50c1..754fdc53f01b 100644
--- a/extensions/source/bibliography/datman.cxx
+++ b/extensions/source/bibliography/datman.cxx
@@ -150,7 +150,7 @@ Reference< XConnection > getConnection(const ::rtl::OUString& _rURL)
try
{
- Reference<XInterface> xHdl = xMgr->createInstance(C2U("com.sun.star.sdb.InteractionHandler"));
+ Reference<XInterface> xHdl = xMgr->createInstance(C2U("com.sun.star.task.InteractionHandler"));
Reference<task::XInteractionHandler> xIHdl(xHdl, UNO_QUERY);
xConn = xComplConn->connectWithCompletion(xIHdl);
// xConn = xDataSource->getConnection(sUser, sPwd);
diff --git a/extensions/source/dbpilots/controlwizard.cxx b/extensions/source/dbpilots/controlwizard.cxx
index 169286a19a5f..d96876258d8d 100644
--- a/extensions/source/dbpilots/controlwizard.cxx
+++ b/extensions/source/dbpilots/controlwizard.cxx
@@ -521,7 +521,7 @@ namespace dbp
//---------------------------------------------------------------------
Reference< XInteractionHandler > OControlWizard::getInteractionHandler(Window* _pWindow) const
{
- const ::rtl::OUString sInteractionHandlerServiceName = ::rtl::OUString::createFromAscii("com.sun.star.sdb.InteractionHandler");
+ const ::rtl::OUString sInteractionHandlerServiceName = ::rtl::OUString::createFromAscii("com.sun.star.task.InteractionHandler");
Reference< XInteractionHandler > xHandler;
try
{
diff --git a/extensions/source/dbpilots/controlwizard.hxx b/extensions/source/dbpilots/controlwizard.hxx
index d50cc8e0b8df..0facd1672de8 100644
--- a/extensions/source/dbpilots/controlwizard.hxx
+++ b/extensions/source/dbpilots/controlwizard.hxx
@@ -148,7 +148,7 @@ namespace dbp
::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >
getFormConnection(const OAccessRegulator&) const;
- /** returns the com.sun.star.sdb.InteractionHandler
+ /** returns the com.sun.star.task.InteractionHandler
@param _pWindow The window will be used when an error message has to be shown.
*/
::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler > getInteractionHandler(Window* _pWindow) const;
diff --git a/wizards/com/sun/star/wizards/db/DBMetaData.java b/wizards/com/sun/star/wizards/db/DBMetaData.java
index 2a7151cd1135..1c934b83f0d5 100644
--- a/wizards/com/sun/star/wizards/db/DBMetaData.java
+++ b/wizards/com/sun/star/wizards/db/DBMetaData.java
@@ -220,7 +220,7 @@ public class DBMetaData
this.xMSF = xMSF;
xDatabaseContext = (XInterface) xMSF.createInstance("com.sun.star.sdb.DatabaseContext");
xNameAccess = (XNameAccess) UnoRuntime.queryInterface(XNameAccess.class, xDatabaseContext);
- XInterface xInteractionHandler = (XInterface) xMSF.createInstance("com.sun.star.sdb.InteractionHandler");
+ XInterface xInteractionHandler = (XInterface) xMSF.createInstance("com.sun.star.task.InteractionHandler");
oInteractionHandler = (XInteractionHandler) UnoRuntime.queryInterface(XInteractionHandler.class, xInteractionHandler);
DataSourceNames = xNameAccess.getElementNames();
}
@@ -722,7 +722,7 @@ public class DBMetaData
}
else
{
- XInterface xInteractionHandler = (XInterface) xMSF.createInstance("com.sun.star.sdb.InteractionHandler");
+ XInterface xInteractionHandler = (XInterface) xMSF.createInstance("com.sun.star.task.InteractionHandler");
XInteractionHandler oInteractionHandler2 = (XInteractionHandler) UnoRuntime.queryInterface(XInteractionHandler.class, xInteractionHandler);
boolean bExitLoop = true;
do
diff --git a/wizards/com/sun/star/wizards/db/RecordParser.java b/wizards/com/sun/star/wizards/db/RecordParser.java
index cf2853861ccd..fccfe7e4d1f6 100644
--- a/wizards/com/sun/star/wizards/db/RecordParser.java
+++ b/wizards/com/sun/star/wizards/db/RecordParser.java
@@ -84,7 +84,7 @@ public class RecordParser extends QueryMetaData
xRowSetColumnsSupplier = (XColumnsSupplier) UnoRuntime.queryInterface(XColumnsSupplier.class, xRowSet);
xRowSetComponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, xRowSet);
xExecute = (com.sun.star.sdb.XCompletedExecution) UnoRuntime.queryInterface(com.sun.star.sdb.XCompletedExecution.class, xRowSet);
- XInterface oInteraction = (XInterface) xMSF.createInstance("com.sun.star.sdb.InteractionHandler");
+ XInterface oInteraction = (XInterface) xMSF.createInstance("com.sun.star.task.InteractionHandler");
xInteraction = (XInteractionHandler) UnoRuntime.queryInterface(XInteractionHandler.class, oInteraction);
}
catch (Exception exception)
diff --git a/wizards/source/formwizard/DBMeta.xba b/wizards/source/formwizard/DBMeta.xba
index f4ac2bbb7fb0..2d8dc2838f5c 100644
--- a/wizards/source/formwizard/DBMeta.xba
+++ b/wizards/source/formwizard/DBMeta.xba
@@ -86,7 +86,7 @@ Dim Nulllist()
oDBConnection = oDBContext.GetByName(sDBName).GetConnection(&quot;&quot;,&quot;&quot;)
GetConnection() = True
Else
- oInteractionHandler = createUnoService(&quot;com.sun.star.sdb.InteractionHandler&quot;)
+ oInteractionHandler = createUnoService(&quot;com.sun.star.task.InteractionHandler&quot;)
oDataSource = oDBContext.GetByName(sDBName)
On Local Error Goto NOCONNECTION
Do