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 type)
           
 edu.internet2.middleware.subject.Subject find(java.lang.String id, java.lang.String type, 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.lang.String source)
           
 edu.internet2.middleware.subject.Subject findByIdentifier(java.lang.String id)
           
 edu.internet2.middleware.subject.Subject findByIdentifier(java.lang.String id, java.lang.String type)
           
 edu.internet2.middleware.subject.Subject findByIdentifier(java.lang.String id, java.lang.String type, java.lang.String source)
           
 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()
           
 java.util.Set<edu.internet2.middleware.subject.Source> getSources(java.lang.String subjectType)
           
 

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 type)
                                              throws java.lang.IllegalArgumentException,
                                                     edu.internet2.middleware.subject.SubjectNotFoundException,
                                                     edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject id to search on.
type - Subject type 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 type,
                                              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.
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

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.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 type)
                                                          throws java.lang.IllegalArgumentException,
                                                                 edu.internet2.middleware.subject.SubjectNotFoundException,
                                                                 edu.internet2.middleware.subject.SubjectNotUniqueException
Parameters:
id - Subject identifier to search on.
type - Subject type 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 type,
                                                          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

getSource

edu.internet2.middleware.subject.Source getSource(java.lang.String id)
                                                  throws java.lang.IllegalArgumentException,
                                                         edu.internet2.middleware.subject.SourceUnavailableException
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

getSources

java.util.Set<edu.internet2.middleware.subject.Source> getSources(java.lang.String subjectType)
                                                                  throws java.lang.IllegalArgumentException
Parameters:
subjectType - Only return sources that provide this type.
Returns:
All Subject sources that provide subjectType.
Throws:
java.lang.IllegalArgumentException - if subjectType is null or invalid.
Since:
1.2.1