blob: 1e2b2f460bb3018e2ca07c0ae4c43fd84bc83d41 [file] [log] [blame]
package com.gemstone.gemfire.internal.redis.executor.set;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import com.gemstone.gemfire.internal.redis.ByteArrayWrapper;
import com.gemstone.gemfire.internal.redis.RedisConstants.ArityDef;
public class SUnionExecutor extends SetOpExecutor {
@Override
protected boolean isStorage() {
return false;
}
@Override
protected Set<ByteArrayWrapper> setOp(Set<ByteArrayWrapper> firstSet, List<Set<ByteArrayWrapper>> setList) {
Set<ByteArrayWrapper> addSet = firstSet;
for (Set<ByteArrayWrapper> set: setList) {
if (addSet == null) {
addSet = new HashSet<ByteArrayWrapper>(set);
continue;
}
addSet.addAll(set);
}
return addSet;
}
@Override
public String getArgsError() {
return ArityDef.SUNION;
}
}