public interface CacheControl
CacheControl.CellRegion
denotes a portion of the cell cache, and a
CacheControl.MemberSet
denotes a portion of the member cache. Both caches can be
flushed, and the member cache can be edited.
To create an instance of this interface, use
Connection.getCacheControl(java.io.PrintWriter)
.
Methods concerning cell cache:
createMemberRegion(Member, boolean)
createMemberRegion(boolean, Member, boolean, Member, boolean)
createUnionRegion(mondrian.olap.CacheControl.CellRegion[])
createCrossjoinRegion(mondrian.olap.CacheControl.CellRegion[])
createMeasuresRegion(Cube)
flush(mondrian.olap.CacheControl.CellRegion)
Methods concerning member cache:
createMemberSet(Member, boolean)
createMemberSet(boolean, Member, boolean, Member, boolean)
createAddCommand(Member)
createDeleteCommand(Member)
createDeleteCommand(mondrian.olap.CacheControl.MemberSet)
createCompoundCommand(java.util.List)
createCompoundCommand(mondrian.olap.CacheControl.MemberEditCommand[])
createSetPropertyCommand(Member, String, Object)
createSetPropertyCommand(mondrian.olap.CacheControl.MemberSet,java.util.Map)
flush(mondrian.olap.CacheControl.MemberSet)
execute(mondrian.olap.CacheControl.MemberEditCommand)
Modifier and Type | Interface and Description |
---|---|
static interface |
CacheControl.CellRegion
a region of cells in the cell cache
|
static interface |
CacheControl.MemberEditCommand
An operation to be applied to the member cache.
|
static interface |
CacheControl.MemberSet
A specification of a set of members in the member cache.
|
Modifier and Type | Method and Description |
---|---|
CacheControl.MemberEditCommand |
createAddCommand(Member member)
Creates a command to add a member to the cache.
|
CacheControl.MemberEditCommand |
createCompoundCommand(CacheControl.MemberEditCommand... cmds)
Builds a compound command which is executed atomically.
|
CacheControl.MemberEditCommand |
createCompoundCommand(List<CacheControl.MemberEditCommand> cmds)
Builds a compound command which is executed atomically.
|
CacheControl.CellRegion |
createCrossjoinRegion(CacheControl.CellRegion... regions)
Forms the cartesian product of two or more cell regions.
|
CacheControl.MemberEditCommand |
createDeleteCommand(CacheControl.MemberSet memberSet)
Creates a command to delete a set of members from the member cache.
|
CacheControl.MemberEditCommand |
createDeleteCommand(Member member)
Creates a command to delete a member and its descendants from the member
cache.
|
CacheControl.CellRegion |
createMeasuresRegion(Cube cube)
Creates a region consisting of all measures in a given cube.
|
CacheControl.CellRegion |
createMemberRegion(boolean lowerInclusive,
Member lowerMember,
boolean upperInclusive,
Member upperMember,
boolean descendants)
Creates a cell region consisting of a range between two members.
|
CacheControl.CellRegion |
createMemberRegion(Member member,
boolean descendants)
Creates a cell region consisting of a single member.
|
CacheControl.MemberSet |
createMemberSet(boolean lowerInclusive,
Member lowerMember,
boolean upperInclusive,
Member upperMember,
boolean descendants)
Creates a member set consisting of a range between two members.
|
CacheControl.MemberSet |
createMemberSet(Member member,
boolean descendants)
Creates a member set containing either a single member, or a member and
its descendants.
|
CacheControl.MemberEditCommand |
createMoveCommand(Member member,
Member loc)
Creates a command to Move a member (with its descendants) to a new
location, that is to a new parent.
|
CacheControl.MemberEditCommand |
createSetPropertyCommand(CacheControl.MemberSet set,
Map<String,Object> propertyValues)
Creates a command to several properties changes over a set of
members.
|
CacheControl.MemberEditCommand |
createSetPropertyCommand(Member member,
String name,
Object value)
Creates a command to change one property of a member.
|
CacheControl.CellRegion |
createUnionRegion(CacheControl.CellRegion... regions)
Forms the union of two or more cell regions.
|
CacheControl.MemberSet |
createUnionSet(CacheControl.MemberSet... sets)
Forms the union of two or more member sets.
|
void |
execute(CacheControl.MemberEditCommand cmd)
Executes a command that edits the member cache.
|
CacheControl.MemberSet |
filter(Level level,
CacheControl.MemberSet baseSet)
Filters a member set, keeping all members at a given Level.
|
void |
flush(CacheControl.CellRegion region)
Atomically flushes all the cells in the cell cache that correspond to
measures in a cube and to a given region.
|
void |
flush(CacheControl.MemberSet set)
Atomically flushes all members in the member cache which belong to a
given set.
|
void |
flushSchema(Schema schema)
Flushes the given Schema instance from the pool
|
void |
flushSchema(String catalogUrl,
DataSource dataSource)
Flushes the given Schema instance from the pool.
|
void |
flushSchema(String catalogUrl,
String connectionKey,
String jdbcUser,
String dataSourceStr)
Flushes the given Schema instance from the pool.
|
void |
flushSchemaCache()
Flushes the cache which maps schema URLs to metadata.
|
boolean |
isTraceEnabled()
Tells if tracing is enabled.
|
void |
printCacheState(PrintWriter pw,
CacheControl.CellRegion region)
Prints the state of the cell cache as it pertains to a given region.
|
void |
printCacheState(PrintWriter pw,
CacheControl.MemberSet set)
Prints the state of the member cache as it pertains to a given member
set.
|
void |
trace(String message)
Prints a debug message.
|
CacheControl.CellRegion createMemberRegion(Member member, boolean descendants)
member
- the memberdescendants
- When true, include descendants of the member in the
region.CacheControl.CellRegion createMemberRegion(boolean lowerInclusive, Member lowerMember, boolean upperInclusive, Member upperMember, boolean descendants)
The members must belong to the same level of the same hierarchy. One of the bounds may be null.
For example, given
then
Member member97Q3; // [Time].[1997].[Q3]
Member member98Q2; // [Time].[1998].[Q2]
Expression | Meaning |
---|---|
createMemberRegion(true, member97Q3, true, member98Q2,
false)
|
The members between 97Q3 and 98Q2, inclusive: [Time].[1997].[Q3], [Time].[1997].[Q4], [Time].[1998].[Q1], [Time].[1998].[Q2] |
createMemberRegion(true, member97Q3, false, member98Q2,
false)
|
The members between 97Q3 and 98Q2, exclusive: [Time].[1997].[Q4], [Time].[1998].[Q1] |
createMemberRegion(true, member97Q3, false, member98Q2,
false)
|
The members between 97Q3 and 98Q2, including their descendants, and
including the lower bound but not the upper bound: [Time].[1997].[Q3], [Time].[1997].[Q3].[7], [Time].[1997].[Q3].[8], [Time].[1997].[Q3].[9], [Time].[1997].[Q4], [Time].[1997].[Q4].[10], [Time].[1997].[Q4].[11], [Time].[1997].[Q4].[12], [Time].[1998].[Q1], [Time].[1998].[Q1].[1], [Time].[1998].[Q1].[2], [Time].[1998].[Q1].[3] |
lowerInclusive
- whether the the range includes the lower bound;
ignored if the lower bound is not specifiedlowerMember
- lower bound member.
If null, takes all preceding membersupperInclusive
- whether the the range includes the upper bound;
ignored if the upper bound is not specifiedupperMember
- upper bound member.
If null, takes all preceding membersdescendants
- when true, include descendants of the member in the
regionCacheControl.CellRegion createCrossjoinRegion(CacheControl.CellRegion... regions)
regions
- the operandsCacheControl.CellRegion createUnionRegion(CacheControl.CellRegion... regions)
regions
- the operandsCacheControl.CellRegion createMeasuresRegion(Cube cube)
cube
- a cubevoid flush(CacheControl.CellRegion region)
region
- a regionvoid printCacheState(PrintWriter pw, CacheControl.CellRegion region)
pw
- the output targetregion
- the CellRegion of interestCacheControl.MemberSet createMemberSet(Member member, boolean descendants)
member
- a memberdescendants
- when true, include descendants in the setCacheControl.MemberSet createMemberSet(boolean lowerInclusive, Member lowerMember, boolean upperInclusive, Member upperMember, boolean descendants)
createMemberRegion(boolean,
Member, boolean, Member, boolean)
, which see for examples.)lowerInclusive
- whether the the range includes the lower bound;
ignored if the lower bound is not specifiedlowerMember
- lower bound member.
If null, takes all preceding membersupperInclusive
- whether the the range includes the upper bound;
ignored if the upper bound is not specifiedupperMember
- upper bound member.
If null, takes all preceding membersdescendants
- when true, include descendants of the member in the
regionCacheControl.MemberSet createUnionSet(CacheControl.MemberSet... sets)
sets
- the operandsCacheControl.MemberSet filter(Level level, CacheControl.MemberSet baseSet)
level
- LevelbaseSet
- Member setvoid flush(CacheControl.MemberSet set)
set
- a set of membersvoid printCacheState(PrintWriter pw, CacheControl.MemberSet set)
pw
- the output targetset
- the MemberSet of interestvoid execute(CacheControl.MemberEditCommand cmd)
cmd
- the commandCacheControl.MemberEditCommand createCompoundCommand(List<CacheControl.MemberEditCommand> cmds)
cmds
- a list of the component commandsCacheControl.MemberEditCommand createCompoundCommand(CacheControl.MemberEditCommand... cmds)
cmds
- the component commandsCacheControl.MemberEditCommand createDeleteCommand(Member member)
member
- the memberCacheControl.MemberEditCommand createDeleteCommand(CacheControl.MemberSet memberSet)
memberSet
- the setCacheControl.MemberEditCommand createAddCommand(Member member) throws IllegalArgumentException
The ordinal position of the new member among its siblings is implied by its properties.
member
- the new memberIllegalArgumentException
- if member null
or if member belongs to a parent-child hierarchyCacheControl.MemberEditCommand createMoveCommand(Member member, Member loc) throws IllegalArgumentException
member
- the member movedloc
- the new parentIllegalArgumentException
- if member is null,
or loc is null,
or member belongs to a parent-child hierarchy,
or if loc is incompatible with memberCacheControl.MemberEditCommand createSetPropertyCommand(Member member, String name, Object value) throws IllegalArgumentException
member
- the membername
- the property namevalue
- the property valueIllegalArgumentException
- if the property is invalid for the
memberCacheControl.MemberEditCommand createSetPropertyCommand(CacheControl.MemberSet set, Map<String,Object> propertyValues) throws IllegalArgumentException
set
- the set of memberspropertyValues
- Collection of property-value pairsIllegalArgumentException
- for an invalid property, or if all
members in the set do not belong to the same Level.void trace(String message)
message
- the messageboolean isTraceEnabled()
void flushSchemaCache()
This cache is referenced only when creating a new connection, so existing connections will continue to use the same schema definition.
Flushing the schema cache will flush all aggregations and segments associated to it as well.
void flushSchema(String catalogUrl, String connectionKey, String jdbcUser, String dataSourceStr)
Flushing the schema cache will flush all aggregations and segments associated to it as well.
void flushSchema(String catalogUrl, DataSource dataSource)
Flushing the schema cache will flush all aggregations and segments associated to it as well.
void flushSchema(Schema schema)
Flushing the schema cache will flush all aggregations and segments associated to it as well.
schema
- SchemaCopyright © 2020 Hitachi Vantara. All rights reserved.