com.planetj.taste.model
Interface User

All Superinterfaces:
java.lang.Comparable<User>
All Known Implementing Classes:
GenericUser

public interface User
extends java.lang.Comparable<User>

Implementations represent a user, who has preferences for Items.

Author:
Sean Owen

Method Summary
 java.lang.Object getID()
           
 Preference getPreferenceFor(java.lang.Object itemID)
           
 java.lang.Iterable<Preference> getPreferences()
          Returns a sequence of Preferences for this User which can be iterated over.
 Preference[] getPreferencesAsArray()
          Returns an array view of Preferences for this User.
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Method Detail

getID

@NotNull
java.lang.Object getID()
Returns:
unique user ID

getPreferenceFor

@Nullable
Preference getPreferenceFor(java.lang.Object itemID)
Parameters:
itemID - ID of item to get the user's preference for
Returns:
user's Preference for that Item, or null if the user expresses no such preference

getPreferences

@NotNull
java.lang.Iterable<Preference> getPreferences()

Returns a sequence of Preferences for this User which can be iterated over. Note that the sequence must be "in order": ordered by Item.

Returns:
a sequence of Preferences

getPreferencesAsArray

@NotNull
Preference[] getPreferencesAsArray()

Returns an array view of Preferences for this User. Note that the sequence must be "in order": ordered by Item.

Returns:
an array of Preferences