return personService.getPeople(userIds, groupId, options, fields, request.getToken());
}
} else if (optionalPersonId.size() == 1) {
// TODO: Add some crazy concept to handle the userId?
Set<UserId> optionalUserIds = ImmutableSet.of(
new UserId(UserId.Type.userId, optionalPersonId.iterator().next()));
Future<RestfulCollection<Person>> people = personService.getPeople(
optionalUserIds, new GroupId(GroupId.Type.self, null),
options, fields, request.getToken());
return firstItem(people);
} else {
ImmutableSet.Builder<UserId> personIds = ImmutableSet.builder();
for (String pid : optionalPersonId) {
personIds.add(new UserId(UserId.Type.userId, pid));
}
// Every other case is a collection response of optional person ids
return personService.getPeople(personIds.build(), new GroupId(GroupId.Type.self, null),
options, fields, request.getToken());
}