Package mondrian.server
Interface Repository
- All Known Implementing Classes:
FileRepository
,ImplicitRepository
public interface Repository
Callback by which a
MondrianServer
finds its
databases, catalogs and schemas.
An important implementation is ImplicitRepository
. This
encapsulates the behavior of embedded mondrian: there is no repository,
and each connection specifies schema and catalog on the connect string.
This is the reason that several methods contain a
connection
parameter. Other
implementations of this interface will probably ignore the connection.
- Author:
- Julian Hyde
-
Method Summary
Modifier and TypeMethodDescriptiongetCatalogNames
(RolapConnection connection, String databaseName) Returns a list of catalog names found in the repository.org.olap4j.OlapConnection
getConnection
(MondrianServer server, String databaseName, String catalogName, String roleName, Properties props) Returns an OlapConnection object.getDatabaseNames
(RolapConnection connection) Returns a list of database names found in this repository.getDatabases
(RolapConnection connection) Returns a list of databases properties collections, one per database configured on this server.getRolapSchemas
(RolapConnection connection, String databaseName, String catalogName) Must return a map of schema names and schema objects who are children of the specified datasource and catalog.void
shutdown()
Shuts down and terminates a repository.
-
Method Details
-
getDatabaseNames
Returns a list of database names found in this repository.- Parameters:
connection
- A connection object from which to obtain the metadata. May be null or the Repository implementation itself might ignore it.- Returns:
- A list of database names found in this repository.
-
getCatalogNames
Returns a list of catalog names found in the repository.- Parameters:
connection
- A connection object from which to obtain the metadata. May be null or the Repository implementation itself might ignore it.databaseName
- The parent database name of which we want to list the catalogs.- Returns:
- A list of catalog names found in this repository.
-
getRolapSchemas
Map<String,RolapSchema> getRolapSchemas(RolapConnection connection, String databaseName, String catalogName) Must return a map of schema names and schema objects who are children of the specified datasource and catalog.- Parameters:
connection
- The connection from which to obtain the metadata. May be null or the Repository implementation itself might ignore it.databaseName
- The database name predicate for the list of returned schemas.catalogName
- The catalog name predicate for the list of returned schemas.- Returns:
- A map of schema names associated to schema objects, as found in the repository..
-
getDatabases
Returns a list of databases properties collections, one per database configured on this server.- Parameters:
connection
- The connection from which to obtain the metadata. May be null or the Repository implementation itself might ignore it.- Returns:
- A list of databases properties collections
-
getConnection
org.olap4j.OlapConnection getConnection(MondrianServer server, String databaseName, String catalogName, String roleName, Properties props) throws SQLException Returns an OlapConnection object.- Parameters:
server
- The MondrianServer to use.databaseName
- The database name. Can be null.catalogName
- The catalog name. Can be null.roleName
- The role name. Can be null.props
- Additional connection properties.- Returns:
- An opened olap connection.
- Throws:
SQLException
- If an error is encountered while creating the connection.
-
shutdown
void shutdown()Shuts down and terminates a repository.
-