public class CombinedProfileService extends Object implements ProfileService
ProfileServices together and checks them from
first to last, stopping when there are no more services left to query or
all profiles were found.| Constructor and Description |
|---|
CombinedProfileService(List<ProfileService> services)
Create a new instance.
|
CombinedProfileService(ProfileService... services)
Create a new instance.
|
| Modifier and Type | Method and Description |
|---|---|
com.google.common.collect.ImmutableList<Profile> |
findAllByName(Iterable<String> names)
Query the profile server for UUIDs for the given names.
|
void |
findAllByName(Iterable<String> names,
com.google.common.base.Predicate<Profile> consumer)
Query the profile server for UUIDs for the given names.
|
Profile |
findByName(String name)
Query the profile server for the UUID of a name.
|
int |
getIdealRequestLimit()
Get the optimal maximum number of profiles that can be found
with one
ProfileService.findAllByName(Iterable) call. |
public CombinedProfileService(List<ProfileService> services)
services - a list of servicespublic CombinedProfileService(ProfileService... services)
services - an array of servicespublic int getIdealRequestLimit()
ProfileServiceProfileService.findAllByName(Iterable) call.
ProfileService.findAllByName(Iterable) (and similar) methods may split up
requests into smaller ones to fit within one request. This method
returns the ideal maximum number.
getIdealRequestLimit in interface ProfileService@Nullable public Profile findByName(String name) throws IOException, InterruptedException
ProfileServicefindByName in interface ProfileServicename - a namenullIOException - thrown on I/O errorInterruptedException - thrown on interruptionpublic com.google.common.collect.ImmutableList<Profile> findAllByName(Iterable<String> names) throws IOException, InterruptedException
ProfileServicefindAllByName in interface ProfileServicenames - an iterable containing names to searchIOException - thrown on I/O errorInterruptedException - thrown on interruptionpublic void findAllByName(Iterable<String> names, com.google.common.base.Predicate<Profile> consumer) throws IOException, InterruptedException
ProfileServicefindAllByName in interface ProfileServicenames - an iterable containing names to searchconsumer - a consumer function that will receive discovered profilesIOException - thrown on I/O errorInterruptedException - thrown on interruptionCopyright © 2014. All Rights Reserved.