Oracle Fusion Middleware Java API Reference for Oracle Data Visualization Components
11g Release 2 (11.1.2.1.0)

E17492-02

oracle.dss.util
Interface DataDirector

All Known Subinterfaces:
CubeDataDirector, RelationalDataDirector
All Known Implementing Classes:
DataAccessAdapter, GaugeLocalDataSource, LocalDataSource, LocalPivotTableDataSource, LocalXMLDataSource, SampleDataSource

public interface DataDirector

Methods and fields that are necessary for a view to manipulate data in the data provider.


Field Summary
static int COLUMN_EDGE
          Column edge.
static int DATA_ELEMENT_EDGE
          Data element edge.
static int DRILL_BACK
          A flag indicating that a "replace-style" drill should be undone.
static int DRILL_COLLAPSE
          A flag indicating that a "collapse-style" drill should be performed
static int DRILL_MEMBERS_ABOVE
          A flag indicating that inserted drill down results should be placed "above" the target
static int DRILL_MEMBERS_BELOW
          A flag indicating that inserted drill down results should be placed below the target, as opposed to inserting a column, etc.
static int DRILL_REPLACE
          A flag indicating that a "replace-style" drill should be performed
static int DRILL_TO_PARENT
          A flag indicating that a "drill-to-parent" drill should be performed
static int DRILL_TO_PARENT_AND_SIBLINGS
          A flag indicating that a "drill-to-parent and siblings" drill should be performed
static int DRILLSTATE_DRILLABLE
          The hierarchy for the member can be drilled, that is, expanded to provide more detail.
static int DRILLSTATE_IS_DRILLED
          The hierarchy for the member cannot be drilled, that is, expanded further.
static int DRILLSTATE_NOT_DRILLABLE
          Not able to drill.
static int FORCE_FETCH_DATA
          Data fetch--equivalent to the old forceFetch call without the flag parameter
static int FORCE_FETCH_RELATIVE_INDENT
          Relative indent
static int FORCE_FETCH_SPANS
          Spans
static int GRAND_TOTAL_LAYER
          A flag indicating that the total calculation being inserted or deleted is a grand total.
static int GROUPSORT_END
          The cell marks the end of a group sort in a table.
static int GROUPSORT_MIDDLE
          The cell is located in the middle of a group sort in a table.
static int GROUPSORT_NONE
          The cell is not involved in a group sort in a table.
static int GROUPSORT_START
          The cell marks the start of a group sort in a table.
static int HIDDEN_EDGE
          Hidden edge constant
static int max_edge
          Maximum edge that views will use when calling DataAccess and DataDirector.
static int NA_SUPPRESSION
          Suppress NA values.
static int NA_ZERO_SUPPRESSION
          Suppress zeros and NA values.
static int NO_SUPPRESSION
          Do not suppress any values.
static int NO_TOTALS
          A flag indicating that the total calculation should be removed for the specified edge.
static int PAGE_EDGE
          Page edge.
static int PIVOT_CHECK_OK
          Pivot would be successful.
static int PIVOT_CHECK_UNKNOWN
          Pivot would be unsuccessful, reason unknown.
static int PIVOT_EDGES
          Swaps the specified edges.
static int PIVOT_MOVE_AFTER
          Move the "from" layer after the "to" layer on the same or another edge.
static int PIVOT_MOVE_BEFORE
          Move the "from" layer before the "to" layer on the same or another edge.
static int PIVOT_MOVE_TO
          Move the "from" layer to the "to" layer on another edge.
static int PIVOT_SWAP
          Swaps a layer from one location on an edge to another location on the same or another edge.
static java.lang.String PROP_ASYNCHRONOUS
          Should the query operate asynchronously or synchronously?
static java.lang.String PROP_AUTO_FIRE_EVENTS
          Indicates whether events are automatically fired upon successful operation completion.
static java.lang.String PROP_CACHE_LIMIT
          Property that specifies the cache limit until an implementation should delete or roll off its cached DataAccess data.
static java.lang.String PROP_COLUMN_FETCH_SIZE
          Indicates the preferred column size of any virtual block fetching the DataAccess needs to do.
static java.lang.String PROP_COLUMN_SORTS_SUPPORTED
          Property that indicates whether the DataDirector2 implementation supports the setColumnSorts and getColumnSorts methods.
static java.lang.String PROP_DD2_DRILL_SUPPORTED
          Property that indicates whether the DataDirector2 implementation supports the overridden drill and drillOK methods that are defined in the DataDirector2 interface.
static java.lang.String PROP_DD2_VARIABLE_DRILLPATHS
          Property that indicates whether the DataDirector2 implementation supports METADATA_DRILLPATHS metadata that varies with each member.
static java.lang.String PROP_DEFAULT_DRILL_TYPE
          Indicates the type of default drilling this DataDirector supports e.g., DRILL_REPLACE, DRILL_MEMBERS_BELOW, DRILL_MEMBERS_ABOVE, etc.
static java.lang.String PROP_EDGE_EXTENT_AVAILABLE
          Property that allows the setting or checking of whether edge extents are available for given edges.
static java.lang.String PROP_HIDDEN_EDGE_SUPPORTED
          Property that indicates whether the DataDirector2 implementation supports the "hidden edge", meaning an edge one beyond the page edge.
static java.lang.String PROP_IS_COLUMN_OUTLINE_SUPPORTED
          Indicates whether this DataDirector is associated with a query that supports outline mode specifically on the column edge for non tabular results.
static java.lang.String PROP_IS_OUTLINE_SUPPORTED
          Indicates whether this DataDirector is associated with a query that supports outline mode for non tabular results.
static java.lang.String PROP_IS_ROW_OUTLINE_SUPPORTED
          Indicates whether this DataDirector is associated with a query that supports outline mode specifically on the row edge for non tabular results.
static java.lang.String PROP_PAGE_SORTS_SUPPORTED
          Property that indicates whether the DataDirector2 implementation supports sorting on the page edge.
static java.lang.String PROP_REL_INDENT_SCAN_LIMIT
          Property that specifies the number of members that a particular DataDirector2's DataAccess instances will scan to provide MetadataMap.METADATA_REL_INDENT information.
static java.lang.String PROP_ROW_FETCH_SIZE
          Indicates the preferred row size of any virtual block fetching the DataAccess needs to do.
static java.lang.String PROP_SORTS_SUPPORTED
          Property that indicates whether the DataDirector2 implementation supports the setSorts and getSorts methods.
static java.lang.String PROP_SUPPORTED_DRILL_TYPES
          Indicates all the types of drilling this DataDirector supports e.g., DRILL_REPLACE, DRILL_MEMBERS_BELOW, DRILL_MEMBERS_ABOVE, etc.
static java.lang.String PROP_TABULAR
          Indicates whether this DataDirector is associated with results appropriate to a table view.
static java.lang.String PROP_TOTALS_ALLOWED
           
static java.lang.String PROP_TOTALS_VISIBLE
          Property that specifies whether a particular DataDirector2's DataAccess instances provide total and subtotal data in their cursors.
static java.lang.String PROP_UNIQUE_MEMBERS_SCAN_LIMIT
          Property that specifies the number of members a particular DataDirector2's DataAccess instances will scan to provide the list of getUniqueMemberMetadata information in asymmetric cases.
static int ROW_EDGE
          Row edge.
static int SECTION_EDGE
          Section edge
static int SORT_DIRECTION_ASCENDING
          Indicates the sort should be ascending (lower numeric values to higher numeric values, or A to Z).
static int SORT_DIRECTION_DESCENDING
          Indicates the sort should be descending (higher numeric values to lower numeric values, or Z to A).
static int SORT_TYPE_GROUPSORT
          Indicates the table sort should be a group sort.
static int SORT_TYPE_GROUPSORT_PAGEBREAK
          Indicates the table sort should be a group sort with page breaks.
static int SORT_TYPE_NORMAL
          Indicates the table sort should not be a group sort.
static int TOTAL_ALL_LAYERS
          A flag indicating that the total calculation should be inserted and maintained for all layers on an edge.
static int TOTAL_AVERAGE
          A flag indicating that an inserted calculation is a row or column total calculation performing an average of rows or columns
static int TOTAL_MAXIMUM
          A flag indicating that an inserted calculation is a row or column total calculation determining the maximum value of rows or columns
static int TOTAL_MINIMUM
          A flag indicating that an inserted calculation is a row or column total calculation determining the minimum value in rows or columns
static int TOTAL_SUM
          A flag indicating that an inserted calculation is a row or column total calculation performing a sum of rows or columns
static int ZERO_SUPPRESSION
          Suppress zeros.
 
Method Summary
 void addDataDirectorListener(DataDirectorListener l)
          Registers a listener to the data source for changes.
 boolean cancel()
          Cancels the current long-running operation, if possible.
 boolean changeEdgeCurrentHPos(int edge, int[] hPos, int maxLayerSpecified)
          Changes the slice of data, on the specified edge, that is designated as the current slice by using hierarchical addressing.
 boolean changeEdgeCurrentSlice(int edge, int slice)
          Changes the slice, on the specified edge, that is designated as the current slice of data.
 boolean deleteMemberCalc(int edge, int layer, int slice)
          Deletes a calculation from the display based on a member that is located at the specified edge, layer, and slice.
 boolean deleteValueCalc(int row, int column)
          Deletes a calculation at the specified row and column of the body of a data for a view.
 boolean drill(int edge, int layer, int[] slice, int flags)
          Drills in data based on multiple selected members.
 boolean drill(int edge, int layer, int[] slice, java.lang.String pathID, java.lang.String targetID, int flags)
          Drills in the data for multiple members.
 boolean drill(int edge, int layer, int slice, int flags)
          Drills in the data for a single member.
 boolean drill(int edge, int layer, int slice, java.lang.String pathID, java.lang.String targetID, int flags)
          Drills in the data for a single member.
 boolean drillOK(int edge, int layer, int[] slice, int flags)
          Indicates whether the specified drill operation from multiple selected members would be a valid drill.
 boolean drillOK(int edge, int layer, int[] slice, java.lang.String pathID, java.lang.String targetID, int flags)
          Indicates whether the specified drill operation from multiple selected members would be a valid drill.
 boolean drillOK(int edge, int layer, int slice, int flags)
          Indicates whether a drill operation from a single selected member would be legal.
 boolean drillOK(int edge, int layer, int slice, java.lang.String pathID, java.lang.String targetID, int flags)
          Indicates whether a drill operation from a single selected member would be legal.
 void fireEvents()
          Fire any pending events to all listeners.
 ColumnSortInfo[] getColumnSorts()
          Retrieves sorting information for given layers on a table-style view.
 java.lang.Object[][] getCompatibleDataItemMetadata(java.lang.String[] types, java.lang.String[] idList)
          Return sets of metadata for a list of data items that can be referenced by the underlying query for use in building conditional formatting expressions, etc.
 DataAccess getDataAccess()
          Called by the view to get a current BaseDataAccess model of the data.
 DataMap getDataMap()
          Retrieves the list of types of data that can be retrieved or set for each location in the data cursor.
 DimensionSortInfo[] getDimensionSorts()
          Retrieves sorting information for given dimensions.
 java.lang.Object[] getExpressions()
          Return the entire set of expression tree structures set on this query.
 MemberSortInfo[] getMemberSorts()
          Retrieves the set of member sort information.
 MetadataMap getMetadataMap(int edge, int layer)
          Retrieves the list of all the types of metadata that callers have requested to be included in the cursors for the specified logical layer.
 java.lang.Object getProperty(java.lang.String name)
          Gets a property from a DataDirector2 object.
 SortInfo[] getSorts()
          Retrieves sorting information for given layers on a crosstab-style view.
 StatusInfo getStatus()
          Returns an object that contains progress information (if supported) and contains an enumerated status constant, and a return value if the call has completed successfully and the call returns a value.
 DataMap getSupportedDataMap()
          Retrieves a Datamap object that contains all data map types that are available for the definition of a data map.
 LayerMetadataMap getSupportedLayerMetadataMap()
          Retrieves a LayerMetadataMap object that contains all the types of layer metadata that are available for the definition of a layer metadata map.
 MetadataMap getSupportedMetadataMap()
          Retrieves a MetadataMap object that contains all the types of metadata that are available for the definition of a metadata map.
 boolean insertMemberCalc(int edge, int layer, int slice, int flags, java.lang.Object calc)
          Inserts a calculation into a display based on the member at the specified edge, layer, and slice.
 boolean insertValueCalc(int row, int column, int flags, java.lang.Object calc)
          Inserts a calculation at a specified row and column in the body of a view's data.
 boolean isCancelable()
          Indicates whether this DataDirector implementor allows views to cancel an operation that takes a long time.
 boolean isOutline()
          Indicates whether data is provided in outline form or inline form.
 boolean pivot(int fromEdge, int toEdge, int fromLayer, int toLayer, int flags)
          Pivots or swaps data.
 int pivotCheck(int fromEdge, int toEdge, int fromLayer, int toLayer, int flags)
          Indicates whether the specified pivot operation would be valid for the current data layout.
 boolean pivotOK(int fromEdge, int toEdge, int fromLayer, int toLayer, int flags)
          Indicates whether the specified pivot operation would be valid for the current data layout.
 boolean refresh()
          Refreshes data and fires a DataChangedEvent to all registered listeners.
 void release()
          Releases any resources associated with this BaseDataDirector instance.
 void removeDataDirectorListener(DataDirectorListener l)
          Removes a listener from the data source.
 boolean reorder(int edge, int fromLayer, int toLayer, int flags)
          If this is a RelationalDataDirector, reorders the layers (that is, columns) on the column edge.
 boolean revalidate()
          Rebuilds (that is, reruns) a query, refreshes the data cache, and fires a DataChangedEvent.
 boolean setColumnSorts(ColumnSortInfo[] sortInfo)
          Allows sorting by dimension items on a table-style view.
 void setDataMap(DataMap map, int sizeRow, int sizeColumn)
          Specifies the types of data to provide in a data cursor.
 boolean setDimensionSorts(DimensionSortInfo[] dimensionSortInfo)
          Allows sorting by N dimensions, with each dimension optionally sorted by a series of criteria including measure, name, attribute, hierarchy, etc.
 java.lang.String[] setExpressions(java.lang.Object[] expressions)
          Set the entire set of Boolean expressions this query should assign DataMap constants for and be able to evaluate for the session.
 void setLayerMetadata(int edge, int layer, java.lang.String type, java.lang.Object value)
          Sets a piece of metadata for a logical layer that is found at a specified edge, logical layer and LayerMetadataMap type.
 void setManualUpdate()
          Batches DataDirector operations.
 boolean setMemberSorts(MemberSortInfo[] memberSortInfo)
          Specifies a set of member sorts for N dimensions.
 void setMetadataMap(int edge, int layer, MetadataMap map, int size)
          Specifies the types of metadata to provide in the cursors for the specified logical layer.
 void setOutline(boolean outline)
          Specifies whether data is provided to a view in outline form.
 void setProperty(java.lang.String name, java.lang.Object value)
          Sets a property on a DataDirector2 object.
 boolean setSorts(SortInfo[] sortInfo)
          Allows sorting by N dimension items on a crosstab-style view, with each item optionally sorted by its own measure fact/dimension item combinations or by the item text.
 StatusInfo startExecution()
          Must be called to begin execution on an asynchronous query.
 void update()
          Processes batched DataDirector operations.
 

Field Detail

DRILL_REPLACE

static final int DRILL_REPLACE
A flag indicating that a "replace-style" drill should be performed

See Also:
drill(int, int, int, int), drillOK(int, int, int, int), Constant Field Values

DRILL_COLLAPSE

static final int DRILL_COLLAPSE
A flag indicating that a "collapse-style" drill should be performed

See Also:
drill(int, int, int, int), drillOK(int, int, int, int), Constant Field Values

DRILL_TO_PARENT

static final int DRILL_TO_PARENT
A flag indicating that a "drill-to-parent" drill should be performed

See Also:
drill(int, int, int, int), drillOK(int, int, int, int), Constant Field Values

DRILL_TO_PARENT_AND_SIBLINGS

static final int DRILL_TO_PARENT_AND_SIBLINGS
A flag indicating that a "drill-to-parent and siblings" drill should be performed

See Also:
drill(int, int, int, int), drillOK(int, int, int, int), Constant Field Values

DRILL_BACK

static final int DRILL_BACK
A flag indicating that a "replace-style" drill should be undone.

See Also:
drill(int, int, int, int), drillOK(int, int, int, int), Constant Field Values

DRILL_MEMBERS_ABOVE

static final int DRILL_MEMBERS_ABOVE
A flag indicating that inserted drill down results should be placed "above" the target

See Also:
drill(int, int, int, int), drillOK(int, int, int, int), Constant Field Values

DRILL_MEMBERS_BELOW

static final int DRILL_MEMBERS_BELOW
A flag indicating that inserted drill down results should be placed below the target, as opposed to inserting a column, etc.

See Also:
drill(int, int, int, int), drillOK(int, int, int, int), Constant Field Values

PIVOT_EDGES

static final int PIVOT_EDGES
Swaps the specified edges. Ignores layers.

See Also:
Constant Field Values

PIVOT_SWAP

static final int PIVOT_SWAP
Swaps a layer from one location on an edge to another location on the same or another edge.

See Also:
Constant Field Values

PIVOT_MOVE_BEFORE

static final int PIVOT_MOVE_BEFORE
Move the "from" layer before the "to" layer on the same or another edge.

See Also:
Constant Field Values

PIVOT_MOVE_AFTER

static final int PIVOT_MOVE_AFTER
Move the "from" layer after the "to" layer on the same or another edge.

See Also:
Constant Field Values

PIVOT_MOVE_TO

static final int PIVOT_MOVE_TO
Move the "from" layer to the "to" layer on another edge. This should be used when the "to" edge has 0 layers.

See Also:
Constant Field Values

COLUMN_EDGE

static final int COLUMN_EDGE
Column edge.

See Also:
Constant Field Values

ROW_EDGE

static final int ROW_EDGE
Row edge.

See Also:
Constant Field Values

PAGE_EDGE

static final int PAGE_EDGE
Page edge.

See Also:
Constant Field Values

SECTION_EDGE

static final int SECTION_EDGE
Section edge

See Also:
Constant Field Values

DATA_ELEMENT_EDGE

static final int DATA_ELEMENT_EDGE
Data element edge. This edge is defined for layout panels especially to indicate pivoting items from or to an extra central "edge" that can be used for any purpose by the implementor.

See Also:
Constant Field Values

DRILLSTATE_NOT_DRILLABLE

static final int DRILLSTATE_NOT_DRILLABLE
Not able to drill. Perhaps the member has no hierarchy. This is one of the constants that can be returned if the DataAccess.getMemberMetadata method is called with the parameter MetadataMap.METADATA_DRILLSTATE, or if the DataAccess.getLayerMetadata method is called with the parameter LayerMetadataMap.LAYER_METADATA_DRILLSTATE.

See Also:
DataAccess.getMemberMetadata(int, int[], int, int, java.lang.String), CDFDataAccess.getLayerMetadata(int, int, java.lang.String), MetadataMap.METADATA_DRILLSTATE, LayerMetadataMap.LAYER_METADATA_DRILLSTATE, Constant Field Values

DRILLSTATE_DRILLABLE

static final int DRILLSTATE_DRILLABLE
The hierarchy for the member can be drilled, that is, expanded to provide more detail. This is one of the constants that can be returned if the DataAccess.getMemberMetadata method is called with the parameter MetadataMap.METADATA_DRILLSTATE, or if the DataAccess.getLayerMetadata method is called with the parameter LayerMetadataMap.LAYER_METADATA_DRILLSTATE.

See Also:
DataAccess.getMemberMetadata(int, int[], int, int, java.lang.String), CDFDataAccess.getLayerMetadata(int, int, java.lang.String), MetadataMap.METADATA_DRILLSTATE, LayerMetadataMap.LAYER_METADATA_DRILLSTATE, Constant Field Values

DRILLSTATE_IS_DRILLED

static final int DRILLSTATE_IS_DRILLED
The hierarchy for the member cannot be drilled, that is, expanded further. You can drill up, that is, collapse levels of detail. This is one of the constants that can be returned if the DataAccess.getMemberMetadata method is called with the parameter MetadataMap.METADATA_DRILLSTATE, or if the DataAccess.getLayerMetadata method is called with the parameter LayerMetadataMap.LAYER_METADATA_DRILLSTATE.

See Also:
DataAccess.getMemberMetadata(int, int[], int, int, java.lang.String), CDFDataAccess.getLayerMetadata(int, int, java.lang.String), MetadataMap.METADATA_DRILLSTATE, LayerMetadataMap.LAYER_METADATA_DRILLSTATE, Constant Field Values

SORT_DIRECTION_ASCENDING

static final int SORT_DIRECTION_ASCENDING
Indicates the sort should be ascending (lower numeric values to higher numeric values, or A to Z).

See Also:
Constant Field Values

SORT_DIRECTION_DESCENDING

static final int SORT_DIRECTION_DESCENDING
Indicates the sort should be descending (higher numeric values to lower numeric values, or Z to A).

See Also:
Constant Field Values

SORT_TYPE_NORMAL

static final int SORT_TYPE_NORMAL
Indicates the table sort should not be a group sort.

See Also:
Constant Field Values

SORT_TYPE_GROUPSORT

static final int SORT_TYPE_GROUPSORT
Indicates the table sort should be a group sort.

See Also:
Constant Field Values

SORT_TYPE_GROUPSORT_PAGEBREAK

static final int SORT_TYPE_GROUPSORT_PAGEBREAK
Indicates the table sort should be a group sort with page breaks.

See Also:
Constant Field Values

PROP_TOTALS_VISIBLE

static final java.lang.String PROP_TOTALS_VISIBLE
Property that specifies whether a particular DataDirector2's DataAccess instances provide total and subtotal data in their cursors. Legal values for the setting parameter in setProperty are Boolean true or Boolean false.

See Also:
setProperty(java.lang.String, java.lang.Object), Constant Field Values

PROP_TOTALS_ALLOWED

static final java.lang.String PROP_TOTALS_ALLOWED
See Also:
Constant Field Values
For internal use only. Application developers should not use this
Property that specifies whether totals are allowed in this cursor.

PROP_REL_INDENT_SCAN_LIMIT

static final java.lang.String PROP_REL_INDENT_SCAN_LIMIT
Property that specifies the number of members that a particular DataDirector2's DataAccess instances will scan to provide MetadataMap.METADATA_REL_INDENT information. Legal values for the setting parameter in setProperty are positive Integer values greater than 0. A value of -1 resets the parameter to the implementation's default.

See Also:
setProperty(java.lang.String, java.lang.Object), Constant Field Values

PROP_UNIQUE_MEMBERS_SCAN_LIMIT

static final java.lang.String PROP_UNIQUE_MEMBERS_SCAN_LIMIT
Property that specifies the number of members a particular DataDirector2's DataAccess instances will scan to provide the list of getUniqueMemberMetadata information in asymmetric cases. Legal values for the setting parameter in setProperty are positive Integer values greater than 0. A value of -1 resets the parameter to the implementation's default.

See Also:
setProperty(java.lang.String, java.lang.Object), Constant Field Values

PROP_CACHE_LIMIT

static final java.lang.String PROP_CACHE_LIMIT
Property that specifies the cache limit until an implementation should delete or roll off its cached DataAccess data. Legal values for the setting parameter in setProperty are positive Integer values greater than 0. A value of -1 resets the parameter to the implementation's default.

See Also:
setProperty(java.lang.String, java.lang.Object), Constant Field Values

PROP_EDGE_EXTENT_AVAILABLE

static final java.lang.String PROP_EDGE_EXTENT_AVAILABLE
Property that allows the setting or checking of whether edge extents are available for given edges. Legal value for the setting parameter in setProperty is an ordered array of Boolean values, where the index of the array represents the edge in question. null values may be used as placeholders in the array for edges whose setting the user does not want to change. If this property setting is not implemented (that is, returns a null), then the caller should assume that all edges have extents available.

See Also:
setProperty(java.lang.String, java.lang.Object), Constant Field Values

PROP_SORTS_SUPPORTED

static final java.lang.String PROP_SORTS_SUPPORTED
Property that indicates whether the DataDirector2 implementation supports the setSorts and getSorts methods. This property is only valid for the getProperty call. It should return either Boolean true if the sorts methods are supported or false if they are not.

See Also:
getProperty(java.lang.String), Constant Field Values

PROP_COLUMN_SORTS_SUPPORTED

static final java.lang.String PROP_COLUMN_SORTS_SUPPORTED
Property that indicates whether the DataDirector2 implementation supports the setColumnSorts and getColumnSorts methods. This property is only valid for the getProperty call. It should return either Boolean true if the sorts methods are supported or false if they are not.

See Also:
getProperty(java.lang.String), Constant Field Values

PROP_PAGE_SORTS_SUPPORTED

static final java.lang.String PROP_PAGE_SORTS_SUPPORTED
Property that indicates whether the DataDirector2 implementation supports sorting on the page edge. This property is only valid for the getProperty call. It should return either Boolean true if page sorting is supported or false if it is not.

See Also:
getProperty(java.lang.String), Constant Field Values

PROP_DD2_DRILL_SUPPORTED

static final java.lang.String PROP_DD2_DRILL_SUPPORTED
Property that indicates whether the DataDirector2 implementation supports the overridden drill and drillOK methods that are defined in the DataDirector2 interface. This property is only valid for the getProperty call. It should return either Boolean true if the drill methods are supported or false if they are not.

See Also:
getProperty(java.lang.String), Constant Field Values

PROP_DD2_VARIABLE_DRILLPATHS

static final java.lang.String PROP_DD2_VARIABLE_DRILLPATHS
Property that indicates whether the DataDirector2 implementation supports METADATA_DRILLPATHS metadata that varies with each member. This property is only valid for the getProperty call. It should return either Boolean true if the METADATA_DRILLPATHS metadata varies with each member or false if the METADATA_DRILLPATHS metadata is always equal to the corresponding LAYER_METADATA_DRILLPATHS metadata.

See Also:
getProperty(java.lang.String), Constant Field Values

PROP_HIDDEN_EDGE_SUPPORTED

static final java.lang.String PROP_HIDDEN_EDGE_SUPPORTED
Property that indicates whether the DataDirector2 implementation supports the "hidden edge", meaning an edge one beyond the page edge. Value is true if the hidden edge is supported.

See Also:
getProperty(java.lang.String), Constant Field Values

PROP_ASYNCHRONOUS

static final java.lang.String PROP_ASYNCHRONOUS
Should the query operate asynchronously or synchronously?

See Also:
Constant Field Values

PROP_AUTO_FIRE_EVENTS

static final java.lang.String PROP_AUTO_FIRE_EVENTS
Indicates whether events are automatically fired upon successful operation completion.

See Also:
Constant Field Values

PROP_TABULAR

static final java.lang.String PROP_TABULAR
Indicates whether this DataDirector is associated with results appropriate to a table view.

See Also:
Constant Field Values

PROP_IS_OUTLINE_SUPPORTED

static final java.lang.String PROP_IS_OUTLINE_SUPPORTED
Indicates whether this DataDirector is associated with a query that supports outline mode for non tabular results.

See Also:
Constant Field Values

PROP_IS_ROW_OUTLINE_SUPPORTED

static final java.lang.String PROP_IS_ROW_OUTLINE_SUPPORTED
Indicates whether this DataDirector is associated with a query that supports outline mode specifically on the row edge for non tabular results.

See Also:
Constant Field Values

PROP_IS_COLUMN_OUTLINE_SUPPORTED

static final java.lang.String PROP_IS_COLUMN_OUTLINE_SUPPORTED
Indicates whether this DataDirector is associated with a query that supports outline mode specifically on the column edge for non tabular results.

See Also:
Constant Field Values

PROP_DEFAULT_DRILL_TYPE

static final java.lang.String PROP_DEFAULT_DRILL_TYPE
Indicates the type of default drilling this DataDirector supports e.g., DRILL_REPLACE, DRILL_MEMBERS_BELOW, DRILL_MEMBERS_ABOVE, etc. The return value is an Integer.

See Also:
Constant Field Values

PROP_SUPPORTED_DRILL_TYPES

static final java.lang.String PROP_SUPPORTED_DRILL_TYPES
Indicates all the types of drilling this DataDirector supports e.g., DRILL_REPLACE, DRILL_MEMBERS_BELOW, DRILL_MEMBERS_ABOVE, etc. The return value is an Integer array.

See Also:
Constant Field Values

PROP_COLUMN_FETCH_SIZE

static final java.lang.String PROP_COLUMN_FETCH_SIZE
Indicates the preferred column size of any virtual block fetching the DataAccess needs to do.

See Also:
Constant Field Values

PROP_ROW_FETCH_SIZE

static final java.lang.String PROP_ROW_FETCH_SIZE
Indicates the preferred row size of any virtual block fetching the DataAccess needs to do.

See Also:
Constant Field Values

NO_SUPPRESSION

static final int NO_SUPPRESSION
Do not suppress any values.

See Also:
Constant Field Values

ZERO_SUPPRESSION

static final int ZERO_SUPPRESSION
Suppress zeros.

See Also:
Constant Field Values

NA_SUPPRESSION

static final int NA_SUPPRESSION
Suppress NA values.

See Also:
Constant Field Values

NA_ZERO_SUPPRESSION

static final int NA_ZERO_SUPPRESSION
Suppress zeros and NA values.

See Also:
Constant Field Values

GROUPSORT_NONE

static final int GROUPSORT_NONE
The cell is not involved in a group sort in a table. This is one of the constants that can be returned if the DataAccess.getValue method is called with a type parameter equal to DataMap.DATA_GROUPSORT, which requests group sort information.

See Also:
DataAccess.getValue(int, int, java.lang.String), DataMap.DATA_GROUPSORT, Constant Field Values

GROUPSORT_START

static final int GROUPSORT_START
The cell marks the start of a group sort in a table. This is one of the constants that can be returned if the DataAccess.getValue method is called with a type parameter equal to DataMap.DATA_GROUPSORT, which requests group sort information.

See Also:
DataAccess.getValue(int, int, java.lang.String), DataMap.DATA_GROUPSORT, Constant Field Values

GROUPSORT_MIDDLE

static final int GROUPSORT_MIDDLE
The cell is located in the middle of a group sort in a table. This is one of the constants that can be returned if the DataAccess.getValue method is called with a type parameter equal to DataMap.DATA_GROUPSORT, which requests group sort information.

See Also:
DataAccess.getValue(int, int, java.lang.String), DataMap.DATA_GROUPSORT, Constant Field Values

GROUPSORT_END

static final int GROUPSORT_END
The cell marks the end of a group sort in a table. This is one of the constants that can be returned if the DataAccess.getValue method is called with a type parameter equal to DataMap.DATA_GROUPSORT, which requests group sort information.

See Also:
DataAccess.getValue(int, int, java.lang.String), DataMap.DATA_GROUPSORT, Constant Field Values

max_edge

static final int max_edge
Maximum edge that views will use when calling DataAccess and DataDirector. This constant is used by layout panels.

Typically, the maximum edge is PAGE_EDGE. Implementors can use edges with a value greater than this constant to "hide" qualifying logical layers from display by the views and, yet, keep these layers as part of their query for query manipulation.

See Also:
Constant Field Values

HIDDEN_EDGE

static final int HIDDEN_EDGE
Hidden edge constant

See Also:
Constant Field Values

TOTAL_SUM

static final int TOTAL_SUM
A flag indicating that an inserted calculation is a row or column total calculation performing a sum of rows or columns

See Also:
insertMemberCalc(int, int, int, int, java.lang.Object), Constant Field Values

TOTAL_AVERAGE

static final int TOTAL_AVERAGE
A flag indicating that an inserted calculation is a row or column total calculation performing an average of rows or columns

See Also:
insertMemberCalc(int, int, int, int, java.lang.Object), Constant Field Values

TOTAL_MINIMUM

static final int TOTAL_MINIMUM
A flag indicating that an inserted calculation is a row or column total calculation determining the minimum value in rows or columns

See Also:
insertMemberCalc(int, int, int, int, java.lang.Object), Constant Field Values

TOTAL_MAXIMUM

static final int TOTAL_MAXIMUM
A flag indicating that an inserted calculation is a row or column total calculation determining the maximum value of rows or columns

See Also:
insertMemberCalc(int, int, int, int, java.lang.Object), Constant Field Values

TOTAL_ALL_LAYERS

static final int TOTAL_ALL_LAYERS
A flag indicating that the total calculation should be inserted and maintained for all layers on an edge.

See Also:
insertMemberCalc(int, int, int, int, java.lang.Object), Constant Field Values

GRAND_TOTAL_LAYER

static final int GRAND_TOTAL_LAYER
A flag indicating that the total calculation being inserted or deleted is a grand total.

See Also:
insertMemberCalc(int, int, int, int, java.lang.Object), Constant Field Values

NO_TOTALS

static final int NO_TOTALS
A flag indicating that the total calculation should be removed for the specified edge. Please note that this constant is only used by get/setTotal() defined in Crosstab

See Also:
Constant Field Values

PIVOT_CHECK_OK

static final int PIVOT_CHECK_OK
Pivot would be successful.

See Also:
Constant Field Values

PIVOT_CHECK_UNKNOWN

static final int PIVOT_CHECK_UNKNOWN
Pivot would be unsuccessful, reason unknown.

See Also:
Constant Field Values

FORCE_FETCH_DATA

static final int FORCE_FETCH_DATA
Data fetch--equivalent to the old forceFetch call without the flag parameter

See Also:
Constant Field Values

FORCE_FETCH_RELATIVE_INDENT

static final int FORCE_FETCH_RELATIVE_INDENT
Relative indent

See Also:
Constant Field Values

FORCE_FETCH_SPANS

static final int FORCE_FETCH_SPANS
Spans

See Also:
Constant Field Values
Method Detail

cancel

boolean cancel()
               throws DataDirectorException
Cancels the current long-running operation, if possible.

Returns:
true if the implementor canceled the operation, false if the implementor did not or could not cancel the operation.
Throws:
DataDirectorException - If a data provider error occurs.

changeEdgeCurrentSlice

boolean changeEdgeCurrentSlice(int edge,
                               int slice)
                               throws EdgeOutOfRangeException,
                                      SliceOutOfRangeException,
                                      DataDirectorException
Changes the slice, on the specified edge, that is designated as the current slice of data. This method uses the slice parameter to indicate the new current slice.

Parameters:
edge - A constant that indicates the edge on which to change the current slice. Valid constants end with _EDGE in this interface.
slice - The zero-based index (along the specified edge) of the slice that is to become the current slice.
Returns:
true if the change is successful, false if the change is not successful.
Throws:
EdgeOutOfRangeException - If edge is too large.
SliceOutOfRangeException - If slice is too large.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

changeEdgeCurrentHPos

boolean changeEdgeCurrentHPos(int edge,
                              int[] hPos,
                              int maxLayerSpecified)
                              throws EdgeOutOfRangeException,
                                     LayerOutOfRangeException,
                                     SliceOutOfRangeException,
                                     DataDirectorException
Changes the slice of data, on the specified edge, that is designated as the current slice by using hierarchical addressing. This method is generally used when paging controls change the current page of a view.

Parameters:
edge - A constant that indicates the edge on which to make the change. Valid constants end with _EDGE in this interface.
hPos - An array of relative indexes starting with the outermost layer and working in at least to maxLayerSpecified. This array indicates the set of new values to give to the various layers that specify the new current slice.
maxLayerSpecified - The maximum index into hPos (layer) that this method should use in making the change to the current slice.
Returns:
true if the current slice change is successful, false if the current slice change is not successful.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If the number of layers in hPos is too large.
SliceOutOfRangeException - If the indexes in the hPos are out of range.
DataDirectorException - If an error occurs during the operation.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

getDataAccess

DataAccess getDataAccess()
                         throws DataDirectorException
Called by the view to get a current BaseDataAccess model of the data.

Returns:
current model of data implemented via BaseDataAccess
Throws:
DataDirectorException

getSupportedMetadataMap

MetadataMap getSupportedMetadataMap()
Retrieves a MetadataMap object that contains all the types of metadata that are available for the definition of a metadata map. This is not meant to guarantee views that they can get all the supported types in every query.

Returns:
A MetadataMap object that contains all possible supported metadata types.
See Also:
MetadataMap

getSupportedLayerMetadataMap

LayerMetadataMap getSupportedLayerMetadataMap()
Retrieves a LayerMetadataMap object that contains all the types of layer metadata that are available for the definition of a layer metadata map. This is not meant to guarantee views that they can get all the supported types in every query.

Returns:
A LayerMetadataMap object that contains all possible supported layer metadata types.
See Also:
LayerMetadataMap

getSupportedDataMap

DataMap getSupportedDataMap()
Retrieves a Datamap object that contains all data map types that are available for the definition of a data map. This is not meant to guarantee views that they can get all the supported types in every query.

Returns:
A DataMap object that contains all possible supported data map types.
See Also:
DataMap

refresh

boolean refresh()
                throws DataDirectorException
Refreshes data and fires a DataChangedEvent to all registered listeners. This method signals the implementor to refresh the data cache without rerunning the query.

Returns:
true if data will be refreshed, false if data will not be refreshed.
Throws:
DataDirectorException - If an error occurs during the operation.

release

void release()
Releases any resources associated with this BaseDataDirector instance.


drill

boolean drill(int edge,
              int layer,
              int slice,
              int flags)
              throws EdgeOutOfRangeException,
                     LayerOutOfRangeException,
                     SliceOutOfRangeException,
                     DataDirectorException
Drills in the data for a single member.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the member to be drilled. The outermost layer on the edge is 0.
slice - The zero-based index (along the specified edge) of the slice that represents the member that is to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used.
flags - Indicates the type of drill to perform. Can be one of the DRILL_ constants, or zero. If flags is zero, then the member at the target location is drilled such that children are inserted below, if the member is undrilled, or removed, if the member is already drilled.
Returns:
true if the drill operation is successful; false if the drill operation is not successful.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, DRILL_REPLACE, DRILL_COLLAPSE, DRILL_TO_PARENT, DRILL_TO_PARENT_AND_SIBLINGS, DRILL_BACK

drillOK

boolean drillOK(int edge,
                int layer,
                int slice,
                int flags)
                throws EdgeOutOfRangeException,
                       LayerOutOfRangeException,
                       SliceOutOfRangeException,
                       DataDirectorException
Indicates whether a drill operation from a single selected member would be legal. This method is called before the drill method and does not perform the actual drill.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the member that is to be drilled. The outermost layer on the edge is 0.
slice - The zero-based index (along the specified edge) of the slice that represents the members that are to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used.
flags - @see #drill
Returns:
true if the specified drilling operation is legal, false if the specified operation is not legal.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
DataDirectorException - If an error occurs during the drilling operation.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

drill

boolean drill(int edge,
              int layer,
              int[] slice,
              int flags)
              throws EdgeOutOfRangeException,
                     LayerOutOfRangeException,
                     SliceOutOfRangeException,
                     DataDirectorException
Drills in data based on multiple selected members.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the members to be drilled. The outermost layer on the edge is 0.
slice - A list of the zero-based indexes (along the specified edge) of the slices that represent the members that are to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used.
flags - Indicates the type of drill to perform. Can be one of the DRILL_ constants, or zero. If flags is zero, then the member at the target location is drilled such that children are inserted below, if the member is undrilled, or removed, if the member is already drilled.
Returns:
true if the drill operation is successful, false if the drill operation is not successful.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, DRILL_REPLACE, DRILL_COLLAPSE, DRILL_TO_PARENT, DRILL_TO_PARENT_AND_SIBLINGS, DRILL_BACK

drillOK

boolean drillOK(int edge,
                int layer,
                int[] slice,
                int flags)
                throws EdgeOutOfRangeException,
                       LayerOutOfRangeException,
                       SliceOutOfRangeException,
                       DataDirectorException
Indicates whether the specified drill operation from multiple selected members would be a valid drill. This method is called before the drill method and does not perform the actual drill.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the member to be drilled. The outermost layer on the edge is 0.
slice - A list of the zero-based indexes (along the specified edge) of the slices that represent the members that are to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used.
flags - @see #drill
Returns:
true if this drilling operation is legal, false if not.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

pivot

boolean pivot(int fromEdge,
              int toEdge,
              int fromLayer,
              int toLayer,
              int flags)
              throws EdgeOutOfRangeException,
                     LayerOutOfRangeException,
                     DataDirectorException
Pivots or swaps data. Operations include:

Parameters:
fromEdge - A constant that indicates the edge from which a layer should be pivoted. Valid constants end with _EDGE in this interface.
toEdge - A constant that indicates the edge to which a layer should be pivoted. Valid constants end with _EDGE in this interface.
fromLayer - The zero-based index of the physical layer on the fromEdge that should be pivoted or swapped. The outermost layer on the edge is 0. Note that a Table object will report columns as its layers.
toLayer - The zero-based index of the physical layer on the toEdge that should be pivoted or swapped. The outermost layer on the edge is 0. Note that a Table object will report columns as its layers.
flags - A constant that indicates the type of pivot to perform. The constants begin with PIVOT_ in this interface.
Returns:
true if the pivot is successful, false if not.
Throws:
EdgeOutOfRangeException - If either edge is not valid.
LayerOutOfRangeException - If either layer is not valid.
DataDirectorException - If an error occurs during the operation.
See Also:
COLUMN_EDGE, DATA_ELEMENT_EDGE, PAGE_EDGE, ROW_EDGE, PIVOT_EDGES, PIVOT_MOVE_AFTER, PIVOT_MOVE_BEFORE, PIVOT_MOVE_TO, PIVOT_SWAP

pivotOK

boolean pivotOK(int fromEdge,
                int toEdge,
                int fromLayer,
                int toLayer,
                int flags)
                throws EdgeOutOfRangeException,
                       LayerOutOfRangeException,
                       DataDirectorException
Indicates whether the specified pivot operation would be valid for the current data layout. This method is called before the pivot method and does not perform the actual pivot. The data provider determines its own rules for valid pivot operations.

Parameters:
fromEdge - A constant that indicates the edge from which a layer should be pivoted. Valid constants end with _EDGE in this interface.
toEdge - A constant that indicates the edge to which a layer should be pivoted. Valid constants end with _EDGE in this interface.
fromLayer - The zero-based index of the physical layer on the fromEdge that should be pivoted or swapped. The outermost layer on the edge is 0. Note that a Table object will report columns as its layers.
toLayer - The zero-based index of the physical layer on the toEdge that should be pivoted or swapped. The outermost layer on the edge is 0. Note that a Table object will report columns as its layers.
flags - A constant that indicates the type of pivot to perform. The constants begin with PIVOT_ in this interface.
Returns:
true if the pivot is legal according to the data provider's rules, false if the pivot is not legal according to the data provider's rules.
Throws:
EdgeOutOfRangeException - If either edge is too large.
LayerOutOfRangeException - If either layer is negative or too large.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, DATA_ELEMENT_EDGE, PAGE_EDGE, ROW_EDGE, PIVOT_EDGES, PIVOT_MOVE_AFTER, PIVOT_MOVE_BEFORE, PIVOT_MOVE_TO, PIVOT_SWAP

reorder

boolean reorder(int edge,
                int fromLayer,
                int toLayer,
                int flags)
                throws EdgeOutOfRangeException,
                       LayerOutOfRangeException,
                       DataDirectorException
If this is a RelationalDataDirector, reorders the layers (that is, columns) on the column edge. If this is a CubeDataDirector, reorders the measure members within the measure layer. The flags parameter uses the pivot constants from this interface to specify the operation that is to be performed. These constants are as follows:

Parameters:
edge - A constant that identifies the edge on which the reorder takes place. Valid constants end with _EDGE in this interface. In a CubeDataDirector, this argument is ignored.
fromLayer - In a RelationalDataDirector, the zero-based index of the physical layer (column) to be moved. The outermost layer on the edge is 0. In a CubeDataDirector, the zero-based slice of the measure member to be moved. Any slice within the member's extent can be used.
toLayer - In a RelationalDataDirector, the zero-based index of the physical layer (column) with which or to which the fromLayer is to be moved. The outermost layer on the edge is 0. In a CubeDataDirector, the zero-based slice of the measure member with which or to which the fromLayer is to be moved. Any slice within the member's extent can be used.
flags - A constant that indicates the operation to be performed. The constants begin with PIVOT_ in this interface.
Returns:
true if reordering is successful, false if reordering is not successful.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If fromLayer or toLayer is negative or too large.
DataDirectorException - If an error occurs during the operation.
See Also:
COLUMN_EDGE, PAGE_EDGE, PIVOT_MOVE_AFTER, PIVOT_MOVE_BEFORE, PIVOT_SWAP, ROW_EDGE

insertValueCalc

boolean insertValueCalc(int row,
                        int column,
                        int flags,
                        java.lang.Object calc)
                        throws RowOutOfRangeException,
                               ColumnOutOfRangeException,
                               DataDirectorException
Inserts a calculation at a specified row and column in the body of a view's data.

Parameters:
row - The row at which to insert the calculation.
column - The column at which to insert the calculation. * @param flags Not yet defined.
calc - Not yet defined.
Returns:
true if the calculation is inserted, false if the calculation is not inserted.
Throws:
RowOutOfRangeException - If row is negative or too large.
ColumnOutOfRangeException - If column is negative or too large.
DataDirectorException - If an error occurs during the operation.

insertMemberCalc

boolean insertMemberCalc(int edge,
                         int layer,
                         int slice,
                         int flags,
                         java.lang.Object calc)
                         throws EdgeOutOfRangeException,
                                LayerOutOfRangeException,
                                SliceOutOfRangeException,
                                DataDirectorException
Inserts a calculation into a display based on the member at the specified edge, layer, and slice.

Parameters:
edge - A constant that specifies the edge that contains the member at which to insert the calculation. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer that contains the member at which to insert the calculation. The outermost layer on the edge is 0.
slice - The zero-based index (along the specified edge) of the slice at which to insert the calculation.
flags - Not yet defined.
calc - Not yet defined.
Returns:
true if the calculation is inserted, false if the calculation is not inserted.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
DataDirectorException - If an error occurs during the operation.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

deleteValueCalc

boolean deleteValueCalc(int row,
                        int column)
                        throws RowOutOfRangeException,
                               ColumnOutOfRangeException,
                               DataDirectorException
Deletes a calculation at the specified row and column of the body of a data for a view. Deletes the calculation only if it is present at the specified location.

Parameters:
row - The row at which to delete the calculation.
column - The column at which to delete the calculation.
Returns:
true if the calculation is deleted, false if the calculation is not deleted.
Throws:
RowOutOfRangeException - If row is negative or too large.
ColumnOutOfRangeException - If column is negative or too large.
DataDirectorException - If an error occurs during the operation.

deleteMemberCalc

boolean deleteMemberCalc(int edge,
                         int layer,
                         int slice)
                         throws EdgeOutOfRangeException,
                                LayerOutOfRangeException,
                                SliceOutOfRangeException,
                                DataDirectorException
Deletes a calculation from the display based on a member that is located at the specified edge, layer, and slice. Deletes the calculation only if it is present at the specified location.

Parameters:
edge - A constant that specifies the edge that contains the member for which to delete the calculation. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer that contains the member for which to delete the calculation. The outermost layer on the edge is 0.
slice - The zero-based index (along the specified edge) of the slice at which to delete the calculation.
Returns:
true if the calculation is deleted, false if the calculation is not deleted.
Throws:
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
DataDirectorException - If an error occurs during the operation.
EdgeOutOfRangeException
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

addDataDirectorListener

void addDataDirectorListener(DataDirectorListener l)
Registers a listener to the data source for changes. The DataDirector implementor is expected to fire a DataAvailableEvent in this routine when data is available and to provide an implementation of the DataAccess interface when data is ready.

Parameters:
l - The listener to add.

removeDataDirectorListener

void removeDataDirectorListener(DataDirectorListener l)
Removes a listener from the data source.

Parameters:
l - The listener to remove.

revalidate

boolean revalidate()
                   throws DataDirectorException
Rebuilds (that is, reruns) a query, refreshes the data cache, and fires a DataChangedEvent.

Returns:
true if data will be refreshed, false if data will not be refreshed.
Throws:
DataDirectorException - If an error occurs during the operation.

setMetadataMap

void setMetadataMap(int edge,
                    int layer,
                    MetadataMap map,
                    int size)
                    throws EdgeOutOfRangeException,
                           LayerOutOfRangeException,
                           DataDirectorException
Specifies the types of metadata to provide in the cursors for the specified logical layer.

Parameters:
edge - A constant that indicates the edge that contains the logical layer of interest. Valid constants end with _EDGE in this interface. To set a default map for all edges, pass -1.
layer - The index for the logical layer whose MetadataMap is to be set. To refer to all of the layers on an edge, use -1.
map - A list of the metadata types that the implementor should fetch for the specified layer, if possible.
size - A suggested number of metatdata values that the data provider should fetch at a time. This is a guide for the data provider about the size of metadata chunks. This parameter is ignored if the implementor does not support partial fetches.
Throws:
EdgeOutOfRangeException - If edge is out of range.
LayerOutOfRangeException - If layer is out of range.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

setDataMap

void setDataMap(DataMap map,
                int sizeRow,
                int sizeColumn)
                throws DataDirectorException
Specifies the types of data to provide in a data cursor.

Parameters:
map - A list of the data types that the caller expects in data cursors that the DataAccess implementation fetches.
sizeRow - The suggested number of rows that the data provider should fetch at a time.
sizeColumn - The suggested number of columns that the data provider should fetch at a time.
Throws:
DataDirectorException - If a data provider error occurs.

getMetadataMap

MetadataMap getMetadataMap(int edge,
                           int layer)
                           throws EdgeOutOfRangeException,
                                  LayerOutOfRangeException
Retrieves the list of all the types of metadata that callers have requested to be included in the cursors for the specified logical layer. This list includes the types of metadata that have been specified in setMetadataMap requests by any views that use this data provider.

Parameters:
edge - A constant that indicates the edge that contains the logical layer. Valid constants end with _EDGE in this interface. A value of -1 is a request for the default MetadataMap.
layer - A zero-based index for the logical layer for which to retrieve the metadata map. The outermost layer on the specified edge is zero. A layer value of -1 indicates all of the layers on the specified edge.
Returns:
The map that contains all of the types of metadata that are to be retrieved into the cursors for the layer.
Throws:
EdgeOutOfRangeException - If edge is out of range.
LayerOutOfRangeException - If layer is not valid.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

getDataMap

DataMap getDataMap()
Retrieves the list of types of data that can be retrieved or set for each location in the data cursor. This list includes the types of data that have been specified in data maps by any views that use this data provider.

Returns:
The map of available types of data.

isCancelable

boolean isCancelable()
Indicates whether this DataDirector implementor allows views to cancel an operation that takes a long time.

Returns:
true if the data provider supports cancelation of long operations, false if not.

setManualUpdate

void setManualUpdate()
Batches DataDirector operations. If the implementor supports command batching, then operations between this call and a call to update are batched.

See Also:
update()

update

void update()
            throws DataDirectorException
Processes batched DataDirector operations. Operations between a call to setManualUpdate and this method are batched. This method should also turn off manual update mode.

Throws:
DataDirectorException - If a data provider error occurs.
See Also:
setManualUpdate()

setOutline

void setOutline(boolean outline)
                throws DataDirectorException
Specifies whether data is provided to a view in outline form. Updates the data and fires a DataChanged event. This is an optional method because implementors that do not require an outline display do not have to support outline form. Outline form lists outer layers in the same depth as inner layers, whereas inline form shows outer layers at different depths.

For example, if the row edge uses outline form, all layers appear in the same label column. If the row edge does not use outline form, then there is a separate column for each layer.

Parameters:
outline - true to specify outline form for data, false to use inline form for data.
Throws:
DataDirectorException - If a data provider error occurs.

isOutline

boolean isOutline()
Indicates whether data is provided in outline form or inline form. Outline form lists outer layers in the same depth as inner layers, whereas inline form shows outer layers at different depths. This method should always return false if the implementor does not support outline form.

In a Crosstab, for example, if a row edge uses outline form, then all layers appear in the same label column. If a row edge does not use outline form, then there is a separate column for each layer.

Returns:
true if the data is provided in outline form, false if the data is provided in inline form.

getProperty

java.lang.Object getProperty(java.lang.String name)
                             throws DataDirectorException
Gets a property from a DataDirector2 object. The choices of properties are defined in DataDirector2, and the property's values depend on the definition of the property.

Parameters:
name - The name of the property whose value is requested. Valid property names have constants defined in DataDirector2 or its extensions. These constants begin with the prefix PROP_. Implementations may or may not make use of any particular property, and their persistence is NOT guaranteed.
Returns:
The value of the specified property. Valid values are determined by the particular property.
Throws:
DataDirectorException - If an error occurs getting the specified property.

setProperty

void setProperty(java.lang.String name,
                 java.lang.Object value)
                 throws DataDirectorException
Sets a property on a DataDirector2 object. The choices of properties are defined in DataDirector2, and the property's values depend on the definition of the property.

Parameters:
name - The name of the property whose value is changing. Valid property names have constants defined in DataDirector2 or its extensions. These constants begin with the prefix PROP_. Implementations may or may not make use of any particular property, and their persistence is NOT guaranteed.
value - A value to apply to the specified property. Valid values are determined by the particular property.
Throws:
DataDirectorException - If an error occurs setting the specified property.

drill

boolean drill(int edge,
              int layer,
              int slice,
              java.lang.String pathID,
              java.lang.String targetID,
              int flags)
              throws EdgeOutOfRangeException,
                     LayerOutOfRangeException,
                     SliceOutOfRangeException,
                     InvalidDrillPathException,
                     InvalidDrillTargetException,
                     DataDirectorException
Drills in the data for a single member. NOTE: The list of valid Drill Path/Drill Target combinations is available from the current DataAccess instance.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the member to be drilled. The outermost layer on the edge is 0.
slice - The zero-based index (along the specified edge) of the slice that represents the member that is to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used. NOTE: A slice value of -1 indicates that the drill operation is to be applied uniformly across the layer.
pathID - Drill Path ID for this drill operation.
targetID - Drill Target ID for this drill operation.
flags - Indicates the type of drill operation to perform.
Returns:
true if the drill operation is successful; false if the drill operation is not successful.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is too large or less than -1.
InvalidDrillPathException - If path is invalid.
InvalidDrillTargetException - If target is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, LayerMetadataMap.LAYER_METADATA_DRILLPATHS, MetadataMap.METADATA_DRILLPATHS, DRILL_COLLAPSE

drillOK

boolean drillOK(int edge,
                int layer,
                int slice,
                java.lang.String pathID,
                java.lang.String targetID,
                int flags)
                throws EdgeOutOfRangeException,
                       LayerOutOfRangeException,
                       SliceOutOfRangeException,
                       InvalidDrillPathException,
                       InvalidDrillTargetException,
                       DataDirectorException
Indicates whether a drill operation from a single selected member would be legal. This method is called before the drill method and does not perform the actual drill. NOTE: The list of valid Drill Path/Drill Target combinations is available from the current DataAccess instance.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the member that is to be drilled. The outermost layer on the edge is 0.
slice - The zero-based index (along the specified edge) of the slice that represents the member that is to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used. NOTE: A slice value of -1 indicates that the drill operation is to be applied uniformly across the layer.
pathID - Drill Path ID for this drill operation.
targetID - Drill Target ID for this drill operation.
flags - Indicates the type of drill operation to be performed.
Returns:
true if the specified drilling operation is legal, false if the specified operation is not legal. *
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is too large or less than -1.
InvalidDrillPathException - If path is invalid.
InvalidDrillTargetException - If target is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, LayerMetadataMap.LAYER_METADATA_DRILLPATHS, MetadataMap.METADATA_DRILLPATHS, DRILL_COLLAPSE

drill

boolean drill(int edge,
              int layer,
              int[] slice,
              java.lang.String pathID,
              java.lang.String targetID,
              int flags)
              throws EdgeOutOfRangeException,
                     LayerOutOfRangeException,
                     SliceOutOfRangeException,
                     InvalidDrillPathException,
                     InvalidDrillTargetException,
                     DataDirectorException
Drills in the data for multiple members. NOTE: The list of valid Drill Path/Drill Target combinations is available from the current DataAccess instance.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the member to be drilled. The outermost layer on the edge is 0.
slice - A list of the zero-based indexes (along the specified edge) of the slices that represent the members to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used.
pathID - Drill Path ID for this drill operation.
targetID - Drill Target ID for this drill operation.
flags - Indicates the type of drill operation to perform.
Returns:
true if the drill operation is successful, false if the drill operation is not successful.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
InvalidDrillPathException - If path is invalid.
InvalidDrillTargetException - If target is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, LayerMetadataMap.LAYER_METADATA_DRILLPATHS, MetadataMap.METADATA_DRILLPATHS, DRILL_COLLAPSE

drillOK

boolean drillOK(int edge,
                int layer,
                int[] slice,
                java.lang.String pathID,
                java.lang.String targetID,
                int flags)
                throws EdgeOutOfRangeException,
                       LayerOutOfRangeException,
                       SliceOutOfRangeException,
                       InvalidDrillPathException,
                       InvalidDrillTargetException,
                       DataDirectorException
Indicates whether the specified drill operation from multiple selected members would be a valid drill. This method is called before the drill method and does not perform the actual drill. NOTE: The list of valid Drill Path/Drill Target combinations is available from the current DataAccess instance.

Parameters:
edge - A constant that indicates the edge to drill. Valid constants end with _EDGE in this interface.
layer - The zero-based index of the physical layer of the member to be drilled. The outermost layer on the edge is 0.
slice - A list of the zero-based indexes (along the specified edge of the slices that represent the members that are to be drilled. Each member in the innermost layer has a unique slice. In outer layers, any slice that the member spans can be used.
pathID - Drill Path ID for this drill operation.
targetID - Drill Target ID for this drill operation.
flags - Indicates the type of drill operation to be performed.
Returns:
true if this drilling operation is legal, false if not.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
InvalidDrillPathException - If path is invalid.
InvalidDrillTargetException - If target is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, LayerMetadataMap.LAYER_METADATA_DRILLPATHS, MetadataMap.METADATA_DRILLPATHS, DRILL_COLLAPSE

setSorts

boolean setSorts(SortInfo[] sortInfo)
                 throws LayerOutOfRangeException,
                        DataDirectorException
Allows sorting by N dimension items on a crosstab-style view, with each item optionally sorted by its own measure fact/dimension item combinations or by the item text. Any settings made through this API are considered the entire set of sort criteria for the DataDirector: the given sort criteria replace previously set sort criteria.

Parameters:
sortInfo - An array of SortInfo objects. Each SortInfo object may specify one or more sort criterion by which to sort its corresponding dimension item. QDRSortInfo objects may be passed for items to sort by measure fact/dimension item combinations, or SortInfo objects may be passed to sort items by their text.
Returns:
true if the sort operation is successful, false if the sort operation is not successful.
Throws:
LayerOutOfRangeException - If layerName is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING

getSorts

SortInfo[] getSorts()
                    throws LayerOutOfRangeException,
                           DataDirectorException
Retrieves sorting information for given layers on a crosstab-style view.

Returns:
An array of SortInfo objects. These may be QDRSortInfo objects for items sorted by facts or SortInfo objects for items sorted by their text.
Throws:
LayerOutOfRangeException - If layerName is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING

setColumnSorts

boolean setColumnSorts(ColumnSortInfo[] sortInfo)
                       throws LayerOutOfRangeException,
                              DataDirectorException
Allows sorting by dimension items on a table-style view. Any settings made through this API are considered the entire set of sort criteria for the DataDirector: the given sort criteria replace previously set sort criteria.

Parameters:
sortInfo - An array of ColumnSortInfo objects. Each ColumnSortInfo object may specify a sort criterion by which to sort its corresponding dimension item.
Returns:
true if the sort operation is successful, false if the sort operation is not successful.
Throws:
LayerOutOfRangeException - If layerName is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING, SORT_TYPE_GROUPSORT, SORT_TYPE_GROUPSORT_PAGEBREAK

getColumnSorts

ColumnSortInfo[] getColumnSorts()
                                throws LayerOutOfRangeException,
                                       DataDirectorException
Retrieves sorting information for given layers on a table-style view.

Returns:
An array of ColumnSortInfo objects.
Throws:
LayerOutOfRangeException - If layerName is invalid.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, PAGE_EDGE, ROW_EDGE, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING, SORT_TYPE_GROUPSORT, SORT_TYPE_GROUPSORT_PAGEBREAK

pivotCheck

int pivotCheck(int fromEdge,
               int toEdge,
               int fromLayer,
               int toLayer,
               int flags)
               throws EdgeOutOfRangeException,
                      LayerOutOfRangeException,
                      DataDirectorException
Indicates whether the specified pivot operation would be valid for the current data layout. This method is called before the pivot method and does not perform the actual pivot. The data provider determines its own rules for valid pivot operations.

Parameters:
fromEdge - A constant that indicates the edge from which a layer should be pivoted. Valid constants end with _EDGE in this interface.
toEdge - A constant that indicates the edge to which a layer should be pivoted. Valid constants end with _EDGE in this interface.
fromLayer - The zero-based index of the physical layer on the fromEdge that should be pivoted or swapped. The outermost layer on the edge is 0. Note that a Table object will report columns as its layers.
toLayer - The zero-based index of the physical layer on the toEdge that should be pivoted or swapped. The outermost layer on the edge is 0. Note that a Table object will report columns as its layers.
flags - A constant that indicates the type of pivot to perform. The constants begin with PIVOT_ in this interface.
Returns:
constant indicating if the pivot was legal, and if not, an indication as to why not.
Throws:
EdgeOutOfRangeException - If either edge is too large.
LayerOutOfRangeException - If either layer is negative or too large.
DataDirectorException - If a data provider error occurs.
See Also:
COLUMN_EDGE, DATA_ELEMENT_EDGE, PAGE_EDGE, ROW_EDGE, PIVOT_EDGES, PIVOT_MOVE_AFTER, PIVOT_MOVE_BEFORE, PIVOT_MOVE_TO, *

getCompatibleDataItemMetadata

java.lang.Object[][] getCompatibleDataItemMetadata(java.lang.String[] types,
                                                   java.lang.String[] idList)
                                                   throws DataDirectorException
Return sets of metadata for a list of data items that can be referenced by the underlying query for use in building conditional formatting expressions, etc. (such as Sales > Costs).

Parameters:
types - List of MetadataMap types requested for each data item returned
idList - Optional list of MetadataMap.METADATA_VALUE IDs for which to return the metadata specified in types. If null, return all the compatible data items.
Returns:
The first dimension is a list of data item metadata compatible with this query. The second dimension specifies the requested metadata information for each data item returned, as specified by the types parameter.
Throws:
DataDirectorException

setExpressions

java.lang.String[] setExpressions(java.lang.Object[] expressions)
                                  throws DataDirectorException
Set the entire set of Boolean expressions this query should assign DataMap constants for and be able to evaluate for the session. Calling setExpressions will generally result in a query update.

Parameters:
expressions - an array of expression tree structures that represent Boolean expressions involving constants, and data item metadata IDs as returned by getCompatibleDataItemMetadata.
Returns:
ordered list of DataMap types associated with the given expressions. The caller may use these in subsequent DataAccess getValue() calls.
Throws:
DataDirectorException

getExpressions

java.lang.Object[] getExpressions()
Return the entire set of expression tree structures set on this query.

Returns:
list of expression tree structures previously set on this query.

setDimensionSorts

boolean setDimensionSorts(DimensionSortInfo[] dimensionSortInfo)
                          throws DataDirectorException
Allows sorting by N dimensions, with each dimension optionally sorted by a series of criteria including measure, name, attribute, hierarchy, etc. Any settings made through this API are considered the entire set of dimension sort criteria for the DataDirector: the given sort criteria replace previously set sort criteria.

Parameters:
dimensionSortInfo - An array of DimensionSortInfo objects. Each DimensionSortInfo object may specify one or more sort criterion by which to sort its corresponding dimension.
Returns:
true if the sort operation is successful, false if the sort operation is not successful.
Throws:
DataDirectorException - If a data provider error occurs.

getDimensionSorts

DimensionSortInfo[] getDimensionSorts()
                                      throws DataDirectorException
Retrieves sorting information for given dimensions.

Returns:
An array of DimensionSortInfo objects.
Throws:
DataDirectorException - If a data provider error occurs.

setMemberSorts

boolean setMemberSorts(MemberSortInfo[] memberSortInfo)
                       throws DataDirectorException
Specifies a set of member sorts for N dimensions. Any settings made through this API are considered the entire set of member sort criteria for the DataDirector: the given sort criteria replace previously set sort criteria.

Parameters:
memberSortInfo - An array of MemberSortInfo objects. Each MemberSortInfo object may specify one or more member sorts for its corresponding dimension.
Returns:
true if the sort operation is successful, false if the sort operation is not successful.
Throws:
DataDirectorException - If a data provider error occurs.

getMemberSorts

MemberSortInfo[] getMemberSorts()
                                throws DataDirectorException
Retrieves the set of member sort information.

Returns:
An array of MemberSortInfo objects. Each MemberSortInfo object may specify one or more member sorts for its corresponding dimension.
Throws:
DataDirectorException - If a data provider error occurs.

fireEvents

void fireEvents()
                throws DataDirectorException
Fire any pending events to all listeners.

Throws:
DataDirectorException - if an error occurs.

getStatus

StatusInfo getStatus()
                     throws DataDirectorException
Returns an object that contains progress information (if supported) and contains an enumerated status constant, and a return value if the call has completed successfully and the call returns a value.

Returns:
StatusInfo containing status, progress information (if supported), and a return value for the API call (if relevant).
Throws:
DataDirectorException - if an error occurs.

startExecution

StatusInfo startExecution()
                          throws DataDirectorException
Must be called to begin execution on an asynchronous query. Returns an object that contains progress information (if supported) and contains an enumerated status constant, and a return value if the call has completed successfully and the call returns a value.

Returns:
StatusInfo containing status, progress information (if supported), and a return value for the API call (if relevant).
Throws:
DataDirectorException - if an error occurs.

setLayerMetadata

void setLayerMetadata(int edge,
                      int layer,
                      java.lang.String type,
                      java.lang.Object value)
                      throws EdgeOutOfRangeException,
                             LayerOutOfRangeException
Sets a piece of metadata for a logical layer that is found at a specified edge, logical layer and LayerMetadataMap type. Calling this method may result in a DataChangedEvent, and may result in the new metadata being shared by others users of the DataAccess/DataDirector implementation. The changes may or may not be persisted if the DataDirector implementation is persistable. As a rule, only Strings, Booleans, Integers, Longs, Floats and Doubles will be persisted if at all.

Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
layer - The zero-based number of the layer for which metadata is to be set. Uses a depth computation to identify the location of the layer or layer member; 0 is the outer-most layer on the edge. The value for this parameter can be obtained by calling getMemberLogicalLayer.
type - A constant that specifies the kind of metadata that you want to set. Valid type values are defined in the LayerMetadataMap.
value - The new value for the metadata at the given edge, layer, and type. null clears the setting for the edge, layer, and type.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
See Also:
LayerMetadataMap, COLUMN_EDGE, PAGE_EDGE, ROW_EDGE

Oracle Fusion Middleware Java API Reference for Oracle Data Visualization Components
11g Release 2 (11.1.2.1.0)

E17492-02

Copyright © 1997, 2011, Oracle. All rights reserved.