package org.infinispan.objectfilter.impl; import java.util.Arrays; import org.infinispan.objectfilter.ObjectFilter; /** * @author anistor@redhat.com * @since 7.0 */ public final class FilterResultImpl implements ObjectFilter.FilterResult { private final Object instance; private final Object[] projection; private final Comparable[] sortProjection; public FilterResultImpl(Object instance, Object[] projection, Comparable[] sortProjection) { if (instance != null && projection != null) { throw new IllegalArgumentException("instance and projection cannot be both non-null"); } if (instance == null && projection == null) { throw new IllegalArgumentException("instance and projection cannot be both null"); } this.instance = instance; this.projection = projection; this.sortProjection = sortProjection; } public Object getInstance() { return instance; } public Object[] getProjection() { return projection; } public Comparable[] getSortProjection() { return sortProjection; } @Override public String toString() { return "FilterResultImpl{" + "instance=" + instance + ", projection=" + Arrays.toString(projection) + ", sortProjection=" + Arrays.toString(sortProjection) + '}'; } }