add missing controller package
This commit is contained in:
parent
bbec150a35
commit
45e094d635
81
src/netz/controller/CommandConnect.java
Normal file
81
src/netz/controller/CommandConnect.java
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package netz.controller;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.ServerSocket;
|
||||||
|
import java.net.Socket;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
import ohmlogger.OhmLogger;
|
||||||
|
import netz.model.ChatModel;
|
||||||
|
import netz.view.ChatView;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author hd, chris
|
||||||
|
*/
|
||||||
|
public class CommandConnect implements ActionListener
|
||||||
|
{
|
||||||
|
|
||||||
|
private static Logger lg = OhmLogger.getLogger();
|
||||||
|
ChatView view;
|
||||||
|
ChatModel model;
|
||||||
|
|
||||||
|
private static final int PORT = 35000;
|
||||||
|
private static final String IP_ADRESSE = "127.0.0.1";
|
||||||
|
|
||||||
|
|
||||||
|
public CommandConnect(ChatView view, ChatModel transmitter)
|
||||||
|
{
|
||||||
|
this.view = view;
|
||||||
|
this.model = transmitter;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void registerEvents(){
|
||||||
|
view.getBtnSetServer().addActionListener(this);
|
||||||
|
view.getBtnSetClient().addActionListener(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
Object src = e.getSource();
|
||||||
|
|
||||||
|
// connect to server
|
||||||
|
if(src == view.getBtnSetServer()){
|
||||||
|
synchronized (this){
|
||||||
|
try {
|
||||||
|
view.getLblType().setText("Server");
|
||||||
|
ServerSocket sSocket = new ServerSocket(PORT);
|
||||||
|
lg.info("Server: Warte auf Verbindung ...");
|
||||||
|
Socket s = sSocket.accept(); // Achtung: blockiert!
|
||||||
|
lg.info("Server: Verbindung akzeptiert");
|
||||||
|
model.setSocket(s);
|
||||||
|
} catch (IOException ex) {
|
||||||
|
lg.severe(ex.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// connect to vlient
|
||||||
|
if(src == view.getBtnSetClient()){
|
||||||
|
synchronized (this){
|
||||||
|
try {
|
||||||
|
view.getLblType().setText("Client");
|
||||||
|
lg.info("Client: verbinde ...");
|
||||||
|
Socket s = new Socket(IP_ADRESSE, PORT); // Achtung: blockiert!
|
||||||
|
lg.info("Client: Verbindung hergestellt");
|
||||||
|
model.setSocket(s);
|
||||||
|
} catch (IOException ex) {
|
||||||
|
lg.severe(ex.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
52
src/netz/controller/CommandSend.java
Normal file
52
src/netz/controller/CommandSend.java
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package netz.controller;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
import ohmlogger.OhmLogger;
|
||||||
|
import netz.model.ChatModel;
|
||||||
|
import netz.view.ChatView;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author hd, christ
|
||||||
|
*/
|
||||||
|
public class CommandSend implements ActionListener
|
||||||
|
{
|
||||||
|
private static Logger lg = OhmLogger.getLogger();
|
||||||
|
ChatView view;
|
||||||
|
ChatModel model;
|
||||||
|
|
||||||
|
public CommandSend(ChatView view, ChatModel model)
|
||||||
|
{
|
||||||
|
this.view = view;
|
||||||
|
this.model = model;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void registerEvents(){
|
||||||
|
view.getBtnSend().addActionListener(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e)
|
||||||
|
{
|
||||||
|
Object src = e.getSource();
|
||||||
|
|
||||||
|
if(src == view.getBtnSend()){
|
||||||
|
String msg = view.getTxtField().getText();
|
||||||
|
if(msg != ""){
|
||||||
|
model.sendMessage(msg);
|
||||||
|
view.getLblStatusDialog().setText("Nachricht gesendet");
|
||||||
|
view.getjTextArea().append("Ich: " + msg +"\n");
|
||||||
|
}
|
||||||
|
view.getTxtField().setText("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
63
src/netz/controller/ReceiveAdapter.java
Normal file
63
src/netz/controller/ReceiveAdapter.java
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package netz.controller;
|
||||||
|
|
||||||
|
import java.util.concurrent.Flow;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
import ohmlogger.OhmLogger;
|
||||||
|
import netz.model.ChatModel;
|
||||||
|
import netz.view.ChatView;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author hd, chris
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class ReceiveAdapter implements Flow.Subscriber<String>
|
||||||
|
{
|
||||||
|
private static Logger lg = OhmLogger.getLogger();
|
||||||
|
|
||||||
|
private ChatView view;
|
||||||
|
private ChatModel model;
|
||||||
|
private Flow.Subscription subscription;
|
||||||
|
|
||||||
|
public ReceiveAdapter(ChatView view, ChatModel model)
|
||||||
|
{
|
||||||
|
this.view = view;
|
||||||
|
this.model = model;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void subscribe()
|
||||||
|
{
|
||||||
|
model.addSubscription(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSubscribe(Flow.Subscription subscription)
|
||||||
|
{
|
||||||
|
this.subscription = subscription;
|
||||||
|
subscription.request(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNext(String item)
|
||||||
|
{
|
||||||
|
view.getLblStatusDialog().setText("Nachricht empfangen");
|
||||||
|
view.getjTextArea().append("Partner: " + item + "\n");
|
||||||
|
//System.out.println(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Throwable throwable)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onComplete()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user