historique
This commit is contained in:
parent
21eef445a7
commit
26243f1363
5 changed files with 59 additions and 18 deletions
|
@ -359,15 +359,14 @@ public class Controller {
|
||||||
|
|
||||||
|
|
||||||
/*** recup history and put it in model ***/
|
/*** recup history and put it in model ***/
|
||||||
/*
|
|
||||||
try {
|
try {
|
||||||
System.out.println(this.getHistory().retrieveMessage(getMyUser(), c.getRemoteUser()));
|
//System.out.println(this.getHistory().retrieveMessage(getMyUser(), c.getRemoteUser()));
|
||||||
String history = this.getHistory().retrieveMessage(getMyUser(), c.getRemoteUser());
|
c.addListMessage(this.getHistory().retrieveMessage(getMyUser(), c.getRemoteUser()));
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
System.out.println("souci avec le retrieveMsg");
|
System.out.println("souci avec le retrieveMsg");
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
*/
|
//System.out.println(myUser.getChats().get(myUser.getChatIndexOf(rm)));
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
public String askOpenSession(int index) {
|
public String askOpenSession(int index) {
|
||||||
|
@ -382,7 +381,7 @@ public class Controller {
|
||||||
}
|
}
|
||||||
else { // else create it
|
else { // else create it
|
||||||
c=openSession(rm);
|
c=openSession(rm);
|
||||||
JOptionPane.showMessageDialog(null ,"New session with "+c.getRemoteUser().getPseudo());
|
JOptionPane.showMessageDialog(null ,"New session with "+rm.getPseudo());
|
||||||
}
|
}
|
||||||
|
|
||||||
// Look for history
|
// Look for history
|
||||||
|
@ -425,7 +424,7 @@ public class Controller {
|
||||||
// Sauvegarde dans la base de données
|
// Sauvegarde dans la base de données
|
||||||
DateFormat dateFormat = new SimpleDateFormat("yyyy MM dd HH mm ss");
|
DateFormat dateFormat = new SimpleDateFormat("yyyy MM dd HH mm ss");
|
||||||
Date date=new Date();
|
Date date=new Date();
|
||||||
//this.getHistory().saveMessage(getMyUser(), c.getRemoteUser(),message ,dateFormat.format(date));
|
this.getHistory().saveMessage(getMyUser(), c.getRemoteUser(),message ,dateFormat.format(date));
|
||||||
|
|
||||||
// Send message
|
// Send message
|
||||||
out.println(message);
|
out.println(message);
|
||||||
|
|
|
@ -8,10 +8,14 @@ import java.sql.ResultSet;
|
||||||
import java.sql.ResultSetMetaData;
|
import java.sql.ResultSetMetaData;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
import java.sql.Statement;
|
import java.sql.Statement;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
|
|
||||||
import javax.sql.rowset.JdbcRowSet;
|
import javax.sql.rowset.JdbcRowSet;
|
||||||
|
|
||||||
|
import model.Message;
|
||||||
|
import model.Msg_Text;
|
||||||
|
|
||||||
public class Historique {
|
public class Historique {
|
||||||
|
|
||||||
public void saveMessage(model.User ctr1, model.RemoteUser ctr2, String input, String date) {
|
public void saveMessage(model.User ctr1, model.RemoteUser ctr2, String input, String date) {
|
||||||
|
@ -78,7 +82,7 @@ public class Historique {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String retrieveMessage(model.LocalUser user1, model.RemoteUser user2) throws SQLException {
|
public ArrayList<Message> retrieveMessage(model.LocalUser user1, model.RemoteUser user2) throws SQLException {
|
||||||
try {
|
try {
|
||||||
Class.forName("java.sql.Driver");
|
Class.forName("java.sql.Driver");
|
||||||
} catch (ClassNotFoundException e) {
|
} catch (ClassNotFoundException e) {
|
||||||
|
@ -86,12 +90,32 @@ public class Historique {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
Connection con=DriverManager.getConnection("jdbc:mysql://srv-bdens.insa-toulouse.fr:3306","tp_servlet_003","povu3Ma2");
|
Connection con=DriverManager.getConnection("jdbc:mysql://srv-bdens.insa-toulouse.fr:3306","tp_servlet_003","povu3Ma2");
|
||||||
Statement stat=con.createStatement();
|
Statement stat = null;
|
||||||
Statement stat2=con.createStatement();
|
try {
|
||||||
|
stat = con.createStatement();
|
||||||
|
} catch (SQLException e2) {
|
||||||
|
// TODO Auto-generated catch block
|
||||||
|
e2.printStackTrace();
|
||||||
|
}
|
||||||
|
Statement stat2 = null;
|
||||||
|
try {
|
||||||
|
stat2 = con.createStatement();
|
||||||
|
} catch (SQLException e1) {
|
||||||
|
// TODO Auto-generated catch block
|
||||||
|
e1.printStackTrace();
|
||||||
|
}
|
||||||
int nb_changed_rows = stat.executeUpdate("USE tp_servlet_003");
|
int nb_changed_rows = stat.executeUpdate("USE tp_servlet_003");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
nb_changed_rows = stat.executeUpdate("CREATE TABLE chat ( user_IPcode1 INTEGER, user_IPcode2 INTEGER ,Message VARCHAR(450) ,temps VARCHAR(450) )");
|
nb_changed_rows = stat.executeUpdate("USE TABLE chat ( user_IPcode1 INTEGER, user_IPcode2 INTEGER ,Message VARCHAR(450) ,temps VARCHAR(450) )");
|
||||||
|
}catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
|
||||||
|
}
|
||||||
|
nb_changed_rows = stat2.executeUpdate("USE tp_servlet_003");
|
||||||
|
|
||||||
|
try {
|
||||||
|
nb_changed_rows = stat2.executeUpdate("USE TABLE chat ( user_IPcode1 INTEGER, user_IPcode2 INTEGER ,Message VARCHAR(450) ,temps VARCHAR(450) )");
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
|
||||||
|
@ -101,7 +125,8 @@ public class Historique {
|
||||||
boolean encore1 = RSSent.next();
|
boolean encore1 = RSSent.next();
|
||||||
ResultSet RSReceived=(stat2.executeQuery("SELECT user_IPcode1, user_IPcode2, Message, temps FROM chat WHERE user_IPcode1="+user2.getIPcode()));
|
ResultSet RSReceived=(stat2.executeQuery("SELECT user_IPcode1, user_IPcode2, Message, temps FROM chat WHERE user_IPcode1="+user2.getIPcode()));
|
||||||
boolean encore2 = RSReceived.next();
|
boolean encore2 = RSReceived.next();
|
||||||
String message=null;
|
ArrayList<Message> message=new ArrayList<Message>();
|
||||||
|
//String message=null;
|
||||||
String[] string1=null;
|
String[] string1=null;
|
||||||
String[] string2=null;
|
String[] string2=null;
|
||||||
Calendar date1=Calendar.getInstance();
|
Calendar date1=Calendar.getInstance();
|
||||||
|
@ -114,7 +139,6 @@ public class Historique {
|
||||||
encore1=RSSent.next();
|
encore1=RSSent.next();
|
||||||
}
|
}
|
||||||
string1=RSSent.getString(4).split(" ");
|
string1=RSSent.getString(4).split(" ");
|
||||||
System.out.println(RSSent.getString(4));
|
|
||||||
date1.set(Integer.valueOf(string1[0]), Integer.valueOf(string1[1]), Integer.valueOf(string1[2]),Integer.valueOf(string1[3]), Integer.valueOf(string1[4]), Integer.valueOf(string1[5]));
|
date1.set(Integer.valueOf(string1[0]), Integer.valueOf(string1[1]), Integer.valueOf(string1[2]),Integer.valueOf(string1[3]), Integer.valueOf(string1[4]), Integer.valueOf(string1[5]));
|
||||||
|
|
||||||
//RSReceived=(stat.executeQuery("SELECT user_IPcode1, user_IPcode2, Message, temps FROM chat WHERE user_IPcode1="+user2.getIPcode()));
|
//RSReceived=(stat.executeQuery("SELECT user_IPcode1, user_IPcode2, Message, temps FROM chat WHERE user_IPcode1="+user2.getIPcode()));
|
||||||
|
@ -127,11 +151,15 @@ public class Historique {
|
||||||
date2.set(Integer.valueOf(string2[0]), Integer.valueOf(string2[1]), Integer.valueOf(string2[2]),Integer.valueOf(string2[3]), Integer.valueOf(string2[4]), Integer.valueOf(string2[5]));
|
date2.set(Integer.valueOf(string2[0]), Integer.valueOf(string2[1]), Integer.valueOf(string2[2]),Integer.valueOf(string2[3]), Integer.valueOf(string2[4]), Integer.valueOf(string2[5]));
|
||||||
|
|
||||||
if (date1.compareTo(date2)>=0) {
|
if (date1.compareTo(date2)>=0) {
|
||||||
message=message+"\n"+RSReceived.getString(3);
|
Msg_Text msg =new Msg_Text(user2,RSReceived.getString(4),RSReceived.getString(3));
|
||||||
message=message+"\n"+RSSent.getString(3);
|
message.add(msg);
|
||||||
|
Msg_Text msg1 =new Msg_Text(user1,RSSent.getString(4),RSSent.getString(3));
|
||||||
|
message.add(msg1);
|
||||||
}else {
|
}else {
|
||||||
message=message+"\n"+RSSent.getString(3);
|
Msg_Text msg1 =new Msg_Text(user1,RSSent.getString(4),RSSent.getString(3));
|
||||||
message=message+"\n"+RSReceived.getString(3);
|
message.add(msg1);
|
||||||
|
Msg_Text msg =new Msg_Text(user2,RSReceived.getString(4),RSReceived.getString(3));
|
||||||
|
message.add(msg);
|
||||||
}
|
}
|
||||||
encore1=RSSent.next();
|
encore1=RSSent.next();
|
||||||
encore2=RSReceived.next();
|
encore2=RSReceived.next();
|
||||||
|
|
|
@ -49,6 +49,9 @@ public class Chat {
|
||||||
public void addMessage(Message msg) {
|
public void addMessage(Message msg) {
|
||||||
this.messages.add(msg);
|
this.messages.add(msg);
|
||||||
}
|
}
|
||||||
|
public void addListMessage( ArrayList<Message> msg) {
|
||||||
|
this.messages=msg;
|
||||||
|
}
|
||||||
public void activate() {
|
public void activate() {
|
||||||
this.active = true;
|
this.active = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,6 +24,10 @@ public abstract class Message {
|
||||||
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
|
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
|
||||||
this.date = dateFormat.format(new Date());
|
this.date = dateFormat.format(new Date());
|
||||||
}
|
}
|
||||||
|
public Message(User autor, String date) {
|
||||||
|
this.autor = autor;
|
||||||
|
this.date = date;
|
||||||
|
}
|
||||||
/*** GETTERS ***/
|
/*** GETTERS ***/
|
||||||
public String getDate() {
|
public String getDate() {
|
||||||
return date;
|
return date;
|
||||||
|
@ -36,6 +40,9 @@ public abstract class Message {
|
||||||
public void setAutorIP(User autor) {
|
public void setAutorIP(User autor) {
|
||||||
this.autor = autor;
|
this.autor = autor;
|
||||||
}
|
}
|
||||||
|
public void setDate(String date) {
|
||||||
|
this.date=date;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public abstract Object getMessage();
|
public abstract Object getMessage();
|
||||||
|
|
|
@ -11,6 +11,10 @@ public class Msg_Text extends Message{
|
||||||
super(autor);
|
super(autor);
|
||||||
this.text = text;
|
this.text = text;
|
||||||
}
|
}
|
||||||
|
public Msg_Text(User autor,String date, String text) {
|
||||||
|
super(autor,date);
|
||||||
|
this.text = text;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getMessage() {
|
public String getMessage() {
|
||||||
|
|
Loading…
Reference in a new issue