@Override
public Object visitKeySetCommand(InvocationContext ctx, KeySetCommand command) throws Throwable {
Object keys = super.visitKeySetCommand(ctx, command);
if (enabled && !shouldSkipCacheLoader(command)) {
final Set<Object> union = new HashSet<Object>((Set<Object>)keys);
persistenceManager.processOnAllStores(new CollectionKeyFilter(union), new AdvancedCacheLoader.CacheLoaderTask() {
@Override
public void processEntry(MarshalledEntry marshalledEntry, AdvancedCacheLoader.TaskContext taskContext) throws InterruptedException {
union.add(marshalledEntry.getKey());
}
}, new WithinThreadExecutor(), false, false);