package org.infinispan.query.affinity; import java.util.Collection; import org.infinispan.commands.ReplicableCommand; import org.infinispan.remoting.transport.Address; class RpcDetail { private final String cacheName; private final ReplicableCommand command; private final Collection<Address> destination; private final Address originator; RpcDetail(Address originator, ReplicableCommand command, String cacheName, Collection<Address> destination) { this.originator = originator; this.command = command; this.cacheName = cacheName; this.destination = destination; } ReplicableCommand getCommand() { return command; } String getCacheName() { return cacheName; } boolean isRpcToItself() { return destination != null && destination.size() == 1 && destination.iterator().next().equals(originator); } @Override public String toString() { return "RpcDetail{" + "cacheName='" + cacheName + '\'' + ", command=" + command + ", destination=" + destination + ", originator=" + originator + '}'; } }