package eu.leads.processor; import com.fasterxml.jackson.databind.ObjectMapper; import eu.leads.processor.execute.Tuple; import eu.leads.processor.execute.operators.LimitOperatorImplemetation; import eu.leads.processor.query.SQLQuery; import eu.leads.processor.utils.InfinispanUtils; import eu.leads.processor.utils.Utilities; import net.sf.jsqlparser.statement.select.Limit; import org.infinispan.Cache; import java.util.Map; /** * Created with IntelliJ IDEA. * User: vagvaz * Date: 11/5/13 * Time: 12:47 AM * To change this template use File | Settings | File Templates. */ public class LimitOperatorTest { private static final int numOfTuples = 10; private static final String[] columnNames = {"url", "domain", "pagerank", "body", "sentiment"}; private static final String[] columnType = {"string", "string", "double", "string", "double"}; public static void main(String[] args) { InfinispanUtils.start(); // ObjectMapper mapper = new ObjectMapper(); try { // SQLQuery query = new SQLQuery("user", "location", "select url,domain from webpages", "SELECT"); Cache<String, String> inputMap = (Cache<String, String>) InfinispanUtils.getOrCreatePersistentMap("testData"); for (int i = 0; i < numOfTuples; i++) { Tuple t = Utilities.generateTuple(columnNames, columnType); inputMap.put("test:" + (Integer.toString(i)), t.asString()); } System.out.println("intial"); Utilities.printMap(inputMap); Limit limit = new Limit(); limit.setRowCount(3); LimitOperatorImplemetation op = new LimitOperatorImplemetation("testData", "limit", limit, false); op.execute(); System.out.println("limited"); Map<String, String> dataMap = InfinispanUtils.getOrCreatePersistentMap("data"); Utilities.printMap(dataMap); System.out.println("goodbye"); } catch (Exception e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } } }