package jef.database.jdbc.result; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import jef.database.jdbc.statement.ResultSetLaterProcess; /** * 倒序获取结果的ResultSet * @author jiyi * */ public final class ProcessableResultSet extends AbstractResultSet { private ResultSet rs; public ProcessableResultSet(ResultSet rs, ResultSetLaterProcess rslp) { if(rslp.getSkipResults()>0){ rs=new LimitOffsetResultSet(rs, rslp.getSkipResults(),0); } this.rs=rs; } @Override public boolean next() throws SQLException { return rs.next(); } @Override public void close() throws SQLException { rs.close(); } @Override public ResultSetMetaData getMetaData() throws SQLException { return rs.getMetaData(); } @Override public boolean isBeforeFirst() throws SQLException { return rs.isBeforeFirst(); } @Override public boolean isAfterLast() throws SQLException { return rs.isAfterLast(); } @Override public boolean isFirst() throws SQLException { return rs.isFirst(); } @Override public boolean isLast() throws SQLException { return rs.isLast(); } @Override public void beforeFirst() throws SQLException { rs.beforeFirst(); } @Override public void afterLast() throws SQLException { rs.afterLast(); } @Override public boolean first() throws SQLException { return rs.first(); } @Override public boolean last() throws SQLException { return rs.last(); } @Override public boolean previous() throws SQLException { return rs.previous(); } @Override public boolean isClosed() throws SQLException { return rs.isClosed(); } @Override protected ResultSet get() throws SQLException { return rs; } }