Package mondrian.xmla

Interface XmlaHandler.XmlaExtra

  • 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.

    • Method Detail

      • setPreferList

        void setPreferList​(org.olap4j.OlapConnection connection)
      • getSchemaLoadDate

        Date getSchemaLoadDate​(org.olap4j.metadata.Schema schema)
      • getLevelCardinality

        int getLevelCardinality​(org.olap4j.metadata.Level level)
                         throws org.olap4j.OlapException
        Throws:
        org.olap4j.OlapException
      • getHierarchyCardinality

        int getHierarchyCardinality​(org.olap4j.metadata.Hierarchy hierarchy)
                             throws org.olap4j.OlapException
        Throws:
        org.olap4j.OlapException
      • getHierarchyStructure

        int getHierarchyStructure​(org.olap4j.metadata.Hierarchy hierarchy)
      • isHierarchyParentChild

        boolean isHierarchyParentChild​(org.olap4j.metadata.Hierarchy hierarchy)
      • getMeasureAggregator

        int getMeasureAggregator​(org.olap4j.metadata.Member member)
      • checkMemberOrdinal

        void checkMemberOrdinal​(org.olap4j.metadata.Member member)
                         throws org.olap4j.OlapException
        Throws:
        org.olap4j.OlapException
      • shouldReturnCellProperty

        boolean shouldReturnCellProperty​(org.olap4j.CellSet cellSet,
                                         org.olap4j.metadata.Property cellProperty,
                                         boolean evenEmpty)
        Returns whether we should return a cell property in the XMLA result.
        Parameters:
        cellSet - Cell set
        cellProperty - Cell property definition
        evenEmpty - Whether to return even if cell has no properties
        Returns:
        Whether to return cell property in XMLA result
      • getSchemaRoleNames

        List<String> getSchemaRoleNames​(org.olap4j.metadata.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

        String getSchemaId​(org.olap4j.metadata.Schema schema)
        Returns the unique ID of a schema.
      • getCubeType

        String getCubeType​(org.olap4j.metadata.Cube cube)
      • isLevelUnique

        boolean isLevelUnique​(org.olap4j.metadata.Level level)
      • getLevelProperties

        List<org.olap4j.metadata.Property> getLevelProperties​(org.olap4j.metadata.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​(org.olap4j.metadata.Property property)
      • getDataSources

        List<Map<String,​Object>> getDataSources​(org.olap4j.OlapConnection connection)
                                               throws org.olap4j.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:
        org.olap4j.OlapException - on error
      • getAnnotationMap

        Map<String,​Object> getAnnotationMap​(org.olap4j.metadata.MetadataElement element)
                                           throws SQLException
        Returns a map containing annotations on this element.
        Parameters:
        element - Element
        Returns:
        Annotation map, never null
        Throws:
        SQLException
      • canDrillThrough

        boolean canDrillThrough​(org.olap4j.Cell cell)
        Returns a boolean indicating if the specified cell can be drilled on.
      • getDrillThroughCount

        int getDrillThroughCount​(org.olap4j.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​(org.olap4j.OlapConnection conn)
                       throws org.olap4j.OlapException
        Makes the connection send a command to the server to flush all caches.
        Throws:
        org.olap4j.OlapException
      • getMemberKey

        Object getMemberKey​(org.olap4j.metadata.Member m)
                     throws org.olap4j.OlapException
        Returns the key for a given member.
        Throws:
        org.olap4j.OlapException
      • getOrderKey

        Object getOrderKey​(org.olap4j.metadata.Member m)
                    throws org.olap4j.OlapException
        Returns the ordering key for a given member.
        Throws:
        org.olap4j.OlapException
      • getLevelDataType

        default String getLevelDataType​(org.olap4j.metadata.Level level)
        Returns the data type of the level's key.
        Parameters:
        level -
        Returns:
        String|Numeric|Integer|Boolean|Date|Time|Timestamp