diff options
author | Ida Massow <massow@informatik.uni-luebeck.de> | 2011-06-13 16:29:09 +0200 |
---|---|---|
committer | Ida Massow <massow@informatik.uni-luebeck.de> | 2011-06-13 16:29:09 +0200 |
commit | ce7d43e3654f7f33357c51e578378a7b996bd587 (patch) | |
tree | fbfa3c1941e257b3f80ad82df446170d662b9403 /src/jrummikub/control/network | |
parent | 6ac71b62e309ec04feb7ebda41dd795df678e1e4 (diff) | |
download | JRummikub-ce7d43e3654f7f33357c51e578378a7b996bd587.tar JRummikub-ce7d43e3654f7f33357c51e578378a7b996bd587.zip |
Viele viele Kommentare, einige zu lange oder zu komplexe Methoden gefixt
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@417 72836036-5685-4462-b002-a69064685172
Diffstat (limited to 'src/jrummikub/control/network')
-rw-r--r-- | src/jrummikub/control/network/NetworkControl.java | 115 | ||||
-rw-r--r-- | src/jrummikub/control/network/NetworkSettingsControl.java | 24 |
2 files changed, 95 insertions, 44 deletions
diff --git a/src/jrummikub/control/network/NetworkControl.java b/src/jrummikub/control/network/NetworkControl.java index ed2c8e6..8a1c8e4 100644 --- a/src/jrummikub/control/network/NetworkControl.java +++ b/src/jrummikub/control/network/NetworkControl.java @@ -17,6 +17,9 @@ import jrummikub.view.IGameListPanel; import jrummikub.view.IGameListPanel.GameData; import jrummikub.view.IView; +/** + * Class dealing with network connection, offering and choice of network games + */ public class NetworkControl { private ConnectionControl connectionControl; private IView view; @@ -27,17 +30,72 @@ public class NetworkControl { private Map<UUID, GameData> gameMap = new HashMap<UUID, GameData>(); + /** + * Creates a new network control + * + * @param loginData + * user's login data + * @param view + * for events and handlers + */ public NetworkControl(final LoginData loginData, final IView view) { this.view = view; connectionControl = new ConnectionControl(loginData); - connections.add(connectionControl.getConnectedEvent().add(new IListener() { - @Override - public void handle() { - view.getGameListPanel().setChannelName(loginData.getChannelName()); - view.showGameListPanel(true); - } - })); + addConnectionControlListeners(loginData, view); + + connections.add(view.getGameListPanel().getJoinEvent() + .add(new IListener1<IGameListPanel.GameData>() { + @Override + public void handle(GameData value) { + // TODO Auto-generated method stub + + } + })); + + connections.add(view.getGameListPanel().getOpenNewGameEvent() + .add(new IListener() { + @Override + public void handle() { + if (settingsControl == null) { + view.showGameListPanel(false); + + settingsControl = new NetworkSettingsControl( + connectionControl, view, new GameSettings()); + settingsControl.startSettings(); + } + } + })); + + connections.add(view.getGameListPanel().getCancelEvent() + .add(new IListener() { + @Override + public void handle() { + abort(); + stopNetworkEvent.emit(); + } + })); + } + + /** + * Adds the listeners for connection control events + * + * @param loginData + * player's login data + * @param view + * view for events + */ + public void addConnectionControlListeners(final LoginData loginData, + final IView view) { + connections.add(connectionControl.getConnectedEvent().add( + new IListener() { + @Override + public void handle() { + view.getGameListPanel().setChannelName( + loginData.getChannelName()); + view.showGameListPanel(true); + } + })); connections.add(connectionControl.getConnectionFailedEvent().add( new IListener() { @@ -76,44 +134,18 @@ public class NetworkControl { } } })); - - connections.add(view.getGameListPanel().getJoinEvent() - .add(new IListener1<IGameListPanel.GameData>() { - @Override - public void handle(GameData value) { - // TODO Auto-generated method stub - - } - })); - - connections.add(view.getGameListPanel().getOpenNewGameEvent() - .add(new IListener() { - @Override - public void handle() { - if (settingsControl == null) { - view.showGameListPanel(false); - - settingsControl = new NetworkSettingsControl(connectionControl, - view, new GameSettings()); - settingsControl.startSettings(); - } - } - })); - - connections.add(view.getGameListPanel().getCancelEvent() - .add(new IListener() { - @Override - public void handle() { - abort(); - stopNetworkEvent.emit(); - } - })); } + /** + * Starts a new network connection with the sepcified data + */ public void startNetwork() { connectionControl.connect(); } + /** + * Ends the network connection if canceled + */ public void abort() { for (Connection c : connections) { c.remove(); @@ -122,6 +154,11 @@ public class NetworkControl { view.showGameListPanel(false); } + /** + * Getter for stopNetworkEvent + * + * @return stopNetworkEvent + */ public IEvent getStopNetworkEvent() { return stopNetworkEvent; } diff --git a/src/jrummikub/control/network/NetworkSettingsControl.java b/src/jrummikub/control/network/NetworkSettingsControl.java index ff62d14..0c06df4 100644 --- a/src/jrummikub/control/network/NetworkSettingsControl.java +++ b/src/jrummikub/control/network/NetworkSettingsControl.java @@ -7,26 +7,40 @@ import jrummikub.model.GameSettings; import jrummikub.view.IGameListPanel.GameData; import jrummikub.view.IView; +/** + * Settings for network games, entered by host + */ public class NetworkSettingsControl extends SettingsControl { private GameData gameData = new GameData(UUID.randomUUID(), settings); private ConnectionControl connectionControl; - - public NetworkSettingsControl(ConnectionControl connectionControl, IView view, GameSettings settings) { + + /** + * Creates a new network settings control + * + * @param connectionControl + * for gameOffers + * @param view + * for events and handlers + * @param settings + * for playerNumber, color... + */ + public NetworkSettingsControl(ConnectionControl connectionControl, + IView view, GameSettings settings) { super(view, settings); this.connectionControl = connectionControl; } - + @Override public void startSettings() { super.startSettings(); } - + @Override protected void update() { super.update(); connectionControl.offerGame(gameData); } - + @Override public void abort() { super.abort(); |