package edu.purdue.pivot.skwiki.server; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import com.google.gwt.user.server.rpc.RemoteServiceServlet; import edu.purdue.pivot.skwiki.client.CheckoutSubRev; import edu.purdue.pivot.skwiki.shared.DataPack; import edu.purdue.pivot.skwiki.shared.RevisionHistory; /** * The server side implementation of the RPC service. */ @SuppressWarnings("serial") public class CheckoutSubRevImpl extends RemoteServiceServlet implements CheckoutSubRev { private String escapeHtml(String html) { if (html == null) { return null; } return html.replaceAll("&", "&").replaceAll("<", "<") .replaceAll(">", ">"); } public DataPack checkoutSubRev(DataPack input) throws IllegalArgumentException { System.out.println("checout Sub revision start"); String returnInput = input.toString(); String id = input.id; int checkoutRevision = input.updateRevision; //String returnStr = ""; //boolean newID = false; DataPack returnPack = new DataPack(); try { Class.forName("org.postgresql.Driver"); } catch (ClassNotFoundException e) { System.out.println("Where is your PostgreSQL JDBC Driver? " + "Include in your library path!"); e.printStackTrace(); } System.out.println("id: "+input.id+""); Connection connection = null; Statement st = null; ResultSet rs = null; try { connection = DriverManager.getConnection( "jdbc:postgresql://127.0.0.1:5432/m_test_1", "postgres", "984711"); st = connection.createStatement(); //String selectHead="select "; //String insertTable = ""; //String values = ""; rs = st.executeQuery("SELECT max(sequence_id) FROM"+" subrevision_table where revision = " +checkoutRevision); //int rowCount = 0; while (rs.next()) { //System.out.print(rs.getInt(1)+" "); returnPack.maxnonWholeSequence_id = rs.getInt(1); } System.out.println("max sequence_id "+ returnPack.maxnonWholeSequence_id); } catch (SQLException e) { System.out.println("Connection Failed! Check output console"); e.printStackTrace(); } finally { try { if (rs != null) { rs.close(); } if (st != null) { st.close(); } if (connection != null) { connection.close(); } } catch (SQLException ex) { ex.printStackTrace(); } } /* for(AbstractHistory tempHistory: input.updatedHistory) { returnStr+=tempHistory.getType(); } if(newID) { returnPack.newID = true; } else { returnPack.newID = false; }*/ //return returnStr; return returnPack; } }