com.endeca.portal.mdex
Class DiscoveryServiceUtil

java.lang.Object
  extended by com.endeca.portal.mdex.DiscoveryServiceUtil

public class DiscoveryServiceUtil
extends java.lang.Object


Field Summary
static java.lang.String DISCOVERY_SERVICE
           
static java.lang.String HANDLER_NAMESPACE
           
static java.lang.String MDEX_DIMENSION_KEY
           
static java.lang.String MDEX_IS_SINGLE_ASSIGN
           
static java.lang.String MDEX_IS_UNIQUE
           
static java.lang.String MDEX_PROPERTY_DISPLAYNAME
           
static java.lang.String MDEX_PROPERTY_IS_VALUE_SEARCHABLE
           
static java.lang.String MDEX_PROPERTY_KEY
           
static java.lang.String MDEX_PROPERTY_MULTI_SELECT
           
static java.lang.String MDEX_PROPERTY_PREFIX
           
static java.lang.String MDEX_PROPERTY_TYPE
           
static java.lang.String MDEX_SEMANTIC_PREFIX
           
static java.lang.String NAMESPACE
           
static java.lang.String REQUEST_XML_HEADER
           
static java.lang.String SOAP_FOOTER
           
static java.lang.String SOAP_HEADER
           
static java.lang.String SYSTEM_PROPERTY_PREFIX
           
 
Constructor Summary
DiscoveryServiceUtil()
           
 
Method Summary
static void addConfigElement(com.endeca.mdex.conversation.Request request, com.endeca.mdex.conversation.ContentElementConfig config)
           
static com.endeca.mdex.conversation.ConversationPort addQueryTracking(com.endeca.mdex.conversation.ConversationPort servicePort, RequestIds requestIds)
          instrument a MDEX 7 query by setting HTTP headers
static com.endeca.mdex.conversation.Request clone(com.endeca.mdex.conversation.Request request)
           
static com.endeca.mdex.conversation.Request cloneRequest(com.endeca.mdex.conversation.Request request)
           
static org.w3c.dom.Element createElement(org.w3c.dom.Document document, java.lang.String elementName)
           
static com.endeca.mdex.conversation.Results execute(MDEXState mdexState, com.endeca.mdex.conversation.Request query, RequestIds requestIds)
           
static
<T> T
fromXML(java.lang.String xmlString, java.lang.Class<T> klass)
           
static java.util.List<com.endeca.mdex.conversation.Analytics> getAllAnalytics(com.endeca.mdex.conversation.Results results)
           
static java.util.List<com.endeca.mdex.conversation.ValueSearch> getAllAttributeValueSearches(com.endeca.mdex.conversation.Results results)
           
static java.util.List<com.endeca.mdex.conversation.Breadcrumbs> getAllBreadcrumbs(com.endeca.mdex.conversation.Results results)
           
static
<T extends com.endeca.mdex.conversation.ContentElementConfig>
java.util.List<T>
getAllContentElementConfigs(com.endeca.mdex.conversation.Request request, java.lang.Class<T> klass)
           
static
<T extends com.endeca.mdex.conversation.ContentElement>
java.util.List<T>
getAllContentElements(com.endeca.mdex.conversation.Results results, java.lang.Class<T> klass)
           
static java.util.List<com.endeca.mdex.conversation.NavigationMenu> getAllNavigationMenus(com.endeca.mdex.conversation.Results results)
           
static java.util.List<org.w3c.dom.Element> getAllPassThroughElements(com.endeca.mdex.conversation.Results results, java.lang.String elementName)
           
static java.util.List<com.endeca.mdex.conversation.RecordDetails> getAllRecordDetails(com.endeca.mdex.conversation.Results results)
           
static java.util.List<com.endeca.mdex.conversation.RecordList> getAllRecordLists(com.endeca.mdex.conversation.Results results)
           
static java.util.List<com.endeca.mdex.conversation.SearchAdjustments> getAllSearchAdjustments(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.Analytics getAnalytics(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.ValueSearch getAttributeValueSearch(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.AvailableSearchKeys getAvailableSearchKeys(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.Breadcrumbs getBreadcrumbs(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.ContentElementConfig getConfigById(com.endeca.mdex.conversation.Request request, java.lang.String id)
           
static
<T extends com.endeca.mdex.conversation.ContentElement>
T
getContentElement(com.endeca.mdex.conversation.Results results, java.lang.Class<T> klass)
           
static
<T extends com.endeca.mdex.conversation.ContentElementConfig>
T
getContentElementConfig(com.endeca.mdex.conversation.Request request, java.lang.Class<T> klass)
           
static com.endeca.mdex.conversation.NavigationMenu getNavigationMenu(com.endeca.mdex.conversation.Results results)
           
static long getNumRecords(com.endeca.mdex.conversation.Results results)
          Convenience method to return the number of records in the result from either a RecordCount or RecordList element
static org.w3c.dom.Element getPassThroughElement(com.endeca.mdex.conversation.Request request, java.lang.String elementName, boolean create)
           
static org.w3c.dom.Element getPassThroughElement(com.endeca.mdex.conversation.Results results, java.lang.String elementName)
           
static com.endeca.mdex.conversation.RecordCount getRecordCount(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.RecordDetails getRecordDetails(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.RecordList getRecordList(com.endeca.mdex.conversation.Results results)
           
static com.endeca.mdex.conversation.SearchAdjustments getSearchAdjustments(com.endeca.mdex.conversation.Results results)
           
static java.lang.String toSoap(com.endeca.mdex.conversation.Request request)
          Create a SOAP request corresponding with the given request object
static java.lang.String toString(com.endeca.mdex.conversation.Operator operator)
           
static java.lang.String toXML(com.endeca.mdex.conversation.Operator operator)
           
static java.lang.String toXML(com.endeca.mdex.conversation.Request request)
           
static java.lang.String toXML(com.endeca.mdex.conversation.Results results)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NAMESPACE

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

HANDLER_NAMESPACE

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

DISCOVERY_SERVICE

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

MDEX_PROPERTY_KEY

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

MDEX_PROPERTY_TYPE

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

MDEX_IS_UNIQUE

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

MDEX_IS_SINGLE_ASSIGN

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

MDEX_PROPERTY_DISPLAYNAME

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

MDEX_DIMENSION_KEY

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

MDEX_PROPERTY_IS_VALUE_SEARCHABLE

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

MDEX_PROPERTY_MULTI_SELECT

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

MDEX_PROPERTY_PREFIX

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

MDEX_SEMANTIC_PREFIX

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

SYSTEM_PROPERTY_PREFIX

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

REQUEST_XML_HEADER

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

SOAP_HEADER

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

SOAP_FOOTER

public static final java.lang.String SOAP_FOOTER
See Also:
Constant Field Values
Constructor Detail

DiscoveryServiceUtil

public DiscoveryServiceUtil()
Method Detail

getRecordList

public static com.endeca.mdex.conversation.RecordList getRecordList(com.endeca.mdex.conversation.Results results)

getAllRecordLists

public static java.util.List<com.endeca.mdex.conversation.RecordList> getAllRecordLists(com.endeca.mdex.conversation.Results results)

getRecordDetails

public static com.endeca.mdex.conversation.RecordDetails getRecordDetails(com.endeca.mdex.conversation.Results results)

getAllRecordDetails

public static java.util.List<com.endeca.mdex.conversation.RecordDetails> getAllRecordDetails(com.endeca.mdex.conversation.Results results)

getAttributeValueSearch

public static com.endeca.mdex.conversation.ValueSearch getAttributeValueSearch(com.endeca.mdex.conversation.Results results)

getAllAttributeValueSearches

public static java.util.List<com.endeca.mdex.conversation.ValueSearch> getAllAttributeValueSearches(com.endeca.mdex.conversation.Results results)

getBreadcrumbs

public static com.endeca.mdex.conversation.Breadcrumbs getBreadcrumbs(com.endeca.mdex.conversation.Results results)

getAllBreadcrumbs

public static java.util.List<com.endeca.mdex.conversation.Breadcrumbs> getAllBreadcrumbs(com.endeca.mdex.conversation.Results results)

getAvailableSearchKeys

public static com.endeca.mdex.conversation.AvailableSearchKeys getAvailableSearchKeys(com.endeca.mdex.conversation.Results results)

getNavigationMenu

public static com.endeca.mdex.conversation.NavigationMenu getNavigationMenu(com.endeca.mdex.conversation.Results results)

getAllNavigationMenus

public static java.util.List<com.endeca.mdex.conversation.NavigationMenu> getAllNavigationMenus(com.endeca.mdex.conversation.Results results)

getAnalytics

public static com.endeca.mdex.conversation.Analytics getAnalytics(com.endeca.mdex.conversation.Results results)

getAllAnalytics

public static java.util.List<com.endeca.mdex.conversation.Analytics> getAllAnalytics(com.endeca.mdex.conversation.Results results)

getSearchAdjustments

public static com.endeca.mdex.conversation.SearchAdjustments getSearchAdjustments(com.endeca.mdex.conversation.Results results)

getAllSearchAdjustments

public static java.util.List<com.endeca.mdex.conversation.SearchAdjustments> getAllSearchAdjustments(com.endeca.mdex.conversation.Results results)

getRecordCount

public static com.endeca.mdex.conversation.RecordCount getRecordCount(com.endeca.mdex.conversation.Results results)

getNumRecords

public static long getNumRecords(com.endeca.mdex.conversation.Results results)
Convenience method to return the number of records in the result from either a RecordCount or RecordList element

Parameters:
results -
Returns:
the numer of records

getConfigById

public static com.endeca.mdex.conversation.ContentElementConfig getConfigById(com.endeca.mdex.conversation.Request request,
                                                                              java.lang.String id)

getContentElement

public static <T extends com.endeca.mdex.conversation.ContentElement> T getContentElement(com.endeca.mdex.conversation.Results results,
                                                                                          java.lang.Class<T> klass)

getAllContentElements

public static <T extends com.endeca.mdex.conversation.ContentElement> java.util.List<T> getAllContentElements(com.endeca.mdex.conversation.Results results,
                                                                                                              java.lang.Class<T> klass)

getContentElementConfig

public static <T extends com.endeca.mdex.conversation.ContentElementConfig> T getContentElementConfig(com.endeca.mdex.conversation.Request request,
                                                                                                      java.lang.Class<T> klass)

getAllContentElementConfigs

public static <T extends com.endeca.mdex.conversation.ContentElementConfig> java.util.List<T> getAllContentElementConfigs(com.endeca.mdex.conversation.Request request,
                                                                                                                          java.lang.Class<T> klass)

addConfigElement

public static void addConfigElement(com.endeca.mdex.conversation.Request request,
                                    com.endeca.mdex.conversation.ContentElementConfig config)

getPassThroughElement

public static org.w3c.dom.Element getPassThroughElement(com.endeca.mdex.conversation.Request request,
                                                        java.lang.String elementName,
                                                        boolean create)
                                                 throws javax.xml.parsers.ParserConfigurationException
Throws:
javax.xml.parsers.ParserConfigurationException

createElement

public static org.w3c.dom.Element createElement(org.w3c.dom.Document document,
                                                java.lang.String elementName)
                                         throws javax.xml.parsers.ParserConfigurationException
Throws:
javax.xml.parsers.ParserConfigurationException

getPassThroughElement

public static org.w3c.dom.Element getPassThroughElement(com.endeca.mdex.conversation.Results results,
                                                        java.lang.String elementName)

getAllPassThroughElements

public static java.util.List<org.w3c.dom.Element> getAllPassThroughElements(com.endeca.mdex.conversation.Results results,
                                                                            java.lang.String elementName)

toSoap

public static java.lang.String toSoap(com.endeca.mdex.conversation.Request request)
                               throws javax.xml.bind.JAXBException
Create a SOAP request corresponding with the given request object

Parameters:
request -
Returns:
String containing the SOAP request
Throws:
javax.xml.bind.JAXBException

toXML

public static java.lang.String toXML(com.endeca.mdex.conversation.Request request)
                              throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

toXML

public static java.lang.String toXML(com.endeca.mdex.conversation.Results results)
                              throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

toXML

public static java.lang.String toXML(com.endeca.mdex.conversation.Operator operator)
                              throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

fromXML

public static <T> T fromXML(java.lang.String xmlString,
                            java.lang.Class<T> klass)
                 throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

clone

public static com.endeca.mdex.conversation.Request clone(com.endeca.mdex.conversation.Request request)
                                                  throws java.lang.CloneNotSupportedException
Throws:
java.lang.CloneNotSupportedException

toString

public static java.lang.String toString(com.endeca.mdex.conversation.Operator operator)

cloneRequest

public static com.endeca.mdex.conversation.Request cloneRequest(com.endeca.mdex.conversation.Request request)
                                                         throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

execute

public static com.endeca.mdex.conversation.Results execute(MDEXState mdexState,
                                                           com.endeca.mdex.conversation.Request query,
                                                           RequestIds requestIds)
                                                    throws DataSourceException
Throws:
DataSourceException

addQueryTracking

public static com.endeca.mdex.conversation.ConversationPort addQueryTracking(com.endeca.mdex.conversation.ConversationPort servicePort,
                                                                             RequestIds requestIds)
instrument a MDEX 7 query by setting HTTP headers

Parameters:
servicePort - the ConversationPort for the query
requestIds - the tracker containing the session, request, etc. tokens
Returns:
the modified ConversationPort