U
- type of the usersI
- type of the itemspublic class SimplePreferenceData<U,I> extends Object implements PreferenceData<U,I>, Serializable
Modifier | Constructor and Description |
---|---|
protected |
SimplePreferenceData(Map<U,List<IdPref<I>>> userMap,
Map<I,List<IdPref<U>>> itemMap,
int numPreferences)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
containsItem(I i)
Checks whether the index contains an item.
|
boolean |
containsUser(U u)
Checks whether the index contains a user.
|
Stream<I> |
getAllItems()
Retrieves a stream of the indexed items.
|
Stream<U> |
getAllUsers()
Retrieves a stream of the indexed users.
|
Stream<? extends IdPref<U>> |
getItemPreferences(I i)
Returns a stream of the preferences of the item
|
Stream<I> |
getItemsWithPreferences()
Returns a stream of the items with preferences
|
Stream<? extends IdPref<I>> |
getUserPreferences(U u)
Returns a stream of the preferences of the user
|
Stream<U> |
getUsersWithPreferences()
Returns a stream of the users with preferences
|
static <U,I> SimplePreferenceData<U,I> |
load(Stream<org.jooq.lambda.tuple.Tuple3<U,I,Double>> tuples)
Loads a SimplePreferenceData from a stream of user-item-value triples.
|
static <U,I,O> SimplePreferenceData<U,I> |
load(Stream<org.jooq.lambda.tuple.Tuple4<U,I,Double,O>> tuples,
org.jooq.lambda.function.Function4<U,I,Double,O,? extends IdPref<I>> uPrefFun,
org.jooq.lambda.function.Function4<U,I,Double,O,? extends IdPref<U>> iPrefFun)
Loads an instance of the class from a stream of tuples possibly containing extra information.
|
int |
numItems()
Counts the number of indexed items.
|
int |
numItems(U u)
Returns the number of items with preference for user u
|
int |
numItemsWithPreferences()
Returns the number of items with preferences.
|
int |
numPreferences()
Returns the total number of preferences
|
int |
numUsers()
Counts the number of indexed users.
|
int |
numUsers(I i)
Returns the number of users with preference for item i
|
int |
numUsersWithPreferences()
Returns the number of users with preferences.
|
public boolean containsUser(U u)
UserIndex
containsUser
in interface UserIndex<U>
u
- userpublic int numUsers()
UserIndex
public int numUsers(I i)
PreferenceData
numUsers
in interface PreferenceData<U,I>
i
- itempublic boolean containsItem(I i)
ItemIndex
containsItem
in interface ItemIndex<I>
i
- itempublic int numItems()
ItemIndex
public int numItems(U u)
PreferenceData
numItems
in interface PreferenceData<U,I>
u
- userpublic int numPreferences()
PreferenceData
numPreferences
in interface PreferenceData<U,I>
public Stream<U> getAllUsers()
UserIndex
getAllUsers
in interface UserIndex<U>
public Stream<I> getAllItems()
ItemIndex
getAllItems
in interface ItemIndex<I>
public Stream<? extends IdPref<I>> getUserPreferences(U u)
PreferenceData
getUserPreferences
in interface PreferenceData<U,I>
u
- userpublic Stream<? extends IdPref<U>> getItemPreferences(I i)
PreferenceData
getItemPreferences
in interface PreferenceData<U,I>
i
- itempublic int numUsersWithPreferences()
PreferenceData
numUsersWithPreferences
in interface PreferenceData<U,I>
public int numItemsWithPreferences()
PreferenceData
numItemsWithPreferences
in interface PreferenceData<U,I>
public Stream<U> getUsersWithPreferences()
PreferenceData
getUsersWithPreferences
in interface PreferenceData<U,I>
public Stream<I> getItemsWithPreferences()
PreferenceData
getItemsWithPreferences
in interface PreferenceData<U,I>
public static <U,I> SimplePreferenceData<U,I> load(Stream<org.jooq.lambda.tuple.Tuple3<U,I,Double>> tuples)
U
- user typeI
- item typetuples
- user-item-value triplespublic static <U,I,O> SimplePreferenceData<U,I> load(Stream<org.jooq.lambda.tuple.Tuple4<U,I,Double,O>> tuples, org.jooq.lambda.function.Function4<U,I,Double,O,? extends IdPref<I>> uPrefFun, org.jooq.lambda.function.Function4<U,I,Double,O,? extends IdPref<U>> iPrefFun)
U
- type of userI
- type of itemO
- type of additional informationtuples
- stream of user-item-value triplesuPrefFun
- creator of preference objectsiPrefFun
- creator of preference objectsCopyright © 2016. All rights reserved.