Package org.olap4j.mdx
Class KeySegment
- java.lang.Object
-
- org.olap4j.mdx.KeySegment
-
- All Implemented Interfaces:
IdentifierSegment
public class KeySegment extends java.lang.Object implements IdentifierSegment
Segment that represents a key or compound key.Such a segment appears in an identifier with each component prefixed with "&". For example, in the identifier "
[Customer].[State].&[WA]&[USA]
", the third segment is a compound key whose parts are "WA
" and "USA
".- Author:
- jhyde
- See Also:
NameSegment
-
-
Constructor Summary
Constructors Constructor Description KeySegment(java.util.List<NameSegment> subSegmentList)
Creates a KeySegment a list of sub-segments.KeySegment(NameSegment... subSegments)
Creates a KeySegment with one or more sub-segments.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<NameSegment>
getKeyParts()
Returns the key components, if this IdentifierSegment is a key.java.lang.String
getName()
Returns the name of this IdentifierSegment.Quoting
getQuoting()
Returns how this Segment is quoted.ParseRegion
getRegion()
Returns the region of the source code which this Segment was created from, if it was created by parsing.java.lang.String
toString()
Returns a string representation of this Segment.void
toString(java.lang.StringBuilder buf)
Appends a string representation of this Segment to a StringBuffer.
-
-
-
Constructor Detail
-
KeySegment
public KeySegment(NameSegment... subSegments)
Creates a KeySegment with one or more sub-segments.- Parameters:
subSegments
- Array of sub-segments
-
KeySegment
public KeySegment(java.util.List<NameSegment> subSegmentList)
Creates a KeySegment a list of sub-segments.- Parameters:
subSegmentList
- List of sub-segments
-
-
Method Detail
-
toString
public java.lang.String toString()
Description copied from interface:IdentifierSegment
Returns a string representation of this Segment.For example, "[Foo]", "&[123]", "Abc".
- Specified by:
toString
in interfaceIdentifierSegment
- Overrides:
toString
in classjava.lang.Object
- Returns:
- String representation of this Segment
-
toString
public void toString(java.lang.StringBuilder buf)
Description copied from interface:IdentifierSegment
Appends a string representation of this Segment to a StringBuffer.- Specified by:
toString
in interfaceIdentifierSegment
- Parameters:
buf
- StringBuffer
-
getRegion
public ParseRegion getRegion()
Description copied from interface:IdentifierSegment
Returns the region of the source code which this Segment was created from, if it was created by parsing.- Specified by:
getRegion
in interfaceIdentifierSegment
- Returns:
- region of source code
-
getQuoting
public Quoting getQuoting()
Description copied from interface:IdentifierSegment
Returns how this Segment is quoted.- Specified by:
getQuoting
in interfaceIdentifierSegment
- Returns:
- how this Segment is quoted
-
getName
public java.lang.String getName()
Description copied from interface:IdentifierSegment
Returns the name of this IdentifierSegment. Returnsnull
if this IdentifierSegment represents a key.- Specified by:
getName
in interfaceIdentifierSegment
- Returns:
- name of this Segment
-
getKeyParts
public java.util.List<NameSegment> getKeyParts()
Description copied from interface:IdentifierSegment
Returns the key components, if this IdentifierSegment is a key. (That is, ifIdentifierSegment.getQuoting()
returnsQuoting.KEY
.) Returns null otherwise.- Specified by:
getKeyParts
in interfaceIdentifierSegment
- Returns:
- Components of key, or null if this IdentifierSegment is not a key
-
-