edu.internet2.middleware.grouper.subj
Interface SubjectResolver

All Known Implementing Classes:
CachingResolver, SourcesXmlResolver, SubjectResolverDecorator, ValidatingResolver

public interface SubjectResolver

Subject resolution interface.

Since:
1.2.1
Version:
$Id: SubjectResolver.java,v 1.5 2008-08-26 21:11:51 mchyzer Exp $
Author:
blair christensen.

Method Summary
 edu.internet2.middleware.subject.Subject find(java.lang.String id)
           
 edu.internet2.middleware.subject.Subject find(java.lang.String id, java.lang.String source)
           
 java.util.Set<edu.internet2.middleware.subject.Subject> findAll(java.lang.String query)
           
 java.util.Set<edu.internet2.middleware.subject.Subject> findAll(java.lang.String query, java.util.Set<edu.internet2.middleware.subject.Source> sources)
          find subjects in a set of sources
 java.util.Set<edu.internet2.middleware.subject.Subject> findAll(java.lang.String query, java.lang.String source)
           
 java.util.Set<edu.internet2.middleware.subject.Subject> findAllInStem(java.lang.String stemName, java.lang.String query)
           
 edu.internet2.middleware.subject.Subject findByIdentifier(java.lang.String id)
           
 edu.internet2.middleware.subject.Subject findByIdentifier(java.lang.String id, java.lang.String source)
           
 java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdentifiers(java.util.Collection<java.lang.String> identifiers)
           
 java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdentifiers(java.util.Collection<java.lang.String> identifiers, java.lang.String source)
           
 edu.internet2.middleware.subject.Subject findByIdOrIdentifier(java.lang.String id)
           
 edu.internet2.middleware.subject.Subject findByIdOrIdentifier(java.lang.String id, java.lang.String source)
           
 java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIds(java.util.Collection<java.lang.String> ids)
           
 java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIds(java.util.Collection<java.lang.String> ids, java.lang.String source)
           
 java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdsOrIdentifiers(java.util.Collection<java.lang.String> idsOrIdentifiers)
           
 java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdsOrIdentifiers(java.util.Collection<java.lang.String> idsOrIdentifiers, java.lang.String source)
           
 edu.internet2.middleware.subject.SearchPageResult findPage(java.lang.String query)
           
 edu.internet2.middleware.subject.SearchPageResult findPage(java.lang.String query, java.util.Set<edu.internet2.middleware.subject.Source> sources)
          find a page of subjects in a set of sources
 edu.internet2.middleware.subject.SearchPageResult findPage(java.lang.String query, java.lang.String source)
           
 edu.internet2.middleware.subject.SearchPageResult findPageInStem(java.lang.String stemName, java.lang.String query)
           
 edu.internet2.middleware.subject.SearchPageResult findPageInStem(java.lang.String stemName, java.lang.String query, java.util.Set<edu.internet2.middleware.subject.Source> sources)
           
 void flushCache()
          flush the cache (e.g. for testing)
 edu.internet2.middleware.subject.Source getSource(java.lang.String id)
           
 java.util.Set<edu.internet2.middleware.subject.Source> getSources()
           
 

Method Detail

flushCache

void flushCache()
flush the cache (e.g. for testing)


find

edu.internet2.middleware.subject.Subject find(java.lang.String id)
                                              throws java.lang.IllegalArgumentException,
                                                     edu.internet2.middleware.subject.SubjectNotFoundException,
                                                     edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject id to search on.
Returns:
Subject matching search parameters.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
1.2.1

find

edu.internet2.middleware.subject.Subject find(java.lang.String id,
                                              java.lang.String source)
                                              throws java.lang.IllegalArgumentException,
                                                     edu.internet2.middleware.subject.SourceUnavailableException,
                                                     edu.internet2.middleware.subject.SubjectNotFoundException,
                                                     edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject id to search on.
source - Source adapter to search within.
Returns:
Subject matching search parameters.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
1.2.1

findAll

java.util.Set<edu.internet2.middleware.subject.Subject> findAll(java.lang.String query)
                                                                throws java.lang.IllegalArgumentException
Parameters:
query - A source-appropraite query string.
Returns:
All subjects matching query.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
Since:
1.2.1

findAll

java.util.Set<edu.internet2.middleware.subject.Subject> findAll(java.lang.String query,
                                                                java.util.Set<edu.internet2.middleware.subject.Source> sources)
                                                                throws java.lang.IllegalArgumentException
find subjects in a set of sources

Parameters:
query -
sources -
Returns:
the subjects
Throws:
java.lang.IllegalArgumentException

findPage

edu.internet2.middleware.subject.SearchPageResult findPage(java.lang.String query,
                                                           java.util.Set<edu.internet2.middleware.subject.Source> sources)
                                                           throws edu.internet2.middleware.subject.SourceUnavailableException
find a page of subjects in a set of sources

Parameters:
query -
sources -
Returns:
the page of subjects
Throws:
edu.internet2.middleware.subject.SourceUnavailableException

findAllInStem

java.util.Set<edu.internet2.middleware.subject.Subject> findAllInStem(java.lang.String stemName,
                                                                      java.lang.String query)
                                                                      throws java.lang.IllegalArgumentException
Parameters:
stemName - name of stem we are querying
query - A source-appropriate query string.
Returns:
All subjects matching query.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
Since:
1.2.1

findAll

java.util.Set<edu.internet2.middleware.subject.Subject> findAll(java.lang.String query,
                                                                java.lang.String source)
                                                                throws java.lang.IllegalArgumentException,
                                                                       edu.internet2.middleware.subject.SourceUnavailableException
Parameters:
query - A source-appropriate query string.
source - Restrict query to within this source.
Returns:
All subjects matching query.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
Since:
1.2.1

findByIdentifier

edu.internet2.middleware.subject.Subject findByIdentifier(java.lang.String id)
                                                          throws java.lang.IllegalArgumentException,
                                                                 edu.internet2.middleware.subject.SubjectNotFoundException,
                                                                 edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject identifier to search on.
Returns:
Subject matching search parameters.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
1.2.1

findByIdentifier

edu.internet2.middleware.subject.Subject findByIdentifier(java.lang.String id,
                                                          java.lang.String source)
                                                          throws java.lang.IllegalArgumentException,
                                                                 edu.internet2.middleware.subject.SourceUnavailableException,
                                                                 edu.internet2.middleware.subject.SubjectNotFoundException,
                                                                 edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject identifier to search on.
source - Source adapter to search within.
Returns:
Subject matching search parameters.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
1.2.1

getSource

edu.internet2.middleware.subject.Source getSource(java.lang.String id)
                                                  throws java.lang.IllegalArgumentException,
                                                         edu.internet2.middleware.subject.SourceUnavailableException
Parameters:
id -
Returns:
Subject source identified by id.
Throws:
java.lang.IllegalArgumentException - if id is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source cannot be returned.
Since:
1.2.1

getSources

java.util.Set<edu.internet2.middleware.subject.Source> getSources()
Returns:
All Subject sources.
Since:
1.2.1

findByIdOrIdentifier

edu.internet2.middleware.subject.Subject findByIdOrIdentifier(java.lang.String id)
                                                              throws java.lang.IllegalArgumentException,
                                                                     edu.internet2.middleware.subject.SubjectNotFoundException,
                                                                     edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject identifier to search on.
Returns:
Subject matching search parameters.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
1.2.1

findByIdOrIdentifier

edu.internet2.middleware.subject.Subject findByIdOrIdentifier(java.lang.String id,
                                                              java.lang.String source)
                                                              throws java.lang.IllegalArgumentException,
                                                                     edu.internet2.middleware.subject.SourceUnavailableException,
                                                                     edu.internet2.middleware.subject.SubjectNotFoundException,
                                                                     edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject identifier to search on.
type - Subject type to search on.
source - Source adapter to search within.
Returns:
Subject matching search parameters.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
1.2.1

findPage

edu.internet2.middleware.subject.SearchPageResult findPage(java.lang.String query)
                                                           throws java.lang.IllegalArgumentException
Parameters:
query - A source-appropraite query string.
Returns:
Paged subjects matching query.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
Since:
2.0.2

findPage

edu.internet2.middleware.subject.SearchPageResult findPage(java.lang.String query,
                                                           java.lang.String source)
                                                           throws java.lang.IllegalArgumentException,
                                                                  edu.internet2.middleware.subject.SourceUnavailableException
Parameters:
query - A source-appropriate query string.
source - Restrict query to within this source.
Returns:
Page of subjects matching query.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
Since:
2.0.2

findPageInStem

edu.internet2.middleware.subject.SearchPageResult findPageInStem(java.lang.String stemName,
                                                                 java.lang.String query)
                                                                 throws java.lang.IllegalArgumentException
Parameters:
stemName - name of stem we are querying
query - A source-appropriate query string.
Returns:
All subjects matching query.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
Since:
2.0.2

findPageInStem

edu.internet2.middleware.subject.SearchPageResult findPageInStem(java.lang.String stemName,
                                                                 java.lang.String query,
                                                                 java.util.Set<edu.internet2.middleware.subject.Source> sources)
                                                                 throws java.lang.IllegalArgumentException
Parameters:
stemName - name of stem we are querying
query - A source-appropriate query string.
source -
Returns:
All subjects matching query.
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
Since:
2.0.2

findByIdsOrIdentifiers

java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdsOrIdentifiers(java.util.Collection<java.lang.String> idsOrIdentifiers)
                                                                                                throws java.lang.IllegalArgumentException
Parameters:
idsOrIdentifiers - Subject identifiers to search on.
Returns:
map of search param to subject
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
2.0.2

findByIdsOrIdentifiers

java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdsOrIdentifiers(java.util.Collection<java.lang.String> idsOrIdentifiers,
                                                                                                java.lang.String source)
                                                                                                throws java.lang.IllegalArgumentException,
                                                                                                       edu.internet2.middleware.subject.SourceUnavailableException
Parameters:
id - Subject identifier to search on.
type - Subject type to search on.
source - Source adapter to search within.
Returns:
map of search param to subject
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
2.0.2

findByIds

java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIds(java.util.Collection<java.lang.String> ids)
                                                                                   throws java.lang.IllegalArgumentException
Parameters:
ids - Subject id to search on.
Returns:
map of search param to subject
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
2.0.2

findByIds

java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIds(java.util.Collection<java.lang.String> ids,
                                                                                   java.lang.String source)
                                                                                   throws java.lang.IllegalArgumentException,
                                                                                          edu.internet2.middleware.subject.SourceUnavailableException
Parameters:
id - Subject id to search on.
source - Source adapter to search within.
Returns:
map of search param to subject
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
2.0.2

findByIdentifiers

java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdentifiers(java.util.Collection<java.lang.String> identifiers)
                                                                                           throws java.lang.IllegalArgumentException
Parameters:
id - Subject identifier to search on.
Returns:
map of search param to subject
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
2.0.2

findByIdentifiers

java.util.Map<java.lang.String,edu.internet2.middleware.subject.Subject> findByIdentifiers(java.util.Collection<java.lang.String> identifiers,
                                                                                           java.lang.String source)
                                                                                           throws java.lang.IllegalArgumentException,
                                                                                                  edu.internet2.middleware.subject.SourceUnavailableException
Parameters:
id - Subject identifier to search on.
source - Source adapter to search within.
Returns:
map of search param to subject
Throws:
java.lang.IllegalArgumentException - if any parameter is null.
edu.internet2.middleware.subject.SourceUnavailableException - if source is unavailable.
edu.internet2.middleware.subject.SubjectNotFoundException - if no matching subject is found.
edu.internet2.middleware.subject.SubjectNotUniqueException - if more than one matching subject is found.
Since:
2.0.2