// Ensure ROOT is always permitted.
ImmutableList.Builder<Capability> whitelistBuilder =
ImmutableList.<Capability>builder().add(Capability.ROOT);
Method method = invocation.getMethod();
Requires requires = method.getAnnotation(Requires.class);
if (requires != null) {
whitelistBuilder.add(requires.whitelist());
}
List<Capability> whitelist = whitelistBuilder.build();
LOG.fine("Operation " + method.getName() + " may be performed by: " + whitelist);
Optional<SessionKey> sessionKey = FluentIterable.from(Arrays.asList(invocation.getArguments()))