org.dspace.content.authority
Class TestAuthority

java.lang.Object
  extended by org.dspace.content.authority.TestAuthority
All Implemented Interfaces:
AuthorityVariantsSupport, ChoiceAuthority

public class TestAuthority
extends Object
implements ChoiceAuthority, AuthorityVariantsSupport

This is a *very* stupid test fixture for authority control with AuthorityVariantsSupport.

Author:
Andrea Bollini (CILEA)

Constructor Summary
TestAuthority()
           
 
Method Summary
 Choices getBestMatch(String field, String text, int collection, String locale)
          Get the single "best" match (if any) of a value in the authority to the given user value.
 String getLabel(String field, String key, String locale)
          Get the canonical user-visible "label" (i.e.
 Choices getMatches(String field, String text, int collection, int start, int limit, String locale)
          Get all values from the authority that match the preferred value.
 List<String> getVariants(String key, String locale)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TestAuthority

public TestAuthority()
Method Detail

getVariants

public List<String> getVariants(String key,
                                String locale)
Specified by:
getVariants in interface AuthorityVariantsSupport

getMatches

public Choices getMatches(String field,
                          String text,
                          int collection,
                          int start,
                          int limit,
                          String locale)
Description copied from interface: ChoiceAuthority
Get all values from the authority that match the preferred value. Note that the offering was entered by the user and may contain mixed/incorrect case, whitespace, etc so the plugin should be careful to clean up user data before making comparisons. Value of a "Name" field will be in canonical DSpace person name format, which is "Lastname, Firstname(s)", e.g. "Smith, John Q.". Some authorities with a small set of values may simply return the whole set for any sample value, although it's a good idea to set the defaultSelected index in the Choices instance to the choice, if any, that matches the value.

Specified by:
getMatches in interface ChoiceAuthority
Parameters:
field - being matched for
text - user's value to match
collection - database ID of Collection for context (owner of Item)
start - choice at which to start, 0 is first.
limit - maximum number of choices to return, 0 for no limit.
locale - explicit localization key if available, or null
Returns:
a Choices object (never null).

getBestMatch

public Choices getBestMatch(String field,
                            String text,
                            int collection,
                            String locale)
Description copied from interface: ChoiceAuthority
Get the single "best" match (if any) of a value in the authority to the given user value. The "confidence" element of Choices is expected to be set to a meaningful value about the circumstances of this match. This call is typically used in non-interactive metadata ingest where there is no interactive agent to choose from among options.

Specified by:
getBestMatch in interface ChoiceAuthority
Parameters:
field - being matched for
text - user's value to match
collection - database ID of Collection for context (owner of Item)
locale - explicit localization key if available, or null
Returns:
a Choices object (never null) with 1 or 0 values.

getLabel

public String getLabel(String field,
                       String key,
                       String locale)
Description copied from interface: ChoiceAuthority
Get the canonical user-visible "label" (i.e. short descriptive text) for a key in the authority. Can be localized given the implicit or explicit locale specification. This may get called many times while populating a Web page so it should be implemented as efficiently as possible.

Specified by:
getLabel in interface ChoiceAuthority
Parameters:
field - being matched for
key - authority key known to this authority.
locale - explicit localization key if available, or null
Returns:
descriptive label - should always return something, never null.


Copyright © 2012 DuraSpace. All Rights Reserved.