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

E17492-02

oracle.dss.util
Class QDR

java.lang.Object
  extended by oracle.dss.util.QDR
All Implemented Interfaces:
java.io.Serializable, java.util.Map<java.lang.String,java.lang.Object>, DependentID, oracle.dss.util.persistence.XMLizable, QDRInterface
Direct Known Subclasses:
HierarchicalQDR

public class QDR
extends java.lang.Object
implements QDRInterface, DependentID, oracle.dss.util.persistence.XMLizable, java.io.Serializable

Qualified data reference. A qualified data reference is a reference to a subset of the values in a data source. For example, a QDR might refer to a Sales measure, but only to those values for the month of May. In another example, a QDR might refer to a Units measure, but only to the single value that represents the units of TVs sold by catalog in May in Dublin.

You can also create a QDR that refers only to a dimension. For example, you might want a reference only to the Month dimension. In this case, the QDR refers to all of the members in the Month dimension.

A QDR is structured as a set of dimension-member pairs:

See Also:
QDRMember, Serialized Form

Nested Class Summary
 class QDR.QDRMapEntry
           
 
Nested classes/interfaces inherited from interface java.util.Map
java.util.Map.Entry<K,V>
 
Field Summary
static java.lang.String ALL_PROPERTIES
           
protected static char ELEMENT_SEPARATOR
           
protected  java.util.Vector m_dimensions
           
protected  java.lang.String m_measureDim
           
protected  java.util.Vector m_members
           
protected  QDRMember m_memberVaries
           
protected  QDRMember m_target
           
protected static char PAIR_SEPARATOR
           
protected static java.lang.String PROBLEM_SEPARATOR
           
protected static java.lang.String REPLACEMENT_SEPARATOR
           
static java.lang.String XML_NAME
           
static java.lang.String XML_NAME_NEW
           
 
Constructor Summary
QDR()
          Constructor for an empty QDR that does not specify the Measure dimension.
QDR(QDR qdr)
          Constructor for a copy of an existing QDR.
QDR(java.lang.String measureDim)
          Constructor for an empty QDR that specifies the Measure dimension.
QDR(java.lang.String measureDim, java.lang.String dimMemberPairs)
          Constructor that specifies members for more than one dimension, by specifying a String for the member-dimension pairs.
QDR(java.lang.String measureDim, java.lang.String dim, QDRMember member)
          Constructor that specifies a member for one dimension, by specifying the dimension String and the member object.
QDR(java.lang.String measureDim, java.lang.String dim, java.lang.String member)
          Constructor that specifies a member for one dimension, by specifying the dimension String and the member object.
 
Method Summary
 void addDimMemberPair(java.lang.String dim, QDRMember member)
          Adds a dimension-member pair to this QDR.
 void addDimMemberPair(java.lang.String dimension, java.lang.String member)
          Adds a dimension-member pair to this QDR.
 void clear()
           
 java.lang.Object clone()
          Copies this QDR.
protected  java.util.Vector cloneMembers(java.util.Vector v)
           
protected  java.util.Vector cloneVector(java.util.Vector v)
          Copy a given vector by actually cloning each element.
static boolean contains(java.util.Map<java.lang.String,java.lang.Object> qdr1, java.util.Map<java.lang.String,java.lang.Object> qdr2)
           
protected static boolean contains(QDRInterface qdr1, QDRInterface qdr2)
           
 boolean containsKey(java.lang.Object key)
           
 boolean containsValue(java.lang.Object value)
           
 java.util.Set entrySet()
           
 boolean equals(java.util.Map<java.lang.String,java.lang.Object> map)
           
 boolean equals(java.lang.Object obj)
          Specifies whether this QDR is equivalent to the specified object.
 boolean equals(QDR q2)
          Specifies whether this QDR is equivalent to the specified QDR.
 java.lang.Object get(java.lang.Object key)
           
 java.util.Vector getAllDependentIDs(java.lang.String measDim, NameConverter nc)
          Get all the metadata IDs this object depends on, including measures, dimensions, etc.
 java.util.Vector getDependentIDs(java.lang.String measDim)
          At save time, return an ordered list of runtime IDs that the caller should later, in a call to setDependentIDs, replace with persistable strings.
 java.util.Enumeration getDimensions()
          Retrieves the enumeration of the dimensions in this QDR.
 QDRMember getDimMember(java.lang.String dim)
          Retrieves the member to which a dimension is limited.
 java.lang.String getDimMemberPairs()
          Retrieves the dimension-member pairs of this QDR, when the QDRMembers are of type FIXED.
 java.util.Vector getDims()
           
 char getElementSeparator()
          Return the separator used in dim/member pair strings
 java.lang.String getMeasureDim()
          Retrieves the name of the Measure dimension.
 java.util.Vector getMembers()
           
 char getPairSeparator()
          Return the separator used between dim member pairs
protected  java.util.Vector getQDRMeasures(java.lang.String strMeasure, oracle.dss.util.persistence.XMLContext context)
           
 java.lang.String getStateString(java.util.List memberContext)
          memberContext contains: Measure:Sales+Cost*Geography:London+Paris*Time:Feb2000 stateString: 0:0+1*1:0+1*2:0
 java.lang.String getTagName()
           
 QDRMember getTarget()
          Gets the target QDRMember
 java.lang.Object getXML(oracle.dss.util.persistence.XMLContext context)
           
 int hashCode()
          This must be implemented in a non order specific way.
 boolean isDimensionOnlyQDR()
          Indicates whether this QDR is a dimension-only QDR.
 boolean isDimensionSubsetOf(QDR qdr)
           
 boolean isEmpty()
           
protected  boolean isFixedType(QDRMember member)
           
 boolean isProperSubsetOf(QDR q2)
          Specifies whether this QDR is a proper subset of the specified QDR.
 boolean isProperSupersetOf(QDR q2)
          Specifies whether this QDR is a proper superset of the specified QDR.
 boolean isSubsetOf(QDRInterface q2)
          Specifies whether this QDR is a subset of the specified QDR.
 boolean isSupersetOf(QDRInterface q2)
          Specifies whether this QDR is a superset of the specified QDR.
 java.util.Set<java.lang.String> keySet()
           
 java.lang.Object put(java.lang.String key, java.lang.Object value)
           
 void putAll(java.util.Map t)
           
 java.lang.Object remove(java.lang.Object key)
           
 void removeDimMemberPair(java.lang.String dim)
          Removes a dimension-member pair from this QDR.
protected  java.lang.String replaceSeparator(java.lang.String base, java.lang.String separator, java.lang.String replacement)
           
 java.util.Vector setDependentIDs(java.lang.String measDim, java.util.Vector newIDs)
          At save time, pass an ordered list of substituted IDs that the implementer should use to replace portions of its state.
 void setDimMemberPairs(java.lang.String dimMemberPairs)
          Specifies a series of dimension-member pairs, where the members are of type FIXED.
 void setMeasureDim(java.lang.String measureDim)
           
protected  java.util.Vector setQDRMeasures(java.lang.String strMeasure, java.util.Vector vstrMeasures, oracle.dss.util.persistence.XMLContext context)
           
static QDR setStateString(java.util.List memberContext, java.lang.String stateString)
          memberContext contains: Measure:Sales+Colst*Geography:London+Paris*Time:Feb2000 stateString: 0:0+1*1:0+1*2:0
 void setTarget(QDRMember target)
          Sets the target QDRMember
 void setXML(oracle.dss.util.persistence.XMLContext context, java.lang.Object node)
           
 int size()
          Retrieves the number of dimension-member pairs in this QDR.
 java.lang.String toString()
          Generates a String representation of this QDR.
 java.util.Collection<java.lang.Object> values()
           
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

XML_NAME

public static final java.lang.String XML_NAME
See Also:
Constant Field Values
For internal use only. Application developers should not use this
The name of the QDR object when stored in XML

XML_NAME_NEW

public static final java.lang.String XML_NAME_NEW
See Also:
Constant Field Values

ALL_PROPERTIES

public static final java.lang.String ALL_PROPERTIES
See Also:
Constant Field Values
For internal use only. Application developers should not use this
Setting for "allProperties"

PROBLEM_SEPARATOR

protected static final java.lang.String PROBLEM_SEPARATOR
See Also:
Constant Field Values
For internal use only. Application developers should not use this
Problem separator

REPLACEMENT_SEPARATOR

protected static final java.lang.String REPLACEMENT_SEPARATOR
See Also:
Constant Field Values
For internal use only. Application developers should not use this
And its replacement

ELEMENT_SEPARATOR

protected static final char ELEMENT_SEPARATOR
See Also:
Constant Field Values

PAIR_SEPARATOR

protected static final char PAIR_SEPARATOR
See Also:
Constant Field Values

m_target

protected QDRMember m_target
For internal use only. Application developers should not use this
Target member property

m_dimensions

protected java.util.Vector m_dimensions
For internal use only. Application developers should not use this
Vector which stores the dimension names in the order they are added dimensions are stored in uppercase

m_members

protected java.util.Vector m_members
For internal use only. Application developers should not use this
The corresponding members for the above dimensions

m_measureDim

protected java.lang.String m_measureDim
For internal use only. Application developers should not use this
The name of the Measure dimension

m_memberVaries

protected QDRMember m_memberVaries
For internal use only. Application developers should not use this
The reusable QDRMember of type VARIES
Constructor Detail

QDR

public QDR()
Constructor for an empty QDR that does not specify the Measure dimension. When you use this constructor, the Measure dimension for this QDR is null. This QDR will not be associated with a particular Measure. The getMeasureDim method will return null.


QDR

public QDR(QDR qdr)
Constructor for a copy of an existing QDR. When you use this constructor, this QDR uses the same Measure dimension as the specified QDR. This constructor clones the dimensions and the members from the specified QDR.

Parameters:
qdr - The QDR to copy.

QDR

public QDR(java.lang.String measureDim)
Constructor for an empty QDR that specifies the Measure dimension.

Parameters:
measureDim - The name of the Measure dimension.

QDR

public QDR(java.lang.String measureDim,
           java.lang.String dim,
           java.lang.String member)
Constructor that specifies a member for one dimension, by specifying the dimension String and the member object. This constructor specifies the Measure dimension and also adds one dimension-member pair.

Parameters:
measureDim - The name of Measure dimension.
dim - The name of the dimension that you are limiting, such as "Geography".
member - The member to which you are limiting the dimension. You pass a String that identifies the member to which you are limiting the dimension, such as "Paris". This constructor creates a QDRMember object from the dim and member parameters.

QDR

public QDR(java.lang.String measureDim,
           java.lang.String dim,
           QDRMember member)
Constructor that specifies a member for one dimension, by specifying the dimension String and the member object. This constructor specifies the Measure dimension and also adds one dimension-member pair.

Parameters:
measureDim - The name of Measure dimension.
dim - The name of the dimension that you are limiting, such as "Geography".
member - The member to which you are limiting the dimension.

QDR

public QDR(java.lang.String measureDim,
           java.lang.String dimMemberPairs)
Constructor that specifies members for more than one dimension, by specifying a String for the member-dimension pairs. This constructor specifies the Measure dimension and also adds the dimension-member pairs specified in the dimMemberPairs parameter.

The format of the string is: "Dimension:Member;Dimension:Member". You can specify several dimension-member pairs.

You cannot use this constructor if any of the members need to have a type other than FIXED.

Parameters:
measureDim - The name of the Measure dimension.
dimMemberPairs - The formatted String that specifies the dimensions to limit and the members to limit them to. Use colons (:) to separate a dimension and a member. Use semicolons (;) to separate dimension-member pairs.
See Also:
QDRMember.FIXED
Method Detail

getElementSeparator

public char getElementSeparator()
Return the separator used in dim/member pair strings

Returns:
character used for separating pieces within dim/member pair strings

getPairSeparator

public char getPairSeparator()
Return the separator used between dim member pairs

Returns:
character used for separating dim member pairs

getMembers

public java.util.Vector getMembers()
Specified by:
getMembers in interface QDRInterface
Returns:
For internal use only. Application developers should not use this

cloneVector

protected java.util.Vector cloneVector(java.util.Vector v)
                                throws java.lang.CloneNotSupportedException
Copy a given vector by actually cloning each element. Note the elements must support the VectorClone interface as well as be Cloneable.

Parameters:
v - vector to copy
return - copy of vector v
Throws:
java.lang.CloneNotSupportedException - thrown if there is a problem cloning the elements

getMeasureDim

public java.lang.String getMeasureDim()
Retrieves the name of the Measure dimension. If no Measure dimension is specified for this QDR, then this method returns null.

Returns:
The name of the Measure dimension.

setMeasureDim

public void setMeasureDim(java.lang.String measureDim)
Parameters:
measureDim - The name of the Measure dimension.
For internal use only. Application developers should not use this
Specifies the name of the Measure dimension.

addDimMemberPair

public void addDimMemberPair(java.lang.String dimension,
                             java.lang.String member)
Adds a dimension-member pair to this QDR. This method creates a new QDRMember object and adds the QDRMember to this QDR.

Specified by:
addDimMemberPair in interface QDRInterface
Parameters:
dimension - The name of the dimension that you are limiting, such as "Geography".
member - The name of the member to which you want to limit dimension. When you specify a member, then the resulting QDRMember has type FIXED. If you pass null, then the resulting QDRMember has type VARIES.
See Also:
addDimMemberPair(String, QDRMember), QDRMember, QDRMember.FIXED, QDRMember.VARIES

addDimMemberPair

public void addDimMemberPair(java.lang.String dim,
                             QDRMember member)
Adds a dimension-member pair to this QDR. Adding a dimension-member pair to a QDR makes the QDR more restrictive. For example, if a QDR has only one dimension-member pair, such as one which limits Month to May, then the QDR refers to all the data in a data source where Month is May. If you add a second dimension-member pair, such one that limits Product to Shoes, then the QDR refers only to data where Month is May and Product is Shoes.

If dimension is already limited in this QDR, then the limitation changes to the specified member. For example, if a QDR limits Month to May, and you specify "Month" and a QDRMember that represents June, then Month will be limited to June.

If dimension is null, then the dimension-member pair is ignored, and this QDR is exactly as it was before the method is executed.

If this QDR refers to all of the members of a single dimension (that is, is a dimension-only QDR), and you pass a QDRMember that has any type other than VARIES, then this QDR loses its dimension-only nature, and it limits the specified dimension to the specified member.

Parameters:
dim - The name of the dimension that you are limiting, such as "Geography".
member - The member to which you are limiting the dimension. If you pass null, then this method uses a QDRMember of type VARIES for the member.

getDimMember

public QDRMember getDimMember(java.lang.String dim)
Retrieves the member to which a dimension is limited. For example, if the QDR includes the dimension-member pair "Month:May" and you call this method, passing "Month" in the dim parameter, then this method returns "May".

Specified by:
getDimMember in interface QDRInterface
Parameters:
dim - The dimension whose member you want.
Returns:
The member to which dim is limited. Returns null if dim is null or if dim does not have a QDRMember.

isDimensionOnlyQDR

public boolean isDimensionOnlyQDR()
Indicates whether this QDR is a dimension-only QDR. A dimension-only QDR refers only to all of the members of one dimension. For example, this method returns true if this QDR refers only to the Product dimension.

Such a QDR has one dimension-member pair, and the member of that pair has type VARIES.

Returns:
trueif this is a dimension-only QDR, false if this QDR limits one or more dimensions to a single member.
See Also:
QDRMember.VARIES

removeDimMemberPair

public void removeDimMemberPair(java.lang.String dim)
Removes a dimension-member pair from this QDR.

Specified by:
removeDimMemberPair in interface QDRInterface
Parameters:
dim - The dimension to remove. If dim does not exist, then this method has no effect. If dim is the dimension in the dimension-only QDR, then the dimension is removed, and this QDR becomes empty.

getDims

public java.util.Vector getDims()
Specified by:
getDims in interface QDRInterface
For internal use only. Application developers should not use this

getDimensions

public java.util.Enumeration getDimensions()
Retrieves the enumeration of the dimensions in this QDR.

Specified by:
getDimensions in interface QDRInterface
Returns:
The enumeration of the dimensions in this QDR.

size

public int size()
Retrieves the number of dimension-member pairs in this QDR. Returns 1 if this is a dimension-only QDR.

Specified by:
size in interface java.util.Map<java.lang.String,java.lang.Object>
Returns:
The number of dimension-member pairs in this QDR.

replaceSeparator

protected java.lang.String replaceSeparator(java.lang.String base,
                                            java.lang.String separator,
                                            java.lang.String replacement)
For internal use only. Application developers should not use this
Convert problem separator into temporary separator or back

setDimMemberPairs

public void setDimMemberPairs(java.lang.String dimMemberPairs)
Specifies a series of dimension-member pairs, where the members are of type FIXED. This method takes a formatted String and creates dimension-member pairs, where the members are single members, such as "PARIS" or "MAY2000". Use colons (:) to separate a dimension and a member. Use semicolons (;) to separate one dimension-member pair from the next dimension-member pair. For example, to limit three dimensions, the format of the String is:

Dimension:Member;Dimension:Member;Dimension:Member

Note that no dimension or member names can contain colons or semicolons. All members must be specified in the String, not as objects.

Parameters:
dimMemberPairs - The formatted String that specifies the dimensions to limit and the single members to limit them to. If a dimension-member pair in dimMemberPairs is malformed, then this method ignores that dimension-member pair and begins parsing at the next semicolon.
See Also:
QDRMember, QDRMember.FIXED

isFixedType

protected boolean isFixedType(QDRMember member)

getDimMemberPairs

public java.lang.String getDimMemberPairs()
Retrieves the dimension-member pairs of this QDR, when the QDRMembers are of type FIXED. This method returns a String that specifies all of the dimension-member pairs in the QDR. You can use this method only if all of the members in this QDR are of type FIXED or if this is a dimension-only QDR. If this is a dimension-only QDR, then this method returns only the dimension name.

Semicolons separate one dimension-member pair from another, and colons separate the dimension from the member.

For example, if the QDR refers to Units of TVs sold in Dublin in May by catalog, the String will look something like this:

"MEASURE_DIM:UNITS;PRODUCT:TVS;GEOGRAPHY:DUBLIN;MONTH:MAY;CHANNEL:CATALOG"

The String that this method returns is suitable to pass to the setDimMemberPairs method.

Returns:
The string of dimension-member pairs in this QDR. If this is a dimension-only QDR, then this method returns the dimension name.
See Also:
setDimMemberPairs(java.lang.String), addDimMemberPair(String, String)

setTarget

public void setTarget(QDRMember target)
Sets the target QDRMember

Parameters:
target - target to set

getTarget

public QDRMember getTarget()
Gets the target QDRMember

Returns:
target member

contains

protected static boolean contains(QDRInterface qdr1,
                                  QDRInterface qdr2)
Parameters:
qdr1 - the QDR.
qdr2 - the QDR.
Returns:
true if all the dimension member pairs in qdr1 contain the corresponding members of qdr2. false otherwise.
For internal use only. Application developers should not use this
(This method is static protected helper.) contains() checks if all the dimension member pairs in the first QDR contain the corresponding members of the second QDR. Order is not taken into account. The QDRMember.contains() method is used to determine member containment. The dimension and the member must be exactly the same in both QDRs.

equals

public boolean equals(QDR q2)
Specifies whether this QDR is equivalent to the specified QDR. Two QDR objects are equal if they both have the same dimension-member pairs. The dimension-member pairs do not have to be in the same order.

Dimensions that have varied members are ignored in this comparison, unless both this QDR and q2 are dimension-only QDRs.

Parameters:
q2 - The QDR to which you want to compare this QDR.
Returns:
true if all the dimension-member pairs in this QDR are the same as the dimension member pairs in the specified QDR and vice versa, false if any dimension-member pairs differ or if the specified QDR is null.
See Also:
QDRMember.VARIES

equals

public boolean equals(java.lang.Object obj)
Specifies whether this QDR is equivalent to the specified object. Two QDR objects are equal if they both have the same dimension-member pairs. The dimension-member pairs do not have to be in the same order.

Dimensions that have varied members are ignored in this comparison, unless both this QDR and q2 are dimension-only QDRs.

Specified by:
equals in interface java.util.Map<java.lang.String,java.lang.Object>
Specified by:
equals in interface QDRInterface
Overrides:
equals in class java.lang.Object
Parameters:
q2 - The QDR to which you want to compare this QDR.
Returns:
true if all the dimension-member pairs in this QDR are the same as the dimension member pairs in the specified QDR and vice versa, false if any dimension-member pairs differ or if the specified QDR is null. Also returns false if obj is not a QDR.
See Also:
QDRMember.VARIES

contains

public static boolean contains(java.util.Map<java.lang.String,java.lang.Object> qdr1,
                               java.util.Map<java.lang.String,java.lang.Object> qdr2)
Parameters:
qdr1 -
qdr2 -
Returns:
For internal use only. Application developers should not use this

equals

public boolean equals(java.util.Map<java.lang.String,java.lang.Object> map)

isProperSupersetOf

public boolean isProperSupersetOf(QDR q2)
Specifies whether this QDR is a proper superset of the specified QDR. A QDR is a proper superset of another QDR when it refers to the all of the values of the other QDR and to more values. A proper superset limits fewer dimensions than the QDR of which it is a superset.

For example, say you have the following QDR objects:

QdrTwo is a proper superset of QdrOne, because it refers to all of the data values that QdrOne refers to, and it refers to more values. QdrOne refers only to Shoes, but QdrTwo refers to other products as well.

QdrThree is a proper superset of QdrOne, because it is equivalent to QdrTwo. Note that the order of the dimension-member pairs does not matter.

QdrFour is not a proper superset of QdrOne, because it refers to June, while QdrOne refers to May.

The type of each member in the comparison is also important. Members with type FIXED are more restrictive than members of type LIST, and members of type LIST are more restrictive than members of type VARIES. The following example illustrates the effect of the member type. Suppose you have the following members in two QDR objects:

In this example, QdrTwo is a proper superset of QdrThree, and QdrOne is a proper superset of QdrTwo.

If two QDR objects are equivalent, then each is a superset of the other, but neither QDR is a proper superset of the other.

Parameters:
q2 - The QDR to which you want to compare this QDR.
Returns:
true if this QDR refers to some, but not all, of the data that q2 refers to, false if this QDR refers to different data, exactly the same data, or more data.
See Also:
isSupersetOf(oracle.dss.util.QDRInterface), QDRMember.FIXED, QDRMember.VARIES, QDRMember.LIST, QDRMember.getType()

isProperSubsetOf

public boolean isProperSubsetOf(QDR q2)
Specifies whether this QDR is a proper subset of the specified QDR. A QDR is a proper subset of another QDR when it refers to the some, but not all, of the values of the other QDR. A proper subset limits more dimensions than the QDR of which it is a subset.

For example, say you have the following QDR objects:

QdrTwo is a proper subset of QdrOne, because it refers to a subset of the data values that QdrOne refers to. QdrOne refers to all products and all channels, but QdrTwo refers only to socks sold by direct channel. Both QDR objects refer to the Sales measure and to the month of May. Note that the order of the dimension-member pairs does not matter.

The type of each member in the comparison is also important. Members with type VARIES are less restrictive than members of type LIST, and members of type LIST are less restrictive than members of type FIXED. The following example illustrates the effect of the member type. Suppose you have the following members in two QDR objects:

In this example, QdrTwo is a proper subset of QdrOne, and QdrThree is a proper subset of QdrTwo.

If two QDR objects are equivalent, then each is a subset of the other, but neither QDR is a proper subset of the other.

Parameters:
q2 - The QDR to which you want to compare this QDR.
Returns:
true if q2 refers to some, but not all, of the data that this QDR refers to, false if q2 refers to different data, exactly the same data, or more data.
See Also:
isSubsetOf(oracle.dss.util.QDRInterface), QDRMember.FIXED, QDRMember.VARIES, QDRMember.LIST, QDRMember.getType()

isSubsetOf

public boolean isSubsetOf(QDRInterface q2)
Specifies whether this QDR is a subset of the specified QDR. A subset differs from a proper subset in that a subset can be equivalent to the other QDR of which it is a subset.

For example, say you have the following QDR objects:

QdrTwo, QdrThree, and QdrFour are all subsets of QdrOne. Note that the order of dimension-member pairs does not matter.

The type of each member in the comparison is also important. Members with type VARIES are less restrictive than members of type LIST, and members of type LIST are less restrictive than members of type FIXED. The following example illustrates the effect of the member type. Suppose you have the following members in two QDR objects:

In this example, QdrTwo is a proper subset of QdrOne, and QdrThree is a proper subset of QdrTwo.

Specified by:
isSubsetOf in interface QDRInterface
Parameters:
q2 - The QDR to which you want to compare this QDR.
Returns:
true if q2 refers to some or all of the data that this QDR refers to, false if q2 refers to different data, or to more data, than this QDR refers to.
See Also:
isProperSubsetOf(oracle.dss.util.QDR), QDRMember.FIXED, QDRMember.VARIES, QDRMember.LIST, QDRMember.getType()

isSupersetOf

public boolean isSupersetOf(QDRInterface q2)
Specifies whether this QDR is a superset of the specified QDR. A superset differs from a proper superset in that a superset can be equivalent to the QDR of which it is a superset.

For example, say you have the following QDR objects:

QdrTwo, QdrThree, and QdrFour are all supersets of QdrOne. Note that the order of the dimension-member pairs does not matter.

The type of each member in the comparison is also important. Members with type FIXED are more restrictive than members of type LIST, and members of type LIST are more restrictive than members of type VARIES. The following example illustrates the effect of the member type. Suppose you have the following members in two QDR objects:

In this example, QdrTwo is a proper superset of QdrThree, and QdrOne is a proper superset of QdrTwo.

If two QDR objects are equivalent, then each is a superset of the other, but neither QDR is a proper superset of the other.

Parameters:
q2 - The QDR to which you want to compare this QDR.
Returns:
true if this QDR refers to some or all of the data that q2 refers to, false if this QDR refers to different data, or to more data, than q2 refers to.
See Also:
isProperSupersetOf(oracle.dss.util.QDR), QDRMember.FIXED, QDRMember.VARIES, QDRMember.LIST, QDRMember.getType()

hashCode

public int hashCode()
Description copied from interface: QDRInterface
This must be implemented in a non order specific way.

Specified by:
hashCode in interface java.util.Map<java.lang.String,java.lang.Object>
Specified by:
hashCode in interface QDRInterface
Overrides:
hashCode in class java.lang.Object
For internal use only. Application developers should not use this
Compute a hashcode for the QDR

clone

public java.lang.Object clone()
Copies this QDR.

Specified by:
clone in interface QDRInterface
Overrides:
clone in class java.lang.Object
Returns:
A QDR that is equivalent to this QDR.
See Also:
equals(oracle.dss.util.QDR)

toString

public java.lang.String toString()
Generates a String representation of this QDR. The String that this method returns is suitable to pass to the OLAP Services engine. For example, in a QDR that limits only the Month dimension to May, in the Sales measure, this method would return the following String: "SALES(MONTH 'MAY')"

Overrides:
toString in class java.lang.Object

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Map<java.lang.String,java.lang.Object>

containsKey

public boolean containsKey(java.lang.Object key)
Specified by:
containsKey in interface java.util.Map<java.lang.String,java.lang.Object>

containsValue

public boolean containsValue(java.lang.Object value)
Specified by:
containsValue in interface java.util.Map<java.lang.String,java.lang.Object>

get

public java.lang.Object get(java.lang.Object key)
Specified by:
get in interface java.util.Map<java.lang.String,java.lang.Object>

put

public java.lang.Object put(java.lang.String key,
                            java.lang.Object value)
Specified by:
put in interface java.util.Map<java.lang.String,java.lang.Object>

remove

public java.lang.Object remove(java.lang.Object key)
Specified by:
remove in interface java.util.Map<java.lang.String,java.lang.Object>

putAll

public void putAll(java.util.Map t)
Specified by:
putAll in interface java.util.Map<java.lang.String,java.lang.Object>

clear

public void clear()
Specified by:
clear in interface java.util.Map<java.lang.String,java.lang.Object>

keySet

public java.util.Set<java.lang.String> keySet()
Specified by:
keySet in interface java.util.Map<java.lang.String,java.lang.Object>

values

public java.util.Collection<java.lang.Object> values()
Specified by:
values in interface java.util.Map<java.lang.String,java.lang.Object>

entrySet

public java.util.Set entrySet()
Specified by:
entrySet in interface java.util.Map<java.lang.String,java.lang.Object>

cloneMembers

protected java.util.Vector cloneMembers(java.util.Vector v)
                                 throws java.lang.CloneNotSupportedException
Throws:
java.lang.CloneNotSupportedException

getXML

public java.lang.Object getXML(oracle.dss.util.persistence.XMLContext context)
Specified by:
getXML in interface oracle.dss.util.persistence.XMLizable
Parameters:
controls -
Returns:
the root ObjectNode of the persistence object tree
For internal use only. Application developers should not use this
Returns the QDR representation in XML in context of the Persistence framework

setXML

public void setXML(oracle.dss.util.persistence.XMLContext context,
                   java.lang.Object node)
Specified by:
setXML in interface oracle.dss.util.persistence.XMLizable
Parameters:
the - root ObjectNode of the persistence object tree
For internal use only. Application developers should not use this
Restores the QDR data from the given persistence object tree

getTagName

public java.lang.String getTagName()
Specified by:
getTagName in interface oracle.dss.util.persistence.XMLizable
Returns:
The XML name of this QDR.
For internal use only. Application developers should not use this
Retrieves the name used for persisting this QDR in XML.

setStateString

public static QDR setStateString(java.util.List memberContext,
                                 java.lang.String stateString)
memberContext contains: Measure:Sales+Colst*Geography:London+Paris*Time:Feb2000 stateString: 0:0+1*1:0+1*2:0


getStateString

public java.lang.String getStateString(java.util.List memberContext)
memberContext contains: Measure:Sales+Cost*Geography:London+Paris*Time:Feb2000 stateString: 0:0+1*1:0+1*2:0


getDependentIDs

public java.util.Vector getDependentIDs(java.lang.String measDim)
Description copied from interface: DependentID
At save time, return an ordered list of runtime IDs that the caller should later, in a call to setDependentIDs, replace with persistable strings. The same list is used by the caller at load time to put runtime IDs back in place of the substituted strings retrieved from the caller's XML.

Specified by:
getDependentIDs in interface DependentID
Parameters:
measDim - Identifies the measure dimension string, which may be used by implementers to generate their list of dependent IDs.
Returns:
an ordered list of IDs requiring possible substitution. This number and order and origin of IDs should match the beginning of the list given back to the implementer via setDependentIDs.
For internal use only. Application developers should not use this
At save time, return an ordered list of runtime IDs that the caller should later, in a call to setDependentIDs, replace with persistable strings. The same list is used by the caller at load time to put runtime IDs back in place of the substituted strings retrieved from the caller's XML.

getAllDependentIDs

public java.util.Vector getAllDependentIDs(java.lang.String measDim,
                                           NameConverter nc)
Description copied from interface: DependentID
Get all the metadata IDs this object depends on, including measures, dimensions, etc. This is a superset of getDependentIDs().

Specified by:
getAllDependentIDs in interface DependentID
Returns:
For internal use only. Application developers should not use this

setDependentIDs

public java.util.Vector setDependentIDs(java.lang.String measDim,
                                        java.util.Vector newIDs)
Description copied from interface: DependentID
At save time, pass an ordered list of substituted IDs that the implementer should use to replace portions of its state. The same list is used by the caller at load time to put runtime IDs back in place of the substituted strings retrieved from the caller's XML.

Specified by:
setDependentIDs in interface DependentID
Parameters:
measDim - Identifies the measure dimension string, which may be used by implementers to generate their list of dependent IDs.
newIDs - an ordered list of IDs a portion of which the implementer should use to replace IDs given out by a call to getDependentIDs. The implementer should start with the first element and continue down the list in the same order that the implementer walked giving out the IDs via getDependentIDs. Note that this list may very well contain many more IDs for other components that the caller will later pass in to those components: the implementer should know how many IDs it expects to "use" from the given list.
Returns:
the remaining ordered list of IDs after the implementer has used the newIDs IDs that it needs for its substitutions. This list will be a subset of the newIDs list, and must represent newIDs minus IDs initially handed out (and thus "consumed") by this implementer, if any.
For internal use only. Application developers should not use this
At save time, pass an ordered list of substituted IDs that the implementer should use to replace portions of its state. The same list is used by the caller at load time to put runtime IDs back in place of the substituted strings retrieved from the caller's XML.

getQDRMeasures

protected java.util.Vector getQDRMeasures(java.lang.String strMeasure,
                                          oracle.dss.util.persistence.XMLContext context)
Returns:
Vector that represents the measure IDs associated with the specified QDR, or null.
For internal use only. Application developers should not use this
Retrieves the measure IDs associated with the specified QDR that are associated with the measure dimension.

setQDRMeasures

protected java.util.Vector setQDRMeasures(java.lang.String strMeasure,
                                          java.util.Vector vstrMeasures,
                                          oracle.dss.util.persistence.XMLContext context)
Parameters:
strMeasure - a String value that represents the measure to update the QDR with.
Returns:
Vector that represents the measure IDs that are left after the QDR has been updated.
For internal use only. Application developers should not use this
Updates the QDR based on the specified measure.

isDimensionSubsetOf

public boolean isDimensionSubsetOf(QDR qdr)
For internal use only. Application developers should not use this
Checks whether the specified QDR contains QDRMembers for all of this QDR's dimensions

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.