org.eaglei.search.provider.ncbi
Class NCBISearchProvider

java.lang.Object
  extended by org.eaglei.search.provider.ncbi.NCBISearchProvider
All Implemented Interfaces:
org.eaglei.search.provider.SearchProvider
Direct Known Subclasses:
NCBIGeneSearchProvider, NCBIMeSHSearchProvider, NCBIProbeSearchProvider, NCBIPubMedSearchProvider, NCBITaxonomySearchProvider

public abstract class NCBISearchProvider
extends java.lang.Object
implements org.eaglei.search.provider.SearchProvider

Abstract implementation of the eagle-i SearchProvider interface that wraps an NCBIDBProvider.

Author:
rfrost

Field Summary
protected  org.eaglei.search.provider.ncbi.NCBIDBProvider dbProvider
           
protected static boolean DEBUG
           
protected  org.eaglei.model.EIOntModel eagleiOntModel
           
protected  org.eaglei.services.InstitutionRegistry institutionRegistry
           
protected static org.apache.commons.logging.Log logger
           
 
Constructor Summary
NCBISearchProvider(org.eaglei.search.provider.ncbi.NCBIDBProvider dbProvider, org.eaglei.model.EIOntModel eagleiOntModel, org.eaglei.services.InstitutionRegistry registry)
          Creates a new NCBIDBProvider that executes queries against NCBI.
 
Method Summary
 org.eaglei.search.provider.SearchCounts count(org.eaglei.search.provider.SearchCountRequest countRequest)
           
protected abstract  org.eaglei.search.provider.SearchResult createSearchResultForDocSummary(org.eaglei.search.provider.ncbi.NCBIEUtils.DocSummary sum)
           
protected abstract  java.lang.String getQuery(org.eaglei.search.provider.SearchRequest request)
           
protected  java.lang.String getQuery(org.eaglei.search.provider.SearchRequest request, boolean includeType, java.util.Set<org.eaglei.model.EIURI> typesToIgnore, boolean includeInstitution)
          Generic query generation logic
abstract  org.eaglei.model.EIEntity getType()
           
protected static org.eaglei.model.EIURI getType(org.eaglei.search.provider.SearchRequest request)
          Gets the type from a SearchRequest.
 void init()
           
protected  boolean isType(org.eaglei.model.EIURI type, org.eaglei.model.EIURI target)
          Checks, with inference, if a given type is of another type.
 org.eaglei.search.provider.SearchResultSet query(org.eaglei.search.provider.SearchRequest request)
           
abstract  boolean shouldAddResults(org.eaglei.search.provider.SearchRequest request)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static final org.apache.commons.logging.Log logger

DEBUG

protected static final boolean DEBUG

dbProvider

protected final org.eaglei.search.provider.ncbi.NCBIDBProvider dbProvider

eagleiOntModel

protected final org.eaglei.model.EIOntModel eagleiOntModel

institutionRegistry

protected final org.eaglei.services.InstitutionRegistry institutionRegistry
Constructor Detail

NCBISearchProvider

public NCBISearchProvider(org.eaglei.search.provider.ncbi.NCBIDBProvider dbProvider,
                          org.eaglei.model.EIOntModel eagleiOntModel,
                          org.eaglei.services.InstitutionRegistry registry)
Creates a new NCBIDBProvider that executes queries against NCBI.

Method Detail

init

public void init()
          throws java.io.IOException
Specified by:
init in interface org.eaglei.search.provider.SearchProvider
Throws:
java.io.IOException

query

public org.eaglei.search.provider.SearchResultSet query(org.eaglei.search.provider.SearchRequest request)
                                                 throws java.io.IOException
Specified by:
query in interface org.eaglei.search.provider.SearchProvider
Throws:
java.io.IOException

count

public org.eaglei.search.provider.SearchCounts count(org.eaglei.search.provider.SearchCountRequest countRequest)
                                              throws java.io.IOException
Specified by:
count in interface org.eaglei.search.provider.SearchProvider
Throws:
java.io.IOException

getType

public abstract org.eaglei.model.EIEntity getType()

shouldAddResults

public abstract boolean shouldAddResults(org.eaglei.search.provider.SearchRequest request)
                                  throws java.io.IOException
Throws:
java.io.IOException

getQuery

protected abstract java.lang.String getQuery(org.eaglei.search.provider.SearchRequest request)
                                      throws java.io.IOException
Throws:
java.io.IOException

createSearchResultForDocSummary

protected abstract org.eaglei.search.provider.SearchResult createSearchResultForDocSummary(org.eaglei.search.provider.ncbi.NCBIEUtils.DocSummary sum)
                                                                                    throws java.io.IOException
Throws:
java.io.IOException

getType

protected static org.eaglei.model.EIURI getType(org.eaglei.search.provider.SearchRequest request)
Gets the type from a SearchRequest.

Parameters:
request - Request
Returns:
Type uri

isType

protected boolean isType(org.eaglei.model.EIURI type,
                         org.eaglei.model.EIURI target)
Checks, with inference, if a given type is of another type.


getQuery

protected java.lang.String getQuery(org.eaglei.search.provider.SearchRequest request,
                                    boolean includeType,
                                    java.util.Set<org.eaglei.model.EIURI> typesToIgnore,
                                    boolean includeInstitution)
Generic query generation logic



Copyright © 2009-2010 Eagle-I. All Rights Reserved.