Package mondrian.xmla
Interface XmlaHandler.XmlaExtra
-
- All Known Implementing Classes:
MondrianOlap4jExtra
- Enclosing class:
- XmlaHandler
public static interface XmlaHandler.XmlaExtra
Extra support for XMLA server. If a connection provides this interface, the XMLA server will call methods in this interface instead of relying on the core olap4j interface.The
XmlaHandler.XmlaExtraImpl
class provides a default implementation that uses the olap4j interface exclusively.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
XmlaHandler.XmlaExtra.FunctionDefinition
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
canDrillThrough(Cell cell)
Returns a boolean indicating if the specified cell can be drilled on.void
checkMemberOrdinal(Member member)
java.sql.ResultSet
executeDrillthrough(OlapStatement olapStatement, java.lang.String mdx, boolean advanced, java.lang.String tabFields, int[] rowCountSlot)
void
flushSchemaCache(OlapConnection conn)
Makes the connection send a command to the server to flush all caches.java.util.Map<java.lang.String,java.lang.Object>
getAnnotationMap(MetadataElement element)
Returns a map containing annotations on this element.java.lang.String
getCubeType(Cube cube)
java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
getDataSources(OlapConnection connection)
Returns a list of the data sources in this server.int
getDrillThroughCount(Cell cell)
Returns the number of rows returned by a drillthrough on the specified cell.int
getHierarchyCardinality(Hierarchy hierarchy)
int
getHierarchyStructure(Hierarchy hierarchy)
int
getLevelCardinality(Level level)
java.util.List<Property>
getLevelProperties(Level level)
Returns the defined properties of a level.int
getMeasureAggregator(Member member)
java.lang.Object
getMemberKey(Member m)
Returns the key for a given member.java.lang.Object
getOrderKey(Member m)
Returns the ordering key for a given member.void
getSchemaFunctionList(java.util.List<XmlaHandler.XmlaExtra.FunctionDefinition> funDefs, Schema schema, Util.Functor1<java.lang.Boolean,java.lang.String> functionFilter)
java.lang.String
getSchemaId(Schema schema)
Returns the unique ID of a schema.java.util.Date
getSchemaLoadDate(Schema schema)
java.util.List<java.lang.String>
getSchemaRoleNames(Schema schema)
Returns a list of names of roles in the given schema to which the current user belongs.boolean
isHierarchyParentChild(Hierarchy hierarchy)
boolean
isLevelUnique(Level level)
boolean
isPropertyInternal(Property property)
void
setPreferList(OlapConnection connection)
boolean
shouldReturnCellProperty(CellSet cellSet, Property cellProperty, boolean evenEmpty)
Returns whether we should return a cell property in the XMLA result.
-
-
-
Method Detail
-
executeDrillthrough
java.sql.ResultSet executeDrillthrough(OlapStatement olapStatement, java.lang.String mdx, boolean advanced, java.lang.String tabFields, int[] rowCountSlot) throws java.sql.SQLException
- Throws:
java.sql.SQLException
-
setPreferList
void setPreferList(OlapConnection connection)
-
getSchemaLoadDate
java.util.Date getSchemaLoadDate(Schema schema)
-
getLevelCardinality
int getLevelCardinality(Level level) throws OlapException
- Throws:
OlapException
-
getSchemaFunctionList
void getSchemaFunctionList(java.util.List<XmlaHandler.XmlaExtra.FunctionDefinition> funDefs, Schema schema, Util.Functor1<java.lang.Boolean,java.lang.String> functionFilter)
-
getHierarchyCardinality
int getHierarchyCardinality(Hierarchy hierarchy) throws OlapException
- Throws:
OlapException
-
getHierarchyStructure
int getHierarchyStructure(Hierarchy hierarchy)
-
isHierarchyParentChild
boolean isHierarchyParentChild(Hierarchy hierarchy)
-
getMeasureAggregator
int getMeasureAggregator(Member member)
-
checkMemberOrdinal
void checkMemberOrdinal(Member member) throws OlapException
- Throws:
OlapException
-
shouldReturnCellProperty
boolean shouldReturnCellProperty(CellSet cellSet, Property cellProperty, boolean evenEmpty)
Returns whether we should return a cell property in the XMLA result.- Parameters:
cellSet
- Cell setcellProperty
- Cell property definitionevenEmpty
- Whether to return even if cell has no properties- Returns:
- Whether to return cell property in XMLA result
-
getSchemaRoleNames
java.util.List<java.lang.String> getSchemaRoleNames(Schema schema)
Returns a list of names of roles in the given schema to which the current user belongs.- Parameters:
schema
- Schema- Returns:
- List of roles
-
getSchemaId
java.lang.String getSchemaId(Schema schema)
Returns the unique ID of a schema.
-
getCubeType
java.lang.String getCubeType(Cube cube)
-
isLevelUnique
boolean isLevelUnique(Level level)
-
getLevelProperties
java.util.List<Property> getLevelProperties(Level level)
Returns the defined properties of a level. (Not including system properties that every level has.)- Parameters:
level
- Level- Returns:
- Defined properties
-
isPropertyInternal
boolean isPropertyInternal(Property property)
-
getDataSources
java.util.List<java.util.Map<java.lang.String,java.lang.Object>> getDataSources(OlapConnection connection) throws OlapException
Returns a list of the data sources in this server. One element per data source, each element a map whose keys are the XMLA fields describing a data source: "DataSourceName", "DataSourceDescription", "URL", etc. Unrecognized fields are ignored.- Parameters:
connection
- Connection- Returns:
- List of data source definitions
- Throws:
OlapException
- on error
-
getAnnotationMap
java.util.Map<java.lang.String,java.lang.Object> getAnnotationMap(MetadataElement element) throws java.sql.SQLException
Returns a map containing annotations on this element.- Parameters:
element
- Element- Returns:
- Annotation map, never null
- Throws:
java.sql.SQLException
-
canDrillThrough
boolean canDrillThrough(Cell cell)
Returns a boolean indicating if the specified cell can be drilled on.
-
getDrillThroughCount
int getDrillThroughCount(Cell cell)
Returns the number of rows returned by a drillthrough on the specified cell. Will also return -1 if it cannot determine the cardinality.
-
flushSchemaCache
void flushSchemaCache(OlapConnection conn) throws OlapException
Makes the connection send a command to the server to flush all caches.- Throws:
OlapException
-
getMemberKey
java.lang.Object getMemberKey(Member m) throws OlapException
Returns the key for a given member.- Throws:
OlapException
-
getOrderKey
java.lang.Object getOrderKey(Member m) throws OlapException
Returns the ordering key for a given member.- Throws:
OlapException
-
-