CHINESE CHECKERS


Classes


1) GameController
2) GameControllerInterface
3) Game
4) GameInterface
5) MainBoard
6) MainBoardFrame
7) MainBoardInterface
8) GameBoard
9) GameBoardFrame
10) DataBaseInterface
11) LoginScreen
12) LoginInfo
13) Registration
14) RegistrationFrame
15) RegistrationInfo
16) LoginHandler
17) ButtonPanel
18) ButtonsPanel
19) GameDetail
20) Table
21) PegId
22) PegDetails
23) PlayerDetails
24) PlayerDetailsManager
25) PegManager
26) SelectionDialogBox
27) GameCompletionDialog
28) FailureDialog
29) JoinInvitationDialog
30) InviteDialogBox
31) SaveResumeHandler
32) UpdateDialogBox


CRC CARDS


Class: GameController
Responsibilities: Collaborators:
Creates new object of Game class for each create game request.  
Process the invite request  
Process the join request GameDetail, Game
Process the watch request from user to watch any game. GameDetail, Game
Forwards the registration and login info of the user to DatabaseInterface class. DatabaseInterface
Forwards the save game and resume game requests. SaveResumeHandler
Process the request to change the user password DatabaseInterface
 
Class:GameControllerInterface
Responsibilities: Collaborators:
It gives the access to the methods in GameController class GameController
 
Class: Game
Responsibilities: Collaborators:
Process and accept the join request.  
Updates/Synchronises the GameBoard objects of the players involved in that game. MainBoard
Maintains the list of all the players in the game.  
 
Class: GameInterface
Responsibilities: Collaborators:
It gives the access to the methods of Game class to MainBoard class Game
 
Class: MainBoard
Responsibilities: Collaborators:
Displays the information of the current games being played. Table
Forwards join, create, invite, watch, update requests to GameController class. GameController, ButtonPanel
Process the request for creating new GameBoard object , from Game class. GameBoard
Forwards all the updates send by the Game object to GameBoard object and vice - versa. GameBoard, Game
 
Class:MainBoardFrame
Responsibilities: Collaborators:
It contains the MainBoard applet.  
 
Class:MainBoardInterface
Responsibilities: Collaborators:
It gives access to the methods of MainBoard class to Game and GameController classes  
 
Class: GameBoard
Responsibilities: Collaborators:
It creates the play board. PegManager
It informs any play action to the game class through mainboard class. MainBoard
It informs the game class about the game completion. MainBoard
It informs the game class, when some player quits or exit the game. MainBoard
It forwards the pause request to save the game. MainBoard
It disables the play functionality of the game for watch request.  
It keeps track of the time for each turn of the player.  
 
Class: GameBoardFrame
Responsibilities: Collaborators:
It contains the GameBoard applet.  
 
Class: DatabaseInterface
Responsibilities: Collaborators:
It registers the user.  
It checks the authenticity of login information provided by user.  
It updates the database when the user wants to change the loginID or password.  
 
Class: LoginScreen
Responsibilities: Collaborators:
Displays the login screen & accepts userid/password and forwards it. LoginHandler
Invokes the Registration Applet. Registration,RegistrationFrame
 
Class: LoginInfo
Responsibilities: Collaborators:
It takes the login data and changes into LoginInfo Object which can be send to the server.  
 
Class: Registration
Responsibilities: Collaborators:
It displays the form which user has to fill out for registration and accepts & forwards it. LoginHandler
 
Class: RegistrationFrame
Responsibilities: Collaborators:
It contains the Registration applet.  
 
Class: RegistrationInfo
Responsibilities: Collaborators:
It takes the Registration data and changes to RegistrationInfo object which is tranferred to server  
 
Class: LoginHandler
Responsibilities: Collaborators:
It takes the loginInfo or registrationInfo Objects and forwards it to server for process. GameController
It displays MainBoard when it receives the positive return code. MainBoard
 
Class: ButtonPanel
Responsibilities: Collaborators:
It creates the Panel containing buttons which is used by MainBoard class.  
It handles the following buttons:- Create, Resume, Invite, Update, Logoff  
 
Class: ButtonsPanel
Responsibilities: Collaborators:
It creates the Panel containing buttons which is used by GameBoard class.  
It handles the following buttons:- Start,Save,Exit.  
 
Class: GameDetail
Responsibilities: Collaborators:
It contains all the information about the every game which is created.  
 
Class: Table
Responsibilities: Collaborators:
It forwards the join and watch request of the user. MainBoard
It displays the detail of all the games in the form of table in the MainBoard applet. MainBoard
 
Class: PegId
Responsibilities: Collaborators:
It calculates the position of each peg on the GameBoard using the sequence numbers.  
 
Class: PegManager
Responsibilities: Collaborators:
It makes the Chinese Checkers Board on GameBoard and the required pegs PegDetails , PlayerDetailsManager , PlayerDetails
It process the click event. GameBoard, PlayerDetails
 
Class: PegDetails
Responsibilities: Collaborators:
It defines the owner and color of each peg. PegManager
It determines at which point click is made.  
 
Class: PlayerDetailsManager
Responsibilities: Collaborators:
It keeps the list of the PlayerDetails Object of each player playing the game  
 
Class: PlayerDetails
Responsibilities: Collaborators:
It keeps the information of Color, Owner, BaseCorner, DestinationCorner of each pegs.  
 
Class: SelectionDialogBox
Responsibilities: Collaborators:
It displays the choice box to select number of seats for creating new Game.  
 
Class: GameCompletionDialog
Responsibilities: Collaborators:
It informs that the game is complete.  
 
Class: FailureDialog
Responsibilities: Collaborators:
It informs about any Failure.Ex- incorrect password during login , unable to update password , etc.  
 
Class: JoinInvitationDialog
Responsibilities: Collaborators:
It informs the player about the invitation to join the game  
 
Class: InviteDialogBox
Responsibilities: Collaborators:
It displays the list of player who are available  
 

Class: SaveResumeHandler
Responsibilities: Collaborators:
It process the save and resume request of the Player to save and to start the saved game.  
 
Class: UpdateDialogBox
Responsibilities: Collaborators:
It displays the dialog box in which player can enter new passord .