|
Oracle™ Business Intelligence Beans Java API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--oracle.dss.util.DataAccessAdapter | +--oracle.dss.util.datacache.BaseCachedDataSource
Base class for the relational and multidimensional data cache implementations
CachedDataSource
, RelationalCachedDataSource
Field Summary | |
static java.lang.String |
COLUMN_EDGE |
static java.lang.String |
DATAMAP |
static java.lang.String |
LAYERMETADATAMAP |
static java.lang.String |
METADATAMAP |
static java.lang.String |
PAGE_EDGE |
static java.lang.String |
ROW_EDGE |
Fields inherited from interface oracle.dss.util.DataDirector |
DATA_ELEMENT_EDGE, DRILL_REPLACE, DRILLSTATE_DRILLABLE, DRILLSTATE_IS_DRILLED, DRILLSTATE_NOT_DRILLABLE, GROUPSORT_END, GROUPSORT_MIDDLE, GROUPSORT_NONE, GROUPSORT_START, max_edge, NA_SUPPRESSION, NA_ZERO_SUPPRESSION, NO_SUPPRESSION, PIVOT_EDGES, PIVOT_MOVE_AFTER, PIVOT_MOVE_BEFORE, PIVOT_MOVE_TO, PIVOT_SWAP, ZERO_SUPPRESSION |
Constructor Summary | |
BaseCachedDataSource() Constructor |
Method Summary | |
void |
addDataDirectorListener(DataDirectorListener l) Registers a listener to the data source for changes. |
void |
copyDataSource(DataAccess da, DataDirector dd) Initializes the instance with data from existing DataAccess and DataDirector |
CubeDataDirector |
createCubeDataDirector() Creates a DataDirector for cube-based (OLAP) views |
RelationalDataDirector |
createRelationalDataDirector() Creates a DataDirector for relational views. |
int |
getEdgeCount() Retrieves the total number of edges in the cursor. |
int[] |
getEdgeCurrentHPos(int edge) Retrieves, for the specified edge, the hierarchical address of the location that is defined by the implementor as the "current" location. |
int |
getEdgeCurrentSlice(int edge) Retrieves the zero-based index of the slice that is defined by the implementor as the current slice. |
int |
getEdgeExtent(int edge) Retrieves the total number of slices that are available on the specified edge. |
DataMap |
getExpectedDataMap() Returns expected data map |
LayerMetadataMap |
getExpectedLayerMetadataMap() Returns expected layer metadata map |
MetadataMap |
getExpectedMetadataMap() Returns expected metadata map |
int[] |
getFirstHPos(int edge) Retrieves the hPos array that identifies the members at each physical layer of slice 0 on the specified edge. |
int[] |
getLastHPos(int edge) Retrieves the hPos array that identifies the members at each physical layer in the last slice on the specified edge. |
int |
getLayerCount(int edge) Retrieves the total number of layers on the specified edge. |
java.lang.Object |
getLayerMetadata(int edge, int layer, java.lang.String type) Retrieves the specified type of metadata for a member at the specified location. |
int |
getMemberDepth(int edge, int layer, int slice) Retrieves the size (expressed in layers that are perpendicular to the specified edge orientation) of a member at the specified layer, slice, and edge. |
int |
getMemberExtent(int edge, int layer, int slice) Retrieves the size of a member, that is, the number of slices that the member spans at a specified edge, layer, and slice location (parallel to the direction of the edge). |
int[] |
getMemberHPos(int edge, int layer, int slice) Retrieves the hierarchical address for an absolute address that is specified as edge, physical layer, and slice. |
java.lang.Object |
getMemberMetadata(int edge, int[] hPos, int memberLayer, int hIndex, java.lang.String type) Retrieves the specified type of metadata for the member at a specified location. |
java.lang.Object |
getMemberMetadata(int edge, int layer, int slice, java.lang.String type) Retrieves the specified type of metadata for a member at the specified location. |
int |
getMemberSiblingCount(int edge, int[] hPos, int memberLayer) Retrieves the count of all the sibling members at a specified logical layer based on a series of relative indexes for each logical layer down to the specified logical layer. |
int |
getMemberStartLayer(int edge, int layer, int slice) Retrieves the starting layer at which a member at the specified edge, layer, and slice location begins. |
int |
getMemberStartSlice(int edge, int layer, int slice) Retrieves the absolute number of the first slice that a member spans. |
int[] |
getNextHPos(int edge, int[] hPos) Retrieves the hPos that identifies the next member on the specified edge relative to a specified hPos . |
int[] |
getPrevHPos(int edge, int[] hPos) Retrieves the hPos array that identifies the members at each physical layer of the slice that is immediately previous to the specified hPos on the specified edge. |
java.lang.Object |
getSliceLabel(int edge, int slice, java.lang.String type) Retrieves the label (or concatenated metadata) for the specified slice. |
int |
getSliceMemberCount(int edge, int slice) Retrieves the number of unique logical layers (that is, the number of members that run perpendicular to the orientation of the edge) at the specified slice and edge. |
DataMap |
getSupportedDataMap() Return a DataMap that contains all of the types that this DataAccessAdapter can support. |
LayerMetadataMap |
getSupportedLayerMetadataMap() Return a LayerMetadataMap that contains all of the types that this DataAccessAdapter can support. |
MetadataMap |
getSupportedMetadataMap() Retrieves a MetadataMap that contains all of the types that this DataAccessAdapter can support. |
java.lang.Object |
getValue(int row, int col, java.lang.String type) Retrieves a data value for the specified row and column intersection. |
java.lang.String |
getXML() Returns XML representation of the data source as a string |
void |
readXML(java.io.InputStream stream) Initializes data source from an XML stream |
void |
setExpectedDataMap(DataMap map) Specifies the data map to be used when data is copied from the existing data source. |
void |
setExpectedLayerMetadataMap(LayerMetadataMap map) Specifies the layer metadata map to be used when data is copied from the existing data source. |
void |
setExpectedMetadataMap(MetadataMap map) Specifies the metadata map to be used when data is copied from the existing data source. |
void |
setXML(java.lang.String xml) Initializes data source from an XML string |
void |
writeXML(java.io.OutputStream stream) Writes XML representation of the data source into a stream |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface oracle.dss.util.persistence.Persistable |
getPersistableAttributes, getPersistableComponents, initialize, setPersistableAttributes, setPersistableComponents |
Methods inherited from interface oracle.dss.util.persistence.StringXMLizable |
getXMLAsString, setXMLAsString |
Field Detail |
public static final java.lang.String COLUMN_EDGE
public static final java.lang.String ROW_EDGE
public static final java.lang.String PAGE_EDGE
public static final java.lang.String DATAMAP
public static final java.lang.String METADATAMAP
public static final java.lang.String LAYERMETADATAMAP
Constructor Detail |
public BaseCachedDataSource()
Method Detail |
public void copyDataSource(DataAccess da, DataDirector dd)
1
- source DataAccess2
- source DataDirectorpublic int getEdgeCount()
DataAccessAdapter
This implementation returns 1.
getEdgeCount
in class DataAccessAdapter
DataAccess.getEdgeCount()
public java.lang.Object getLayerMetadata(int edge, int layer, java.lang.String type) throws EdgeOutOfRangeException, LayerOutOfRangeException
DataAccessAdapter
This implementation returns null
.
getLayerMetadata
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.DataAccess.getLayerMetadata(int, int, java.lang.String)
public int getMemberSiblingCount(int edge, int[] hPos, int memberLayer) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
June | July | ||||||||||
Tents | Canoes | Tents | Canoes | ||||||||
NY | Boston | LA | Toronto | Winnepeg | NY | LA | NY | Boston | LA | Toronto | Winnepeg |
A caller can use this method to find the number of Geography values (that is, sibling members) under the members July and Tents. This count is 3 (for NY, Boston, and LA). The hPos
and memberLayer
parameters for this example are as follows:
hPos
, an array of relative indexes, holds an entry for July, Tents, and any one of the siblings that are to be counted. A valid hPos
in this example must contain indexes for at least layers 0, 1, and 2. Valid arrays for this example could be any of the following: {1,0,0} or {1,0,1} or {1,0,2).memberLayer
, which identifies the layer at which to count the siblings, must be 2.Note: The value that is returned by this method provides the upper limit to the hIndex
that a caller passes in getMemberMetadata
.
This implementation returns 0.
getMemberSiblingCount
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberSiblingCount(int, int[], int)
public java.lang.Object getMemberMetadata(int edge, int[] hPos, int memberLayer, int hIndex, java.lang.String type) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
The user of this method makes the following calls:
getMemberSiblingCount
to retrieve the number of sibling members for a specified tree of members.hPos
and memberLayer
parameters as found in getMemberSiblingCount
to specify the parent tree of members. Each call of this method also uses the hIndex
parameter that indicates the specific sibling member for which to return metadata. Valid values for hIndex
range from 0 to (getMemberSiblingCount() - 1)
.getMemberMetadata
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberMetadata(int, int, int, java.lang.String)
public int getLayerCount(int edge) throws EdgeOutOfRangeException
DataAccessAdapter
getLayerCount
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.DataAccess.getLayerCount(int)
public int getEdgeExtent(int edge) throws EdgeOutOfRangeException
DataAccessAdapter
getEdgeExtent
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.DataAccess.getEdgeExtent(int)
public int getSliceMemberCount(int edge, int slice) throws EdgeOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
This implementation returns 0.
getSliceMemberCount
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getSliceMemberCount(int, int)
public int getMemberDepth(int edge, int layer, int slice) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
The sum of all the members' values for this method, within a specified slice, should not exceed the value that getLayerCount
returns for the specified edge.
This method is useful only in cases of asymmetry where the members on an edge do not all cover one layer and have a depth of 1. On a symmetric edge, all members have a member depth of 1.
This implementation returns 0.
getMemberDepth
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberDepth(int, int, int)
public int getMemberStartLayer(int edge, int layer, int slice) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
getMemberDepth
to retrieve the following information depending on the edge:
getMemberStartLayer
, and getMemberDepth
should not exceed the value that is returned by getLayerCount
for an edge.
This method is useful only in cases of asymmetry where the members on an edge do not all cover one layer. In a symmetric edge, all members have a member start layer equal to their layer.
getMemberStartLayer
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberStartLayer(int, int, int)
public int getMemberExtent(int edge, int layer, int slice) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
The sum of all the unique getMemberExtent
values for an edge should not exceed the getEdgeExtent
value for the same edge.
This implementation returns 0.
getMemberExtent
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberExtent(int, int, int)
public int getMemberStartSlice(int edge, int layer, int slice) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
getMemberExtent
.
This implementation returns 0.
getMemberStartSlice
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberStartSlice(int, int, int)
public java.lang.Object getMemberMetadata(int edge, int layer, int slice, java.lang.String type) throws EdgeOutOfRangeException, SliceOutOfRangeException, LayerOutOfRangeException
DataAccessAdapter
getMemberMetadata
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberMetadata(int, int, int, java.lang.String)
public int[] getMemberHPos(int edge, int layer, int slice) throws EdgeOutOfRangeException, SliceOutOfRangeException, LayerOutOfRangeException
DataAccessAdapter
hPos
parameter in calls such as getMemberSiblingCount
and getMemberMetadata
.
As an example, this method can retrieve an array of indexes from a page edge. The array includes an index for each layer in the page edge. Consider pivoting the following column header to a page edge.
June | July | ||||||||||
Tents | Canoes | Tents | Canoes | ||||||||
NY | Boston | LA | Toronto | Winnepeg | NY | LA | NY | Boston | LA | Toronto | Winnepeg |
If the current page displayed June, Canoes, and Winnepeg, this method would return the array {0,1,1}. June is at index 0 in layer 0. Canoes is at index 1 in layer 1 under June. Winnepeg is at index 1 in layer 2 under Canoes. To find the number of members under Canoes under June, call getMemberSiblingCount
with the array {0,1,1} and the memberLayer
parameter 2.
getMemberHPos
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getMemberHPos(int, int, int)
public java.lang.Object getSliceLabel(int edge, int slice, java.lang.String type) throws EdgeOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
getSliceLabel
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getSliceLabel(int, int, java.lang.String)
public int[] getFirstHPos(int edge) throws EdgeOutOfRangeException
DataAccessAdapter
getFirstHPos
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.DataAccess.getFirstHPos(int)
public int[] getLastHPos(int edge) throws EdgeOutOfRangeException
DataAccessAdapter
getLastHPos
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.DataAccess.getLastHPos(int)
public int[] getNextHPos(int edge, int[] hPos) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
hPos
. If there is no new member at a particular layer (because the member spans more than one physical layer) then the index value in the hPos array will be -1 for that layer.getNextHPos
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getNextHPos(int, int[])
public int[] getPrevHPos(int edge, int[] hPos) throws EdgeOutOfRangeException, LayerOutOfRangeException, SliceOutOfRangeException
DataAccessAdapter
hPos
on the specified edge. If there is no new member at a particular layer (because the member spans more than one physical layer) then the index value in the hPos array will be -1 for that layer.getPrevHPos
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.LayerOutOfRangeException
- if an error occurs.SliceOutOfRangeException
- if an error occurs.DataAccess.getPrevHPos(int, int[])
public int getEdgeCurrentSlice(int edge) throws EdgeOutOfRangeException
DataAccessAdapter
getEdgeCurrentSlice
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.DataAccess.getEdgeCurrentSlice(int)
public int[] getEdgeCurrentHPos(int edge) throws EdgeOutOfRangeException
DataAccessAdapter
getEdgeCurrentHPos
in class DataAccessAdapter
EdgeOutOfRangeException
- if an error occurs.DataAccess.getEdgeCurrentHPos(int)
public java.lang.Object getValue(int row, int col, java.lang.String type) throws RowOutOfRangeException, ColumnOutOfRangeException
DataAccessAdapter
This implementation returns null.
getValue
in class DataAccessAdapter
RowOutOfRangeException
- if an error occurs.ColumnOutOfRangeException
- if an error occurs.DataAccess.getValue(int, int, java.lang.String)
public void setExpectedDataMap(DataMap map)
1
- data mappublic DataMap getExpectedDataMap()
setExpectedDataMap(oracle.dss.util.DataMap)
public void setExpectedMetadataMap(MetadataMap map)
1
- metadata mappublic MetadataMap getExpectedMetadataMap()
setExpectedMetadataMap(oracle.dss.util.MetadataMap)
public void setExpectedLayerMetadataMap(LayerMetadataMap map)
1
- layer metadata mappublic LayerMetadataMap getExpectedLayerMetadataMap()
setExpectedLayerMetadataMap(oracle.dss.util.LayerMetadataMap)
public MetadataMap getSupportedMetadataMap()
DataAccessAdapter
MetadataMap
that contains all of the types that this DataAccessAdapter
can support. Some types of metadata might not be available in some types of queries.getSupportedMetadataMap
in class DataAccessAdapter
DataDirector.getSupportedMetadataMap()
public LayerMetadataMap getSupportedLayerMetadataMap()
DataAccessAdapter
LayerMetadataMap
that contains all of the types that this DataAccessAdapter
can support. Some types of layer metadata might not be available in some types of queries.getSupportedLayerMetadataMap
in class DataAccessAdapter
public DataMap getSupportedDataMap()
DataAccessAdapter
DataMap
that contains all of the types that this DataAccessAdapter
can support. Some types of data might not be available in some types of queries.getSupportedDataMap
in class DataAccessAdapter
DataDirector.getSupportedDataMap()
public void addDataDirectorListener(DataDirectorListener l)
DataAccessAdapter
This implementation does nothing.
addDataDirectorListener
in class DataAccessAdapter
public CubeDataDirector createCubeDataDirector()
DataSource
createCubeDataDirector
in interface DataSource
oracle.dss.util.DataSource
public RelationalDataDirector createRelationalDataDirector()
DataSource
createRelationalDataDirector
in interface DataSource
oracle.dss.util.DataSource
public void writeXML(java.io.OutputStream stream) throws BIIOException
1
- streamBIOException
- if an error occurs.public java.lang.String getXML() throws BIIOException
BIOException
- if an error occurs.public void readXML(java.io.InputStream stream) throws BIIOException, BIParseException, BISAXException
1
- streamBIIOException
- if an error occurs.BIParseException
- if an error occurs.BISAXException
- if an error occurs.public void setXML(java.lang.String xml) throws BIParseException, BISAXException, BIIOException
1
- XML stringBIIOException
- if an error occurs.BIParseException
- if an error occurs.BISAXException
- if an error occurs.
|
Oracle™ Business Intelligence Beans Java API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |