org.olap4j.mdx
Class KeySegment

java.lang.Object
  extended by org.olap4j.mdx.KeySegment
All Implemented Interfaces:
IdentifierSegment

public class KeySegment
extends 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".

Version:
$Id: KeySegment.java 482 2012-01-05 23:27:27Z jhyde $
Author:
jhyde
See Also:
NameSegment

Constructor Summary
KeySegment(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
 List<NameSegment> getKeyParts()
          Returns the key components, if this IdentifierSegment is a key.
 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.
 String toString()
          Returns a string representation of this Segment.
 void toString(StringBuilder buf)
          Appends a string representation of this Segment to a StringBuffer.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

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(List<NameSegment> subSegmentList)
Creates a KeySegment a list of sub-segments.

Parameters:
subSegmentList - List of sub-segments
Method Detail

toString

public String toString()
Description copied from interface: IdentifierSegment
Returns a string representation of this Segment.

For example, "[Foo]", "&[123]", "Abc".

Specified by:
toString in interface IdentifierSegment
Overrides:
toString in class Object
Returns:
String representation of this Segment

toString

public void toString(StringBuilder buf)
Description copied from interface: IdentifierSegment
Appends a string representation of this Segment to a StringBuffer.

Specified by:
toString in interface IdentifierSegment
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 interface IdentifierSegment
Returns:
region of source code

getQuoting

public Quoting getQuoting()
Description copied from interface: IdentifierSegment
Returns how this Segment is quoted.

Specified by:
getQuoting in interface IdentifierSegment
Returns:
how this Segment is quoted

getName

public String getName()
Description copied from interface: IdentifierSegment
Returns the name of this IdentifierSegment. Returns null if this IdentifierSegment represents a key.

Specified by:
getName in interface IdentifierSegment
Returns:
name of this Segment

getKeyParts

public List<NameSegment> getKeyParts()
Description copied from interface: IdentifierSegment
Returns the key components, if this IdentifierSegment is a key. (That is, if IdentifierSegment.getQuoting() returns Quoting.KEY.) Returns null otherwise.

Specified by:
getKeyParts in interface IdentifierSegment
Returns:
Components of key, or null if this IdentifierSegment is not a key

SourceForge.net_Logo