[lobby-svn] SF.net SVN: lobby:[1051] trunk
Brought to you by:
yuranet
From: <yu...@us...> - 2025-04-26 16:01:30
|
Revision: 1051 http://sourceforge.net/p/lobby/code/1051 Author: yuranet Date: 2025-04-26 16:01:13 +0000 (Sat, 26 Apr 2025) Log Message: ----------- new turn based server part 1 Modified Paths: -------------- trunk/lib/Grasshopper.jar trunk/src/net/yura/lobby/client/Connection.java trunk/src_blackjack/net/yura/blackjack/client/BlackJackClient.java trunk/src_server/net/yura/lobby/database/GameTypeRoom.java trunk/src_server/net/yura/lobby/database/impl/MemoryDatabase.java trunk/src_server/net/yura/lobby/service/Alert.java Modified: trunk/lib/Grasshopper.jar =================================================================== (Binary files differ) Modified: trunk/src/net/yura/lobby/client/Connection.java =================================================================== --- trunk/src/net/yura/lobby/client/Connection.java 2025-04-26 15:49:11 UTC (rev 1050) +++ trunk/src/net/yura/lobby/client/Connection.java 2025-04-26 16:01:13 UTC (rev 1051) @@ -60,7 +60,7 @@ void leaveGame(int game_id); void playGame(int gameId); - void sendGameMessage(int game_id,Object message); + void sendGameMessage(int game_id, Object message); void closeGame(int game_id); void delGame(int gameId); Modified: trunk/src_blackjack/net/yura/blackjack/client/BlackJackClient.java =================================================================== --- trunk/src_blackjack/net/yura/blackjack/client/BlackJackClient.java 2025-04-26 15:49:11 UTC (rev 1050) +++ trunk/src_blackjack/net/yura/blackjack/client/BlackJackClient.java 2025-04-26 16:01:13 UTC (rev 1051) @@ -193,7 +193,7 @@ gameframe.addWindowListener( new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { - closegame(); + closegameRequested(); } } ); @@ -213,9 +213,9 @@ } // this NEEDS to call leaveGame(); - public void closegame() { + public void closegameRequested() { gameframe.setVisible(false); - leaveGame(); + closeGame(); } public void gameString(String message) { Modified: trunk/src_server/net/yura/lobby/database/GameTypeRoom.java =================================================================== --- trunk/src_server/net/yura/lobby/database/GameTypeRoom.java 2025-04-26 15:49:11 UTC (rev 1050) +++ trunk/src_server/net/yura/lobby/database/GameTypeRoom.java 2025-04-26 16:01:13 UTC (rev 1051) @@ -82,7 +82,7 @@ return names==null||names.length==0?null:names[0]; } public void setServerJar(String serverJar) { - serverGameType.setJarNames( new String[]{serverJar} ); + serverGameType.setJarNames(serverJar == null ? new String[0] : new String[]{serverJar} ); } @Column(name="client_jar", nullable=false, length=45) @@ -91,7 +91,7 @@ return names==null||names.length==0?null:names[0]; } public void setClientJar(String clientJar) { - clientGameType.setJarNames( new String[]{clientJar} ); + clientGameType.setJarNames(clientJar == null ? new String[0] : new String[]{clientJar} ); } @Column(name="server_class", nullable=false, length=100) Modified: trunk/src_server/net/yura/lobby/database/impl/MemoryDatabase.java =================================================================== --- trunk/src_server/net/yura/lobby/database/impl/MemoryDatabase.java 2025-04-26 15:49:11 UTC (rev 1050) +++ trunk/src_server/net/yura/lobby/database/impl/MemoryDatabase.java 2025-04-26 16:01:13 UTC (rev 1051) @@ -22,6 +22,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; +import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicInteger; import net.yura.lobby.database.Database; @@ -35,27 +36,27 @@ private Map<String,User> registeredPeople; // <Username,User> final Map<String,User> clientUUIDtoInt; // <UUID,Client> private Map<Integer,GameTypeRoom> gameTypes; - private boolean transaction; + private Set<Thread> transactions = ConcurrentHashMap.newKeySet(); private AtomicInteger gameIdCounter = new AtomicInteger(); @Override public void startTransaction() { - if (transaction) { + if (transactions.contains(Thread.currentThread())) { throw new IllegalStateException("already in transaction"); } - transaction = true; + transactions.add(Thread.currentThread()); } @Override public boolean endTransaction() { - if (!transaction) { + if (!transactions.contains(Thread.currentThread())) { throw new IllegalStateException("not in transaction"); } - transaction = false; + transactions.remove(Thread.currentThread()); return true; } private void checkTransaction() { - if (!transaction) { + if (!transactions.contains(Thread.currentThread())) { throw new IllegalStateException("not in transaction"); } } @@ -113,8 +114,18 @@ "" )); - saveGameType(makeDominationGameType()); + saveGameType(makeDominationGameType()); // id:4 + saveGameType(makeNewGameType( + 5, + "Game of Go", + null, + "net.yura.lobby.client.SimpleTurnBasedClientGame", + null, + "net.yura.lobby.server.ClientLogicTurnBasedGame", + "" + )); + saveUser(makeNewUser("test-guest", Player.PLAYER_GUEST)); saveUser(makeNewUser("test-normal", Player.PLAYER_NORMAL)); saveUser(makeNewUser("test-subscriber", Player.PLAYER_SUBSCRIBER)); Modified: trunk/src_server/net/yura/lobby/service/Alert.java =================================================================== --- trunk/src_server/net/yura/lobby/service/Alert.java 2025-04-26 15:49:11 UTC (rev 1050) +++ trunk/src_server/net/yura/lobby/service/Alert.java 2025-04-26 16:01:13 UTC (rev 1051) @@ -6,7 +6,7 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; import java.util.logging.Level; -import net.yura.grasshopper.BugSubmitter; +import net.yura.grasshopper.submitter.BugSubmitter; import net.yura.lobby.database.Database; import net.yura.lobby.server.LobbyLogger; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |