org.gcube.application.framework.search.library.model
Class Query

java.lang.Object
  extended by org.gcube.application.framework.search.library.model.Query
All Implemented Interfaces:
java.lang.Cloneable

public class Query
extends java.lang.Object
implements java.lang.Cloneable

Author:
Rena - NKUA

Constructor Summary
Query()
           
 
Method Summary
 void addCriterion(Criterion criterion)
          Adds a new criterion to the list of search criteria
 ResultSetConsumerI browse(ASLSession session)
           
 Query clone(boolean previous)
           
 ResultSetConsumerI genericSearch(ASLSession session, java.lang.String query)
          Submits the generic query to SearchMaster
 java.util.List<Field> getAvailableBrowseFields()
           
 java.util.List<java.lang.String> getAvailableLanguages()
           
 java.util.List<Field> getAvailableSearchFields()
           
 java.util.List<Field> getAvailableSortFields()
           
 java.lang.String getBrowseByField()
           
 java.util.List<Criterion> getCriteria()
           
 java.lang.String getGenericSearchType()
           
 GeospatialInfo getGeosatial()
           
 Operator getOperator()
           
 Order getOrder()
           
 java.lang.String getQueryDescription()
           
 java.lang.String getQueryString()
           
 ResultSetConsumerI getSearchResults(ASLSession session)
           
 java.lang.String getSearchTerm()
           
 java.lang.String getSearchType()
           
 java.util.List<java.lang.String> getSelectedCollectionNames(ASLSession session)
           
 java.util.List<java.lang.String> getSelectedCollections()
           
 java.util.List<java.lang.String> getSelectedCollectionsNames(ASLSession session)
           
 java.lang.String getSelectedLanguage()
           
 java.util.List<java.lang.String> getSelectedRealCollections(ASLSession session)
           
 java.lang.String getSortBy()
           
 boolean hasResults()
           
 boolean isFtsAvailable()
           
 boolean isGeoAvailable()
           
 ResultSetConsumerI quickSearch(ASLSession session, java.lang.String keyword)
           
 void removeCriterion(int i)
          Removes the i-th search criterion
 void reset()
           
 ResultSetConsumerI search(ASLSession session, boolean simple)
           
 void selectCollections(java.util.List<java.lang.String> newCollections, boolean selected, ASLSession session)
           
 void setBrowseBy(java.lang.String browseByField)
           
 void setDistinct(boolean distinct)
           
 void setFtsAvailable(boolean ftsAvailable)
           
 void setGenericSearchType(java.lang.String genType)
           
 void setGeoAvailable(boolean geoAvailable)
           
 void setGeospatial(GeospatialInfo geospatial)
           
 void setHasResults(boolean existResults)
           
 void setLanguage(int language)
          Sets the selected language
 void setOperator(Operator operator)
           
 void setOrder(Order order)
           
 void setSearchTerm(java.lang.String searchTerm)
           
 void setSearchType(java.lang.String searchType)
           
 boolean setSelectedLanguage(java.lang.String lang, ASLSession session)
           
 void setSetRelation(boolean set)
           
 void setSortBy(java.lang.String sortBy)
           
 java.lang.String[] testSearchQuery(ASLSession session, boolean simple, boolean browse, java.lang.String quick)
           
 void updateCriterionId(int i, java.lang.String id)
           
 void updateCriterionName(int i, java.lang.String name)
           
 void updateCriterionValue(int i, java.lang.String value)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Query

public Query()
Method Detail

setHasResults

public void setHasResults(boolean existResults)

hasResults

public boolean hasResults()

isFtsAvailable

public boolean isFtsAvailable()

setFtsAvailable

public void setFtsAvailable(boolean ftsAvailable)

isGeoAvailable

public boolean isGeoAvailable()

setGeoAvailable

public void setGeoAvailable(boolean geoAvailable)

getSearchTerm

public java.lang.String getSearchTerm()

setSearchTerm

public void setSearchTerm(java.lang.String searchTerm)

addCriterion

public void addCriterion(Criterion criterion)
Adds a new criterion to the list of search criteria

Parameters:
criterion - the criterion to be added

removeCriterion

public void removeCriterion(int i)
Removes the i-th search criterion

Parameters:
i - the position in the list where the desired search criterion rests

clone

public Query clone(boolean previous)
Parameters:
previous - whether it should be cloned for previous or not
Returns:
cloned query object

setLanguage

public void setLanguage(int language)
Sets the selected language

Parameters:
language -

getSelectedRealCollections

public java.util.List<java.lang.String> getSelectedRealCollections(ASLSession session)

getAvailableBrowseFields

public java.util.List<Field> getAvailableBrowseFields()

getAvailableSearchFields

public java.util.List<Field> getAvailableSearchFields()

getAvailableSortFields

public java.util.List<Field> getAvailableSortFields()

getAvailableLanguages

public java.util.List<java.lang.String> getAvailableLanguages()

getCriteria

public java.util.List<Criterion> getCriteria()

getGeosatial

public GeospatialInfo getGeosatial()

getOperator

public Operator getOperator()

getQueryDescription

public java.lang.String getQueryDescription()

getQueryString

public java.lang.String getQueryString()

getSelectedCollections

public java.util.List<java.lang.String> getSelectedCollections()

getSelectedLanguage

public java.lang.String getSelectedLanguage()

reset

public void reset()

selectCollections

public void selectCollections(java.util.List<java.lang.String> newCollections,
                              boolean selected,
                              ASLSession session)

setDistinct

public void setDistinct(boolean distinct)

setGeospatial

public void setGeospatial(GeospatialInfo geospatial)

setOperator

public void setOperator(Operator operator)

setSelectedLanguage

public boolean setSelectedLanguage(java.lang.String lang,
                                   ASLSession session)

updateCriterionId

public void updateCriterionId(int i,
                              java.lang.String id)

updateCriterionName

public void updateCriterionName(int i,
                                java.lang.String name)

updateCriterionValue

public void updateCriterionValue(int i,
                                 java.lang.String value)

getSearchType

public java.lang.String getSearchType()

setSearchType

public void setSearchType(java.lang.String searchType)

getGenericSearchType

public java.lang.String getGenericSearchType()

getSelectedCollectionNames

public java.util.List<java.lang.String> getSelectedCollectionNames(ASLSession session)

setGenericSearchType

public void setGenericSearchType(java.lang.String genType)

setSetRelation

public void setSetRelation(boolean set)

setBrowseBy

public void setBrowseBy(java.lang.String browseByField)

getBrowseByField

public java.lang.String getBrowseByField()

search

public ResultSetConsumerI search(ASLSession session,
                                 boolean simple)
                          throws URIRetrievalFromISCacheException,
                                 java.net.URISyntaxException,
                                 gRS2CreationException,
                                 QuerySyntaxException,
                                 NoSearchMasterEPRFoundException
Throws:
URIRetrievalFromISCacheException
java.net.URISyntaxException
gRS2CreationException
QuerySyntaxException
NoSearchMasterEPRFoundException

browse

public ResultSetConsumerI browse(ASLSession session)
                          throws java.net.URISyntaxException,
                                 gRS2CreationException,
                                 URIRetrievalFromISCacheException
Throws:
java.net.URISyntaxException
gRS2CreationException
URIRetrievalFromISCacheException

quickSearch

public ResultSetConsumerI quickSearch(ASLSession session,
                                      java.lang.String keyword)
                               throws URIRetrievalFromISCacheException,
                                      java.net.URISyntaxException,
                                      gRS2CreationException
Throws:
URIRetrievalFromISCacheException
java.net.URISyntaxException
gRS2CreationException

testSearchQuery

public java.lang.String[] testSearchQuery(ASLSession session,
                                          boolean simple,
                                          boolean browse,
                                          java.lang.String quick)

genericSearch

public ResultSetConsumerI genericSearch(ASLSession session,
                                        java.lang.String query)
                                 throws URIRetrievalFromISCacheException,
                                        java.net.URISyntaxException,
                                        gRS2CreationException,
                                        NoSearchMasterEPRFoundException
Submits the generic query to SearchMaster

Parameters:
session - the D4Science session to be used
query - the query described in gCQL query language
Returns:
a consumer to retrieve the results as pages
Throws:
URIRetrievalFromISCacheException
gRS2CreationException
java.net.URISyntaxException
NoSearchMasterEPRFoundException

getSortBy

public java.lang.String getSortBy()

setSortBy

public void setSortBy(java.lang.String sortBy)

getOrder

public Order getOrder()

setOrder

public void setOrder(Order order)

getSearchResults

public ResultSetConsumerI getSearchResults(ASLSession session)
Parameters:
session - the D4Science session to be used
Returns:
a consumer to retrieve the search results as pages

getSelectedCollectionsNames

public java.util.List<java.lang.String> getSelectedCollectionsNames(ASLSession session)