[Mondrian] olap4j xmla driver and XmlaExtra

Julian Hyde jhyde at pentaho.com
Thu Apr 14 14:25:59 EDT 2011

The purpose of XmlaExtra is to allow XmlaHandler (i.e. the XMLA server) to
get information from Mondrian that is not available via the olap4j API.
I've not tried to call unwrap(XmlaExtra.class) on an XmlaOlap4jConnection.
This would only happen if you are building an XMLA server as a proxy to
another XMLA server. That's not wrong, but it's not a use case I've tested.
The "correct" thing to do would be to implement an XmlaExtra that gets the
necessary information from the underlying XMLA server. It would be
straightforward to implement that class, but I can see that it would
introduce some awkward dependencies (olap4j xmla driver would depend on
mondrian xmla server -- yuck).
I think it would be OK if XmlaHandler.getExtra returned an XmlaExtraImpl if
connection.unwrap(XmlaExtra.class) threw a SQLException. It should log the
exception first, though.


From: mondrian-bounces at pentaho.org [mailto:mondrian-bounces at pentaho.org] On
Behalf Of Michele Rossi
Sent: Wednesday, April 13, 2011 8:32 AM
To: Mondrian developer mailing list
Subject: [Mondrian] olap4j xmla driver and XmlaExtra


org.olap4j.driver.xmla.XmlaOlap4jConnection's "unwrap" throws an exception
if you try to unwrap a XmlaExtra from it.

I am not sure that's the correct behaviour since it makes method
mondrian.xmla.XmlaHandler.getExtra(OlapConnection) fail too rather than
making it default to XmlaExtraImpl. 

Any thoughts?


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20110414/1c61cc85/attachment.html 

More information about the Mondrian mailing list