Package mondrian.rolap
Class RolapConnection
- java.lang.Object
-
- mondrian.olap.ConnectionBase
-
- mondrian.rolap.RolapConnection
-
- All Implemented Interfaces:
Connection
public class RolapConnection extends ConnectionBase
ARolapConnection
is a connection to a Mondrian OLAP Server.Typically, you create a connection via
DriverManager.getConnection(String, mondrian.spi.CatalogLocator)
.RolapConnectionProperties
describes allowable keywords.- Since:
- 2 October, 2002
- Author:
- jhyde
- See Also:
RolapSchema
,DriverManager
-
-
Constructor Summary
Constructors Constructor Description RolapConnection(MondrianServer server, Util.PropertyList connectInfo, DataSource dataSource)
Creates a connection.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
close()
Closes thisConnection
.ScenarioImpl
createScenario()
Helper method to allow olap4j wrappers to implementOlapConnection.createScenario()
.Result
execute(Query query)
Deprecated.Useexecute(mondrian.server.Execution)
; this method will be removed in mondrian-4.0Result
execute(Execution execution)
Executes a statement.protected void
finalize()
CacheControl
getCacheControl(PrintWriter pw)
Returns an object with which to explicitly control the contents of the cache.String
getCatalogName()
Get the name of the Catalog associated with this Connection.Util.PropertyList
getConnectInfo()
String
getConnectString()
Get the Connect String associated with this Connection.DataSource
getDataSource()
Returns the data source this connection uses to create connections to the underlying JDBC database.int
getId()
Returns the identifier of this connection.Statement
getInternalStatement()
Locale
getLocale()
Returns the locale this connection belongs to.protected org.apache.logging.log4j.Logger
getLogger()
Object
getProperty(String name)
Returns the value of a connection property.Role
getRole()
Returns the access-control profile for this connection.org.olap4j.Scenario
getScenario()
RolapSchema
getSchema()
Get the Schema associated with this Connection.SchemaReader
getSchemaReader()
Returns a schema reader with access control appropriate to the current role.MondrianServer
getServer()
Returns the server (mondrian instance) that this connection belongs to.Exp
parseExpression(String expr)
Parses an expresion.QueryPart
parseStatement(String query)
Parses a statement.void
setLocale(Locale locale)
void
setRole(Role role)
Sets the privileges for the this connection.void
setScenario(org.olap4j.Scenario scenario)
-
Methods inherited from class mondrian.olap.ConnectionBase
createParser, getFullConnectString, parseQuery, parseStatement
-
-
-
-
Field Detail
-
role
protected Role role
-
-
Constructor Detail
-
RolapConnection
public RolapConnection(MondrianServer server, Util.PropertyList connectInfo, DataSource dataSource)
Creates a connection.- Parameters:
server
- Server instance this connection belongs toconnectInfo
- Connection properties; keywords are described inRolapConnectionProperties
.dataSource
- JDBC data source
-
-
Method Detail
-
finalize
protected void finalize() throws Throwable
-
getId
public int getId()
Returns the identifier of this connection. Unique within the lifetime of this JVM.- Returns:
- Identifier of this connection
-
getLogger
protected org.apache.logging.log4j.Logger getLogger()
- Specified by:
getLogger
in classConnectionBase
-
getConnectInfo
public Util.PropertyList getConnectInfo()
-
close
public void close()
Description copied from interface:Connection
Closes thisConnection
. You may not use thisConnection
after closing it.
-
getSchema
public RolapSchema getSchema()
Description copied from interface:Connection
Get the Schema associated with this Connection.- Returns:
- the Schema (never null).
-
getConnectString
public String getConnectString()
Description copied from interface:Connection
Get the Connect String associated with this Connection.- Returns:
- the Connect String (never null).
-
getCatalogName
public String getCatalogName()
Description copied from interface:Connection
Get the name of the Catalog associated with this Connection.- Returns:
- the Catalog name (never null).
-
getLocale
public Locale getLocale()
Description copied from interface:Connection
Returns the locale this connection belongs to. Determines, for example, the currency string used in formatting cell values.- See Also:
Format
-
setLocale
public void setLocale(Locale locale)
-
getSchemaReader
public SchemaReader getSchemaReader()
Description copied from interface:Connection
Returns a schema reader with access control appropriate to the current role.
-
getProperty
public Object getProperty(String name)
Description copied from interface:Connection
Returns the value of a connection property.- Parameters:
name
- Name of property, for example "JdbcUser".- Returns:
- Value of property, or null if property is not defined.
-
getCacheControl
public CacheControl getCacheControl(PrintWriter pw)
Description copied from interface:Connection
Returns an object with which to explicitly control the contents of the cache.- Parameters:
pw
- Writer to which to write logging information; may be null
-
execute
public Result execute(Query query)
Deprecated.Useexecute(mondrian.server.Execution)
; this method will be removed in mondrian-4.0Executes a Query.- Parameters:
query
- Query parse tree- Throws:
ResourceLimitExceededException
- if some resource limit specified in the property file was exceededQueryCanceledException
- if query was canceled during executionQueryTimeoutException
- if query exceeded timeout specified in the property file
-
execute
public Result execute(Execution execution)
Executes a statement.- Parameters:
execution
- Execution context (includes statement, query)- Throws:
ResourceLimitExceededException
- if some resource limit specified in the property file was exceededQueryCanceledException
- if query was canceled during executionQueryTimeoutException
- if query exceeded timeout specified in the property file
-
setRole
public void setRole(Role role)
Description copied from interface:Connection
Sets the privileges for the this connection.
-
getRole
public Role getRole()
Description copied from interface:Connection
Returns the access-control profile for this connection.
-
setScenario
public void setScenario(org.olap4j.Scenario scenario)
-
getScenario
public org.olap4j.Scenario getScenario()
-
getServer
public MondrianServer getServer()
Returns the server (mondrian instance) that this connection belongs to. Usually there is only one server instance in a given JVM.- Returns:
- Server instance; never null
-
parseStatement
public QueryPart parseStatement(String query)
Description copied from interface:Connection
Parses a statement.- Parameters:
query
- MDX string- Returns:
- A
Query
if it is a SELECT statement, aDrillThrough
if it is a DRILLTHROUGH statement
-
parseExpression
public Exp parseExpression(String expr)
Description copied from interface:Connection
Parses an expresion.
-
getInternalStatement
public Statement getInternalStatement()
- Specified by:
getInternalStatement
in classConnectionBase
-
getDataSource
public DataSource getDataSource()
Description copied from interface:Connection
Returns the data source this connection uses to create connections to the underlying JDBC database.- Returns:
- Data source
-
createScenario
public ScenarioImpl createScenario()
Helper method to allow olap4j wrappers to implementOlapConnection.createScenario()
.- Returns:
- new Scenario
-
-