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.GetAllRevService; import edu.purdue.pivot.skwiki.shared.DataPack; import edu.purdue.pivot.skwiki.shared.SearchTagResult; /** * The server side implementation of the RPC service. */ @SuppressWarnings("serial") public class GetAllRevServiceImpl extends RemoteServiceServlet implements GetAllRevService { private String escapeHtml(String html) { if (html == null) { return null; } return html.replaceAll("&", "&").replaceAll("<", "<") .replaceAll(">", ">"); } @Override public DataPack getAllRev(DataPack input) throws IllegalArgumentException { String serverInfo = getServletContext().getServerInfo(); String userAgent = getThreadLocalRequest().getHeader("User-Agent"); System.err.println(input.updatedHistory.size()+""); System.out.println("Server Side code"); String returnInput = input.toString(); userAgent = escapeHtml(userAgent); String id = input.id; 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/postchi_testing", "postgres", "fujiko"); st = connection.createStatement(); rs = st.executeQuery("SELECT * FROM"+" tag where entity_id="+ "'"+input.entity_key+"'"); //int rowCount = 0; while (rs.next()) { //System.out.print(rs.getInt(1)+" "); //returnPack.updateRevision = rs.getInt(1); int revision = rs.getInt(1); String uid = rs.getString(2); String entity_id = rs.getString(4); String tag = rs.getString(5); SearchTagResult tempResult = new SearchTagResult(uid, revision, entity_id, tag); Integer tempInt = Integer.valueOf(revision); returnPack.allRevList.add(tempResult); } System.out.println("allRevList size "+returnPack.allRevList.size()); } 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(); } } return returnPack; } }