/*
* @(#)DistinctExitOperation.java 2012-8-1 下午10:00:00
*
* Copyright (c) 2011-2012 Makersoft.org all rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
*
*/
package org.makersoft.shards.strategy.exit.impl;
import java.util.List;
import java.util.Set;
import org.makersoft.shards.strategy.exit.ExitOperation;
import org.makersoft.shards.strategy.exit.ExitOperationUtils;
import org.makersoft.shards.utils.Lists;
import org.makersoft.shards.utils.Sets;
/**
*
*/
public class DistinctExitOperation implements ExitOperation {
@Override
public List<Object> apply(List<Object> results) {
Set<Object> uniqueSet = Sets.newHashSet();
uniqueSet.addAll(ExitOperationUtils.getNonNullList(results));
List<Object> uniqueList = Lists.newArrayList(uniqueSet);
return uniqueList;
}
}