|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmondrian.tui.XmlaSupport
public class XmlaSupport
This files provide support for making XMLA requests and looking at the responses.
Field Summary | |
---|---|
static java.lang.String |
CATALOG_NAME
|
static java.lang.String |
DATASOURCE_DESCRIPTION
|
static java.lang.String |
DATASOURCE_INFO
|
static java.lang.String |
DATASOURCE_NAME
|
static java.util.Map<java.lang.String,java.lang.String> |
ENV
|
static java.lang.String |
nl
|
static java.lang.String |
ROW_SET_PREFIX
This is the prefix used in xpath and transforms for the xmla rowset namespace "urn:schemas-microsoft-com:xml-analysis:rowset". |
static java.lang.String |
SOAP_PREFIX
|
Method Summary | |
---|---|
static org.w3c.dom.Document |
extractBodyFromSoap(org.w3c.dom.Document doc)
|
static org.w3c.dom.Node[] |
extractFaultNodesFromSoap(byte[] bytes)
|
static org.w3c.dom.Node[] |
extractFaultNodesFromSoap(org.w3c.dom.Document doc)
|
static org.w3c.dom.Node[] |
extractHeaderAndBodyFromSoap(byte[] bytes)
|
static org.w3c.dom.Node[] |
extractHeaderAndBodyFromSoap(org.w3c.dom.Document doc)
|
static org.w3c.dom.Node[] |
extractNodes(org.w3c.dom.Node node,
java.lang.String xpath,
java.lang.String[][] nsArray)
Given a Document and an xpath/namespace-array pair, extract and return the Nodes resulting from applying the xpath. |
static org.w3c.dom.Node[] |
extractNodesFromSoapXmla(byte[] bytes)
|
static org.w3c.dom.Node[] |
extractNodesFromSoapXmla(org.w3c.dom.Document doc)
|
static org.w3c.dom.Node[] |
extractNodesFromXmla(byte[] bytes)
|
static org.w3c.dom.Node[] |
extractNodesFromXmla(org.w3c.dom.Document doc)
|
static CatalogLocator |
getCatalogLocator()
|
static DataSourcesConfig.DataSources |
getDataSources(java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls)
|
static java.lang.String |
getDataSourcesText(java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls)
With a connection string, generate the DataSource xml. |
static java.lang.String |
getSoapBodyXPath()
|
static java.lang.String |
getSoapFaultXPath()
|
static java.lang.String |
getSoapHeaderAndBodyXPath()
|
static java.lang.String |
getSoapXmlaRootXPath(java.lang.String xmlaPrefix)
|
static java.lang.String |
getXmlaRootXPath(java.lang.String xmlaPrefix)
|
static java.lang.String |
getXmlaTransform(java.lang.String xmlaPrefix)
This is a parameterized XSLT. |
static Servlet |
makeServlet(java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
java.lang.String cbClassName)
|
static byte[] |
processSoapXmla(org.w3c.dom.Document doc,
Servlet servlet)
|
static byte[] |
processSoapXmla(org.w3c.dom.Document doc,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
java.lang.String cbClassName)
|
static byte[] |
processSoapXmla(java.io.File file,
Servlet servlet)
|
static byte[] |
processSoapXmla(java.io.File file,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
java.lang.String cbClassName)
Process the given input file as a SOAP-XMLA request. |
static byte[] |
processSoapXmla(java.lang.String requestText,
Servlet servlet)
|
static byte[] |
processSoapXmla(java.lang.String requestText,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
java.lang.String cbClassName)
|
static byte[] |
processXmla(org.w3c.dom.Document requestDoc,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls)
|
static byte[] |
processXmla(org.w3c.dom.Document requestDoc,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
Role role)
|
static byte[] |
processXmla(org.w3c.dom.Element requestElem,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls)
|
static byte[] |
processXmla(org.w3c.dom.Element requestElem,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
Role role)
|
static byte[] |
processXmla(java.io.File file,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls)
Processes the given input file as an XMLA request (no SOAP elements). |
static byte[] |
processXmla(java.io.File file,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
Role role)
|
static byte[] |
processXmla(java.lang.String requestText,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls)
|
static byte[] |
processXmla(java.lang.String requestText,
java.lang.String connectString,
java.util.Map<java.lang.String,java.lang.String> catalogNameUrls,
Role role)
|
static java.lang.String |
readFile(java.io.File file)
Reads a file line by line, adds a '\n' after each line and returns in a String. |
static org.w3c.dom.Document |
transformSoapXmla(org.w3c.dom.Document doc,
java.lang.String[][] namevalueParameters,
java.lang.String ns)
|
static boolean |
validateEmbeddedSchema(byte[] bytes,
java.lang.String schemaTransform,
java.lang.String dataTransform)
See next method for JavaDoc validateEmbeddedSchema(org.w3c.dom.Document, String, String) . |
static boolean |
validateEmbeddedSchema(org.w3c.dom.Document doc,
java.lang.String schemaTransform,
java.lang.String dataTransform)
A given Document has both content and an embedded schema (where the schema has a single root node and the content has a single root node - they are not interwoven). |
static boolean |
validateNodes(org.w3c.dom.Node[] nodes)
Validate Nodes with throws an error if validation was attempted but failed, returns true if validation was successful and false if validation was not tried. |
static boolean |
validateSchemaSoapXmla(byte[] bytes)
Check is a byte array containing a SOAP-XMLA response method is valid. |
static boolean |
validateSchemaXmla(byte[] bytes)
Check is a byte array containing a XMLA response method is valid. |
static boolean |
validateSoapXmlaUsingXpath(byte[] bytes)
This validates a SOAP-XMLA response using xpaths to extract the schema and data parts. |
static boolean |
validateXmlaUsingXpath(byte[] bytes)
This validates a XMLA response using xpaths to extract the schema and data parts. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String nl
public static final java.lang.String SOAP_PREFIX
public static final java.lang.String CATALOG_NAME
public static final java.lang.String DATASOURCE_NAME
public static final java.lang.String DATASOURCE_DESCRIPTION
public static final java.lang.String DATASOURCE_INFO
public static final java.util.Map<java.lang.String,java.lang.String> ENV
public static final java.lang.String ROW_SET_PREFIX
Method Detail |
---|
public static java.lang.String getXmlaTransform(java.lang.String xmlaPrefix)
public static CatalogLocator getCatalogLocator()
public static DataSourcesConfig.DataSources getDataSources(java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls) throws XOMException
XOMException
public static java.lang.String getDataSourcesText(java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls)
connectString
- Connect stringcatalogNameUrls
- array of catalog names, catalog url pairspublic static java.lang.String getSoapFaultXPath()
public static java.lang.String getSoapHeaderAndBodyXPath()
public static java.lang.String getSoapBodyXPath()
public static java.lang.String getSoapXmlaRootXPath(java.lang.String xmlaPrefix)
public static java.lang.String getXmlaRootXPath(java.lang.String xmlaPrefix)
public static org.w3c.dom.Node[] extractNodesFromSoapXmla(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractNodesFromSoapXmla(org.w3c.dom.Document doc) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractNodesFromXmla(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractNodesFromXmla(org.w3c.dom.Document doc) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractFaultNodesFromSoap(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractFaultNodesFromSoap(org.w3c.dom.Document doc) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractHeaderAndBodyFromSoap(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractHeaderAndBodyFromSoap(org.w3c.dom.Document doc) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Document extractBodyFromSoap(org.w3c.dom.Document doc) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static org.w3c.dom.Node[] extractNodes(org.w3c.dom.Node node, java.lang.String xpath, java.lang.String[][] nsArray) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static byte[] processSoapXmla(java.io.File file, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, java.lang.String cbClassName) throws java.io.IOException, ServletException, org.xml.sax.SAXException
java.io.IOException
ServletException
org.xml.sax.SAXException
public static byte[] processSoapXmla(org.w3c.dom.Document doc, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, java.lang.String cbClassName) throws java.io.IOException, ServletException, org.xml.sax.SAXException
java.io.IOException
ServletException
org.xml.sax.SAXException
public static byte[] processSoapXmla(java.lang.String requestText, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, java.lang.String cbClassName) throws java.io.IOException, ServletException, org.xml.sax.SAXException
java.io.IOException
ServletException
org.xml.sax.SAXException
public static Servlet makeServlet(java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, java.lang.String cbClassName) throws java.io.IOException, ServletException, org.xml.sax.SAXException
java.io.IOException
ServletException
org.xml.sax.SAXException
public static byte[] processSoapXmla(java.io.File file, Servlet servlet) throws java.io.IOException, ServletException, org.xml.sax.SAXException
java.io.IOException
ServletException
org.xml.sax.SAXException
public static byte[] processSoapXmla(org.w3c.dom.Document doc, Servlet servlet) throws java.io.IOException, ServletException, org.xml.sax.SAXException
java.io.IOException
ServletException
org.xml.sax.SAXException
public static byte[] processSoapXmla(java.lang.String requestText, Servlet servlet) throws java.io.IOException, ServletException, org.xml.sax.SAXException
java.io.IOException
ServletException
org.xml.sax.SAXException
public static boolean validateSchemaSoapXmla(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException, javax.xml.parsers.ParserConfigurationException, javax.xml.transform.TransformerException
org.xml.sax.SAXException
java.io.IOException
javax.xml.parsers.ParserConfigurationException
javax.xml.transform.TransformerException
public static byte[] processXmla(java.io.File file, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls) throws java.io.IOException, org.xml.sax.SAXException, XOMException
java.io.IOException
org.xml.sax.SAXException
XOMException
public static byte[] processXmla(java.io.File file, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, Role role) throws java.io.IOException, org.xml.sax.SAXException, XOMException
java.io.IOException
org.xml.sax.SAXException
XOMException
public static byte[] processXmla(java.lang.String requestText, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls) throws java.io.IOException, org.xml.sax.SAXException, XOMException
java.io.IOException
org.xml.sax.SAXException
XOMException
public static byte[] processXmla(java.lang.String requestText, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, Role role) throws java.io.IOException, org.xml.sax.SAXException, XOMException
java.io.IOException
org.xml.sax.SAXException
XOMException
public static byte[] processXmla(org.w3c.dom.Document requestDoc, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls) throws java.io.IOException, XOMException
java.io.IOException
XOMException
public static byte[] processXmla(org.w3c.dom.Document requestDoc, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, Role role) throws java.io.IOException, XOMException
java.io.IOException
XOMException
public static byte[] processXmla(org.w3c.dom.Element requestElem, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls) throws java.io.IOException, XOMException
java.io.IOException
XOMException
public static byte[] processXmla(org.w3c.dom.Element requestElem, java.lang.String connectString, java.util.Map<java.lang.String,java.lang.String> catalogNameUrls, Role role) throws java.io.IOException, XOMException
java.io.IOException
XOMException
public static boolean validateSchemaXmla(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException, javax.xml.parsers.ParserConfigurationException, javax.xml.transform.TransformerException
org.xml.sax.SAXException
java.io.IOException
javax.xml.parsers.ParserConfigurationException
javax.xml.transform.TransformerException
public static boolean validateSoapXmlaUsingXpath(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static boolean validateXmlaUsingXpath(byte[] bytes) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static boolean validateNodes(org.w3c.dom.Node[] nodes) throws org.xml.sax.SAXException, java.io.IOException
org.xml.sax.SAXException
java.io.IOException
public static boolean validateEmbeddedSchema(byte[] bytes, java.lang.String schemaTransform, java.lang.String dataTransform) throws org.xml.sax.SAXException, java.io.IOException, javax.xml.parsers.ParserConfigurationException, javax.xml.transform.TransformerException, javax.xml.transform.TransformerConfigurationException
validateEmbeddedSchema(org.w3c.dom.Document, String, String)
.
org.xml.sax.SAXException
java.io.IOException
javax.xml.parsers.ParserConfigurationException
javax.xml.transform.TransformerException
javax.xml.transform.TransformerConfigurationException
public static boolean validateEmbeddedSchema(org.w3c.dom.Document doc, java.lang.String schemaTransform, java.lang.String dataTransform) throws org.xml.sax.SAXException, java.io.IOException, javax.xml.parsers.ParserConfigurationException, javax.xml.transform.TransformerException, javax.xml.transform.TransformerConfigurationException
If the content is valid, then nothing happens, but if the content is not valid an execption is thrown (currently a RuntimeException).
When Mondrian moves to Java 5 or includes the JAXP 1.3 jar, then there is a utility in JAXP that does something like this (but allows for multiple schema/content parts).
org.xml.sax.SAXException
java.io.IOException
javax.xml.parsers.ParserConfigurationException
javax.xml.transform.TransformerException
javax.xml.transform.TransformerConfigurationException
public static org.w3c.dom.Document transformSoapXmla(org.w3c.dom.Document doc, java.lang.String[][] namevalueParameters, java.lang.String ns) throws org.xml.sax.SAXException, java.io.IOException, javax.xml.parsers.ParserConfigurationException, javax.xml.transform.TransformerException
org.xml.sax.SAXException
java.io.IOException
javax.xml.parsers.ParserConfigurationException
javax.xml.transform.TransformerException
public static java.lang.String readFile(java.io.File file) throws java.io.IOException
java.io.IOException
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |