com.endeca.portal.mdex
Class MDEXAttributeList

java.lang.Object
  extended by com.endeca.portal.mdex.MDEXAttributeList
All Implemented Interfaces:
java.io.Serializable, java.lang.Iterable<MDEXAttribute>

public class MDEXAttributeList
extends java.lang.Object
implements java.io.Serializable, java.lang.Iterable<MDEXAttribute>

Wraps a Map of KeyProperties, providing easy access to a list of available attributes in the MDEX, and access to a conveniently wrapped MDEXAttribute object for any attribute requested by name. Also provides direct access to the KeyProperties returned by the MDEX, for any users with legacy code that may rely on the raw presentation API object.

Author:
sshusteff
See Also:
Serialized Form

Constructor Summary
MDEXAttributeList(java.util.List<com.endeca.mdex.conversation.Refinement> properties, java.util.List<com.endeca.mdex.conversation.Refinement> dimensions, java.util.List<com.endeca.mdex.conversation.Refinement> systemProperties)
           
MDEXAttributeList(java.util.Map<java.lang.String,com.endeca.navigation.KeyProperties> keyProps)
           
 
Method Summary
 java.util.Iterator<MDEXAttribute> dimensionAttributeIterator()
           
 MDEXAttribute getAttribute(java.lang.String attrName)
           
 java.util.Set<java.lang.String> getAttributeNames()
           
 java.util.Map<java.lang.String,MDEXAttribute> getAttributes()
           
 java.util.Map<java.lang.String,MDEXAttribute> getAttributesByMdexProp(java.lang.String key, java.lang.String value)
           
 java.util.Map<java.lang.String,MDEXAttribute> getDimensions()
           
 java.util.Map<java.lang.String,MDEXAttribute> getNumericProperties()
           
 com.endeca.navigation.KeyProperties getRawKeyProperties(java.lang.String attrName)
           
 boolean isDateTimeProperty(java.lang.String propName)
           
 boolean isDimension(java.lang.String propName)
           
 boolean isMultiSelectAnd(java.lang.String propName)
           
 boolean isMultiSelectOr(java.lang.String propName)
           
 boolean isNumericProperty(java.lang.String propName)
           
 java.util.Iterator<MDEXAttribute> iterator()
           
 java.util.Iterator<MDEXAttribute> numericAttributeIterator()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MDEXAttributeList

public MDEXAttributeList(java.util.Map<java.lang.String,com.endeca.navigation.KeyProperties> keyProps)

MDEXAttributeList

public MDEXAttributeList(java.util.List<com.endeca.mdex.conversation.Refinement> properties,
                         java.util.List<com.endeca.mdex.conversation.Refinement> dimensions,
                         java.util.List<com.endeca.mdex.conversation.Refinement> systemProperties)
Method Detail

getAttributeNames

public java.util.Set<java.lang.String> getAttributeNames()

getAttributes

public java.util.Map<java.lang.String,MDEXAttribute> getAttributes()

getAttribute

public MDEXAttribute getAttribute(java.lang.String attrName)

getRawKeyProperties

public com.endeca.navigation.KeyProperties getRawKeyProperties(java.lang.String attrName)

getAttributesByMdexProp

public java.util.Map<java.lang.String,MDEXAttribute> getAttributesByMdexProp(java.lang.String key,
                                                                             java.lang.String value)

getDimensions

public java.util.Map<java.lang.String,MDEXAttribute> getDimensions()

getNumericProperties

public java.util.Map<java.lang.String,MDEXAttribute> getNumericProperties()

isDimension

public boolean isDimension(java.lang.String propName)

isDateTimeProperty

public boolean isDateTimeProperty(java.lang.String propName)

isNumericProperty

public boolean isNumericProperty(java.lang.String propName)

isMultiSelectAnd

public boolean isMultiSelectAnd(java.lang.String propName)

isMultiSelectOr

public boolean isMultiSelectOr(java.lang.String propName)

iterator

public java.util.Iterator<MDEXAttribute> iterator()
Specified by:
iterator in interface java.lang.Iterable<MDEXAttribute>

dimensionAttributeIterator

public java.util.Iterator<MDEXAttribute> dimensionAttributeIterator()

numericAttributeIterator

public java.util.Iterator<MDEXAttribute> numericAttributeIterator()