// ReadMsg.java; class file size 1853 bytes

package IDEA_Message;
import DBClasses.dbManager;
import java.io.OutputStreamWriter;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;

class Read_Message
{

  static public void main(String[] s1) {
    PrintWriter p2;
    String s3;
    dbManager d4;
    Connection c5;
    Statement s6;
    String s7;
    ResultSet r8;
    ResultSet result;
    String s9;
    String s10;
    String s11;
    String s12;
    String s13;
    String s14;
    String s15;
    String s16;
    String s17;
    if (s1.length != 1) {
      System.out.println("Usage java ReadMsg <userID>");
    }
    else {
      p2 = new java.io.PrintWriter(new java.io.OutputStreamWriter(System.out));
      s3 = s1[0];
      d4 = new DBClasses.dbManager();
      c5 = d4.getConnection();
      try {
        s6 = c5.createStatement();
        s7 =  "select * from MESSAGE,PEOPLE where MESSAGE.MSG_TO_ID=PEOPLE.PERS_ID and PEOPLE.PERS_HANDLE='" + s3.toString() + "'";
        r8 = s6.executeQuery(s7);
        while (r8.next()) {
          s9 = r8.getString("MSG_FROM_ID");
          s6 = c5.createStatement();
          s7 = "SELECT PERS_HANDLE FROM PEOPLE WHERE PERS_ID = " + s9.toString();
		  result = s6.executeQuery(s7);
		  if (result.next()){
          	s9 = result.getString("PERS_HANDLE").trim();
	  	  }

          s10 = r8.getString("MSG_TO_ID");
          s6 = c5.createStatement();
          s7 = "SELECT PERS_HANDLE FROM PEOPLE WHERE PERS_ID = " + s10.toString();
		  result = s6.executeQuery(s7);
		  if (result.next()){
          	s10 = result.getString("PERS_HANDLE").trim();
		  }

          s11 = r8.getString("MSG_TIME").substring(0, 19);
          s12 = s11.substring(8, 10);
          s13 = s11.substring(5, 7);
          s14 = s11.substring(0, 4);
          s15 = s11.substring(11, 19);
          s16 = r8.getString("MSG_TXT");
          s17 = new StringBuffer().append(s12).append("/").append(s13).append("/").append(s14).append(" ").append(s15).toString();
          //delimiter "@@" between fields
          p2.print(new StringBuffer().append(s9).append("@@").append(s10).append("@@").append(s17).append("@@").append(s16).toString());
          //delimiter "@@" between records
          p2.print("|");
          p2.println();
        }
        p2.flush();
        r8.close();
        s6.close();
        c5.close();
      }
      catch (Exception e12) {
        System.out.println("DB Error!");
        e12.printStackTrace();
      }
    }
  }
}
