diff --git a/build/classes/.netbeans_automatic_build b/build/classes/.netbeans_automatic_build new file mode 100644 index 0000000..e69de29 diff --git a/build/classes/.netbeans_update_resources b/build/classes/.netbeans_update_resources new file mode 100644 index 0000000..e69de29 diff --git a/build/classes/Driver/DriverClientConsole.class b/build/classes/Driver/DriverClientConsole.class new file mode 100644 index 0000000..994be93 Binary files /dev/null and b/build/classes/Driver/DriverClientConsole.class differ diff --git a/build/classes/Driver/DriverClientGui.class b/build/classes/Driver/DriverClientGui.class new file mode 100644 index 0000000..8b23005 Binary files /dev/null and b/build/classes/Driver/DriverClientGui.class differ diff --git a/build/classes/Driver/DriverServer.class b/build/classes/Driver/DriverServer.class new file mode 100644 index 0000000..43ba81e Binary files /dev/null and b/build/classes/Driver/DriverServer.class differ diff --git a/build/classes/Model/ConnectionThread.class b/build/classes/Model/ConnectionThread.class new file mode 100644 index 0000000..09db791 Binary files /dev/null and b/build/classes/Model/ConnectionThread.class differ diff --git a/build/classes/Model/ConsoleApplication$ReadInput.class b/build/classes/Model/ConsoleApplication$ReadInput.class new file mode 100644 index 0000000..7c0cd9a Binary files /dev/null and b/build/classes/Model/ConsoleApplication$ReadInput.class differ diff --git a/build/classes/Model/ConsoleApplication$WriteInput.class b/build/classes/Model/ConsoleApplication$WriteInput.class new file mode 100644 index 0000000..3609ba2 Binary files /dev/null and b/build/classes/Model/ConsoleApplication$WriteInput.class differ diff --git a/build/classes/Model/ConsoleApplication.class b/build/classes/Model/ConsoleApplication.class new file mode 100644 index 0000000..e433a90 Binary files /dev/null and b/build/classes/Model/ConsoleApplication.class differ diff --git a/build/classes/chatGUI/ChatView$1.class b/build/classes/chatGUI/ChatView$1.class new file mode 100644 index 0000000..730c757 Binary files /dev/null and b/build/classes/chatGUI/ChatView$1.class differ diff --git a/build/classes/chatGUI/ChatView.class b/build/classes/chatGUI/ChatView.class new file mode 100644 index 0000000..ae0b8a6 Binary files /dev/null and b/build/classes/chatGUI/ChatView.class differ diff --git a/build/classes/chatGUI/ChatView.form b/build/classes/chatGUI/ChatView.form new file mode 100644 index 0000000..d7f23f5 --- /dev/null +++ b/build/classes/chatGUI/ChatView.form @@ -0,0 +1,69 @@ + + +
diff --git a/build/classes/chatGUI/JChatController$WriteOutput.class b/build/classes/chatGUI/JChatController$WriteOutput.class new file mode 100644 index 0000000..208ad4e Binary files /dev/null and b/build/classes/chatGUI/JChatController$WriteOutput.class differ diff --git a/build/classes/chatGUI/JChatController.class b/build/classes/chatGUI/JChatController.class new file mode 100644 index 0000000..65cd728 Binary files /dev/null and b/build/classes/chatGUI/JChatController.class differ diff --git a/build/classes/javaChat/ClientConnection.class b/build/classes/javaChat/ClientConnection.class new file mode 100644 index 0000000..36a9258 Binary files /dev/null and b/build/classes/javaChat/ClientConnection.class differ diff --git a/build/classes/javaChat/Connection.class b/build/classes/javaChat/Connection.class new file mode 100644 index 0000000..eb8b353 Binary files /dev/null and b/build/classes/javaChat/Connection.class differ diff --git a/build/classes/javaChat/ServerConnection.class b/build/classes/javaChat/ServerConnection.class new file mode 100644 index 0000000..233512c Binary files /dev/null and b/build/classes/javaChat/ServerConnection.class differ diff --git a/nbproject/private/private.properties b/nbproject/private/private.properties index 1b6c36a..50a7fb1 100644 --- a/nbproject/private/private.properties +++ b/nbproject/private/private.properties @@ -1,2 +1,2 @@ compile.on.save=true -user.properties.file=C:\\Users\\ANDITYAARIFIANTO\\AppData\\Roaming\\NetBeans\\8.1\\build.properties +user.properties.file=C:\\Users\\DEWA\\AppData\\Roaming\\NetBeans\\8.0.2\\build.properties diff --git a/nbproject/project.properties b/nbproject/project.properties index de16b77..9b37b39 100644 --- a/nbproject/project.properties +++ b/nbproject/project.properties @@ -53,7 +53,7 @@ javadoc.splitindex=true javadoc.use=true javadoc.version=false javadoc.windowtitle= -main.class=task.Task +main.class=Driver.DriverServer manifest.file=manifest.mf meta.inf.dir=${src.dir}/META-INF mkdist.disabled=false diff --git a/src/Driver/DriverClientConsole.java b/src/Driver/DriverClientConsole.java new file mode 100644 index 0000000..ff7f555 --- /dev/null +++ b/src/Driver/DriverClientConsole.java @@ -0,0 +1,14 @@ + +package Driver; + + +import Model.ConsoleApplication; + +public class DriverClientConsole { + + public static void main(String[] args) { + + ConsoleApplication CA = new ConsoleApplication(); + CA.startChat(); + } +} diff --git a/src/Driver/DriverClientGui.java b/src/Driver/DriverClientGui.java new file mode 100644 index 0000000..0905a8a --- /dev/null +++ b/src/Driver/DriverClientGui.java @@ -0,0 +1,14 @@ + +package Driver; + + +import chatGUI.JChatController; + + +public class DriverClientGui { + + public static void main(String[] args) { + + JChatController JCC = new JChatController(); + } +} diff --git a/src/Driver/DriverServer.java b/src/Driver/DriverServer.java new file mode 100644 index 0000000..2f010e7 --- /dev/null +++ b/src/Driver/DriverServer.java @@ -0,0 +1,24 @@ + +package Driver; + +import Model.ConnectionThread; +import javaChat.ServerConnection; +import java.io.IOException; + +public class DriverServer { + + public static void main(String[] args) { + + try { + ServerConnection server = new ServerConnection(); + System.out.println("Server Information"); + System.out.println(server.getServerInformation()); + while (true) { + ConnectionThread connection = new ConnectionThread(server.getClient()); + connection.start(); + } + } catch (Exception x) { + System.out.println("Error..."); + } + } +} diff --git a/src/Model/ConnectionThread.java b/src/Model/ConnectionThread.java new file mode 100644 index 0000000..9b4e0bc --- /dev/null +++ b/src/Model/ConnectionThread.java @@ -0,0 +1,47 @@ + +package Model; + +import java.io.IOException; +import java.net.Socket; +import javaChat.Connection; + +public class ConnectionThread extends Thread { + + private Socket client; + private Connection connection; + + public ConnectionThread(Socket newClient) throws IOException{ + this.client = newClient; + connection = new Connection(client); + } + + public void run(){ + try { + connection.startChat("start The Chat "); + + System.out.println("---------------"); + System.out.println("new cilent connected"); + System.out.println("client information : "); + System.out.println(connection.getClientInformation()); + + String inputan; + String message; + + while((inputan = connection.readStream()) != null && inputan.equals("Quit")){ + message = "Client " + connection.getIpClient() + + "Said : " + inputan; + System.out.println(message); + connection.sendToAll(message); + } + + message = "Client from IP : " + connection.getIpClient() + + "Quit the chat room"; + System.out.println(message); + connection.sendToAll(message); + connection.disconnect(); + } catch (Exception x) { + System.out.println("Error..."); + } + } +} + diff --git a/src/Model/ConsoleApplication.java b/src/Model/ConsoleApplication.java new file mode 100644 index 0000000..e74b3aa --- /dev/null +++ b/src/Model/ConsoleApplication.java @@ -0,0 +1,58 @@ + +package Model; + +import javaChat.ClientConnection; + +public class ConsoleApplication { + + private ClientConnection client; + + public class ReadInput extends Thread{ + + public void run(){ + + try { + String inputKeyboard; + do { + System.out.println(">> "); + inputKeyboard = client.inputString(); + client.writeStream(inputKeyboard); + } while(!inputKeyboard.equals("quit")); + client.disconnect(); + } catch (Exception x) { + System.out.println("Error..."); + } + } + } + + public class WriteInput extends Thread{ + + public void run(){ + + try { + String inputan; + while ((inputan = client.readStream()) != null){ + System.out.println(inputan); + System.out.println(">> "); + } + } catch (Exception x) { + System.out.println("Error..."); + } + } + } + + public void startChat(){ + try { + client = new ClientConnection(); + System.out.println("input server IP : "); + String ip = client.inputString(); + client.connect(ip); + ReadInput in = new ReadInput(); + WriteInput out = new WriteInput(); + in.start(); + out.start(); + } catch (Exception x) { + System.out.println("Error..."); + } + } +} diff --git a/src/chatGUI/ChatView.form b/src/chatGUI/ChatView.form new file mode 100644 index 0000000..d7f23f5 --- /dev/null +++ b/src/chatGUI/ChatView.form @@ -0,0 +1,69 @@ + + + diff --git a/src/chatGUI/ChatView.java b/src/chatGUI/ChatView.java new file mode 100644 index 0000000..0f3fe07 --- /dev/null +++ b/src/chatGUI/ChatView.java @@ -0,0 +1,121 @@ + +package chatGUI; + +import java.awt.event.ActionListener; + + +public class ChatView extends javax.swing.JFrame { + + /** + * Creates new form ChatView + */ + public ChatView() { + initComponents(); + } + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + //