001/* 002 * JKNIV, whinstone one contract to access your database. 003 * 004 * Copyright (C) 2017, the original author or authors. 005 * 006 * This library is free software; you can redistribute it and/or 007 * modify it under the terms of the GNU Lesser General Public 008 * License as published by the Free Software Foundation; either 009 * version 2.1 of the License. 010 * 011 * This library is distributed in the hope that it will be useful, 012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 014 * Lesser General Public License for more details. 015 * 016 * You should have received a copy of the GNU Lesser General Public 017 * License along with this library; if not, write to the Free Software Foundation, Inc., 018 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 019 */ 020package net.sf.jkniv.whinstone.cassandra.commands; 021 022import net.sf.jkniv.exception.HandleableException; 023import net.sf.jkniv.whinstone.Queryable; 024import net.sf.jkniv.whinstone.commands.Command; 025import net.sf.jkniv.whinstone.commands.CommandHandler; 026import net.sf.jkniv.whinstone.statement.StatementAdapter; 027 028@SuppressWarnings({"unchecked","rawtypes"}) 029public class DefaultQuery implements Command 030{ 031 private StatementAdapter stmt; 032 033 public DefaultQuery(Queryable queryable) 034 { 035 super(); 036 } 037 038 @Override 039 public <T> Command with(T stmt) 040 { 041 this.stmt = (StatementAdapter) stmt; 042 return this; 043 } 044 045 @Override 046 public Command with(HandleableException handleableException) 047 { 048 return this; 049 } 050 051 @Override 052 public Command with(CommandHandler commandHandler) 053 { 054 return this; 055 } 056 057 @Override 058 public <T> T execute() 059 { 060 T list = (T) stmt.rows(); 061 return list; 062 } 063}