org.carrot2.input.googleapi
Class GoogleApiInputComponent

java.lang.Object
  extended by org.carrot2.core.LocalComponentBase
      extended by org.carrot2.core.LocalInputComponentBase
          extended by org.carrot2.input.googleapi.GoogleApiInputComponent
All Implemented Interfaces:
RawDocumentsProducer, LocalComponent, LocalInputComponent

public final class GoogleApiInputComponent
extends LocalInputComponentBase
implements RawDocumentsProducer

GoogleAPI input component.

Note that GoogleAPI is officially deprecated as of December 2006. and will be removed from future versions of Carrot2.

Author:
Dawid Weiss

Field Summary
 
Fields inherited from class org.carrot2.core.LocalInputComponentBase
next
 
Fields inherited from interface org.carrot2.core.clustering.RawDocumentsProducer
PARAM_ORIGINAL_RAW_CLUSTERS, PROPERTY_CATID
 
Fields inherited from interface org.carrot2.core.LocalInputComponent
PARAM_QUERY, PARAM_REQUESTED_RESULTS, PARAM_START_AT, PARAM_TOTAL_MATCHING_DOCUMENTS
 
Constructor Summary
GoogleApiInputComponent()
          Creates a default GoogleKeysPool, using system property GoogleKeysPool.POOL_SYSPROPERTY to locate a folder with keys.
GoogleApiInputComponent(GoogleKeysPool keyPool)
          Creates a component with the given pool of keys.
 
Method Summary
(package private)  SearchResult doSearch(String query, int at, int totalResultsRequested)
          Performs a single search to Google.
 void flushResources()
          The default implementation invokes flushResources() method on the successor component.
 Set getComponentCapabilities()
          Provides an implementation that has no capabilities (an empty set).
 String getName()
          The default implementation returning null.
 Set getRequiredSuccessorCapabilities()
          Provides an implementation that requires no capabilities of the successor component.
 void setNext(LocalComponent next)
          The default implementation sets the LocalInputComponentBase.next field and verifies the contract in LocalFilterComponent.setNext(LocalComponent)
 void setQuery(String query)
          Sets the query for the current request.
 void startProcessing(RequestContext requestContext)
          Process the query.
 
Methods inherited from class org.carrot2.core.LocalInputComponentBase
endProcessing, getRequestedResults, processingErrorOccurred, validate
 
Methods inherited from class org.carrot2.core.LocalComponentBase
getDescription, getIntFromRequestContext, getProperty, getRequiredPredecessorCapabilities, init, setProperty, toSet, toSet, toSet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.carrot2.core.LocalComponent
getDescription, getRequiredPredecessorCapabilities, init, setProperty
 

Constructor Detail

GoogleApiInputComponent

public GoogleApiInputComponent()
Creates a default GoogleKeysPool, using system property GoogleKeysPool.POOL_SYSPROPERTY to locate a folder with keys. Throws a runtime exception if not found.


GoogleApiInputComponent

public GoogleApiInputComponent(GoogleKeysPool keyPool)
Creates a component with the given pool of keys.

Method Detail

setQuery

public void setQuery(String query)
Description copied from interface: LocalInputComponent
Sets the query for the current request. The format of the query depends on the component used.

Specified by:
setQuery in interface LocalInputComponent
Parameters:
query - A String with the query.

getComponentCapabilities

public Set getComponentCapabilities()
Description copied from class: LocalComponentBase
Provides an implementation that has no capabilities (an empty set).

Specified by:
getComponentCapabilities in interface LocalComponent
Overrides:
getComponentCapabilities in class LocalComponentBase
Returns:
A Setobject with capabilities. The object returned may be empty, but should never be null.

getRequiredSuccessorCapabilities

public Set getRequiredSuccessorCapabilities()
Description copied from class: LocalComponentBase
Provides an implementation that requires no capabilities of the successor component.

Specified by:
getRequiredSuccessorCapabilities in interface LocalComponent
Overrides:
getRequiredSuccessorCapabilities in class LocalComponentBase
Returns:
A Setobject with capabilities. The object returned may be empty, but should never be null.

setNext

public void setNext(LocalComponent next)
Description copied from class: LocalInputComponentBase
The default implementation sets the LocalInputComponentBase.next field and verifies the contract in LocalFilterComponent.setNext(LocalComponent)

Specified by:
setNext in interface LocalInputComponent
Overrides:
setNext in class LocalInputComponentBase
Parameters:
next - A reference to an instance of LocalComponent that is the successor component in a processing chain assembled for the execution of a single query.

startProcessing

public void startProcessing(RequestContext requestContext)
                     throws ProcessingException
Process the query.

Specified by:
startProcessing in interface LocalComponent
Overrides:
startProcessing in class LocalInputComponentBase
Parameters:
requestContext - A RequestContextinterface instance passed by the container processing the query. The context may be used to retrieve parameters associated with the query (see RequestContext.getRequestParameters() method).
Throws:
ProcessingException - Thrown if the component encountered a problem in processing the query. May also be thrown from a chained successor component.

getName

public String getName()
Description copied from class: LocalComponentBase
The default implementation returning null. In concrete implementations override this method to provide the appropriate name.

Specified by:
getName in interface LocalComponent
Overrides:
getName in class LocalComponentBase
Returns:
null name

flushResources

public void flushResources()
Description copied from class: LocalInputComponentBase
The default implementation invokes flushResources() method on the successor component.

Specified by:
flushResources in interface LocalComponent
Overrides:
flushResources in class LocalInputComponentBase

doSearch

final SearchResult doSearch(String query,
                            int at,
                            int totalResultsRequested)
                     throws ProcessingException
Performs a single search to Google. This method is used from SingleFetcher.fetch(String, int, int).

Throws:
ProcessingException


Copyright (c) Dawid Weiss, Stanislaw Osinski