diff --git a/src/ChatProgramm/controller/commands/CommandSend.java b/src/ChatProgramm/controller/commands/CommandSend.java index b1ad78d..38c4627 100644 --- a/src/ChatProgramm/controller/commands/CommandSend.java +++ b/src/ChatProgramm/controller/commands/CommandSend.java @@ -42,7 +42,7 @@ public class CommandSend implements CommandInterface public void execute() { if(transmitterInterface != null && !eingabeFeld.getText().isEmpty()){ - transmitterInterface.send(new Nachricht("Du: " + eingabeFeld.getText())); + transmitterInterface.send(eingabeFeld.getText()); eingabeFeld.setText(""); } } diff --git a/src/ChatProgramm/model/ReceiveAdapter.java b/src/ChatProgramm/model/ReceiveAdapter.java index c1b2617..20dd7de 100644 --- a/src/ChatProgramm/model/ReceiveAdapter.java +++ b/src/ChatProgramm/model/ReceiveAdapter.java @@ -30,7 +30,7 @@ public class ReceiveAdapter implements Subscriber { @Override public void onNext(Nachricht item) { - view.getTxtChat().append("\n" + item.getNachricht()); + view.getTxtChat().append(item.getNachricht()); this.subscription.request(1); } diff --git a/src/ChatProgramm/model/Transmitter.java b/src/ChatProgramm/model/Transmitter.java index 92ccad9..62d5191 100644 --- a/src/ChatProgramm/model/Transmitter.java +++ b/src/ChatProgramm/model/Transmitter.java @@ -38,6 +38,7 @@ public abstract class Transmitter implements Runnable, Subscriber, Trans protected PrintWriter writer; private Nachricht nachricht; + private String txtNachricht; private boolean laufend; private SubmissionPublisher textPublisher; private ExecutorService eService; @@ -53,6 +54,7 @@ public abstract class Transmitter implements Runnable, Subscriber, Trans textPublisher = new SubmissionPublisher<>(); this.view = view; addWertSubscription(receiveAdapter); + nachricht = new Nachricht(""); } public void addWertSubscription(Subscriber subscriber) @@ -84,20 +86,20 @@ public abstract class Transmitter implements Runnable, Subscriber, Trans } } - public void send(Nachricht nachricht){ - - writer.println(nachricht.getNachricht()); + public void send(String txtNachricht){ + + writer.println(txtNachricht); writer.flush(); lg.info("Nachricht gesendet"); + nachricht.setNachricht("\nDu: " + txtNachricht); textPublisher.submit(nachricht); } public Nachricht receive(){ - Nachricht nachricht = new Nachricht(""); try { - String txtNachricht = reader.readLine(); + txtNachricht = reader.readLine(); if(!txtNachricht.isEmpty()){ lg.info("Nachricht erhalten"); - nachricht.setNachricht("Er / Sie: " + txtNachricht); + nachricht.setNachricht("\nEr / Sie: " + txtNachricht); return nachricht; } @@ -118,9 +120,9 @@ public abstract class Transmitter implements Runnable, Subscriber, Trans while (true) { lg.info("Warte auf Nachricht"); if(laufend) { - Nachricht eingehendeNachricht = receive(); - if(!eingehendeNachricht.getNachricht().isEmpty()){ - textPublisher.submit(eingehendeNachricht); + nachricht = receive(); + if(!nachricht.getNachricht().isEmpty()){ + textPublisher.submit(nachricht); } } else{ diff --git a/src/ChatProgramm/model/TransmitterInterface.java b/src/ChatProgramm/model/TransmitterInterface.java index d8ecfe5..2cacc1b 100644 --- a/src/ChatProgramm/model/TransmitterInterface.java +++ b/src/ChatProgramm/model/TransmitterInterface.java @@ -11,7 +11,7 @@ import ChatProgramm.model.Nachricht; */ public interface TransmitterInterface { - public void send(Nachricht nachricht); + public void send(String txtNachricht); public Nachricht receive(); }