com.atlassian.jira.jql.resolver
Interface NameResolver<T>

All Known Subinterfaces:
UserResolver
All Known Implementing Classes:
ComponentResolver, IssueTypeResolver, PriorityResolver, ProjectResolver, ResolutionResolver, ResolverManagerImpl.IssueSecurityLevelResolverFacade, StatusResolver, UserResolverImpl, VersionResolver

public interface NameResolver<T>

Looks up domain objects from the database.

Since:
v4.0

Method Summary
 T get(java.lang.Long id)
          Get by id.
 java.util.Collection<T> getAll()
          Gets all domain objects of this type in the underlying database.
 java.util.List<java.lang.String> getIdsFromName(java.lang.String name)
          Returns the list of ids of T objects that have the given name.
 boolean idExists(java.lang.Long id)
          Returns true if the id would resolve to a domain object.
 boolean nameExists(java.lang.String name)
          Returns true if the name would resolve to a domain object.
 

Method Detail

getIdsFromName

java.util.List<java.lang.String> getIdsFromName(java.lang.String name)
Returns the list of ids of T objects that have the given name. Names may be unique but often are not, hence the List return type.

Parameters:
name - the name of the T.
Returns:
all IDs of objects matching the name or the empty list on name lookup failure.

nameExists

boolean nameExists(java.lang.String name)
Returns true if the name would resolve to a domain object.

Parameters:
name - the addressable name.
Returns:
true only if the name resolves to a domain object in the database.

idExists

boolean idExists(java.lang.Long id)
Returns true if the id would resolve to a domain object.

Parameters:
id - the primary key.
Returns:
true only if the id resolves to a domain object in the database.

get

T get(java.lang.Long id)
Get by id.

Parameters:
id - the id.
Returns:
the domain object or null on lookup failure.

getAll

@NotNull
java.util.Collection<T> getAll()
Gets all domain objects of this type in the underlying database. Note that calling this may not be a good idea for some domain object types.

Returns:
all objects of the configured type in the database (possibly empty, never null).


Copyright © 2002-2010 Atlassian. All Rights Reserved.