Commit Graph

74 Commits

Author SHA1 Message Date
579f52ed04 GameBoard: move 2023-11-20 15:51:54 +01:00
b6146eed6b NewGame: game board configuration
- GameBoard interactivity
2023-11-17 20:37:33 +01:00
671e13a41d Game Draw: req/acq/rej 2023-11-16 11:49:12 +01:00
576556afe7 Game: surrender 2023-11-16 09:17:07 +01:00
cacc8c99d8 GameProposal: Accept 2023-11-15 21:19:49 +01:00
60d6af94e1 GameProposal: Reject 2023-11-15 19:44:42 +01:00
3063146a76 GameProposal: Cancel
- doPushing
 * JSON content type detection
 * unexpeted responce status: show warning instead of throwing exeption
- useGamesApi: if already pushing - do not push another one
wobling for Cancel button
- middleware: GameProposal controller: handle Cancel requests
2023-11-15 13:27:52 +01:00
f5b09e2123 Rankin JSON update (#31)
Reviewed-on: http://192.168.8.55:3000/HQLAx/CordaCheckers/pulls/31
2023-11-10 20:58:32 +01:00
aa2a250085 Games container sceleton
- use Route for conditional rendering
- useGamesAPI
- Checkers component
2023-11-08 18:22:05 +01:00
3d9dbd2683 GameCreate request
- use HTTP POST request
- diable CSRF on server
2023-10-29 21:45:48 +01:00
6c46188d38 front: isCurrentUser() 2023-10-26 12:26:00 +02:00
b3d7ab3e75 springboot: rename GameState to GameView
- update tests to use myColor instead of opponentColor
2023-10-14 19:03:46 +02:00
72daeddb9d front: gamestate polling + gameproposal tab
- gamestate controller
- css for gameproposal tab
2023-10-14 10:01:20 +02:00
992a1f3a23 front: leaderboard 2023-10-11 10:36:29 +02:00
5168e38710 DRAW: request, accept, reject
- tests for draw
- ranking updates, to suuport draw results
- replaca GameCommand.getCounterparty() with
  GameState.getOpponent(myName)
  makes code much readable and maintainable
- uuid check in a contract
- better exception handling in corda flows
2023-10-04 10:51:36 +02:00
5589c8ebe6 tests for gameStateList() and gameStateGet() 2023-10-03 10:01:58 +02:00
7fe2898eef Ranking: use Map instead of List 2023-10-02 19:27:12 +02:00
f9f6920512 Intial board config for GameProposalCreate
- victory tests without hardcode
- better server logs
- unmodifiable getters for game board
- totalMoves counter for GameResult
2023-10-02 13:54:38 +02:00
07ce05bf01 Rename Bob to Bobik
- rename Repository vNode
- cluster topology: better vnodes lookup
2023-10-02 11:23:16 +02:00
d58a89e3b3 Lazy victoryTest
- cordaClient maxPollAttempts config
- bugfix in Move.canMove()
- GameBoardContract must validate victory conndition as well
2023-10-01 15:58:05 +02:00
e3ca1e0fc0 GameBoard VicrotyFlow
- better error messages
- moar GameMove tests
- a vicotry condition check
- GameContract
  + participnats vaidation
  + more accure Major Action checks
- automaic Vicotry condition check for Move flow
- GameResultCommiter as a sub flow
2023-10-01 14:13:52 +02:00
eb1e7fd93c GameInfo
a simple source of truth about UtxoGameState transaction for
- ViewBuilder
- CommitSubFlowResponder
2023-09-30 20:09:25 +02:00
729384fb62 chain jump 2023-09-29 19:07:54 +02:00
8affa353da move: mandatory capture 2023-09-29 13:59:34 +02:00
7d26dca752 add prohibited move checks 2023-09-29 11:29:46 +02:00
58da85a5fd final 2023-09-27 17:28:54 +02:00
162e5c97dc rename 2023-09-27 17:27:03 +02:00
a9ffd4b0b9 Checkers move rules improved 2023-09-27 17:25:30 +02:00
9cbeaceca9 Checkers move rules 2023-09-27 17:02:31 +02:00
9144683de3 rename Piece to Stone 2023-09-27 11:35:49 +02:00
1f2ff242e4 GameBoard: naive MOVE implementation 2023-09-25 15:13:27 +02:00
8971462c74 GameResultBuilder subflow
- looks for custodian and add it to the State participants
- extra parameter to Commit subflow
 to initiate exchange session with Custodian as well
2023-09-22 21:39:42 +02:00
5f59260120 ammend 2023-09-22 16:07:54 +02:00
fe1708ad32 Draft: RankingFlow +Test 2023-09-22 16:07:44 +02:00
74176ecf45 HoldingIdentityResolver Test 2023-09-22 14:55:53 +02:00
ada353ce2f HoldingIdentity Tests 2023-09-22 14:45:37 +02:00
959ea0051d Major refactoring
- abstract GameState as a base class for
  + GameProposale
  + GameBoard
  + GameResult

- GameView persepective approach
  as result significant downplay of DTO classes

- single GameCommand
- single transaction Commit flow with dedicated responder
- extensive use of orchestartion code flow pattern
2023-09-21 16:21:58 +02:00
bd6612f3e6 GameUuid as a part of GameState interface 2023-09-18 11:34:12 +02:00
e26cfe0d91 GameID
a universal ID shared between GameProposal, GameBoard and a GameResult
2023-09-18 10:49:06 +02:00
a34ea39dfb GameBoard command SURRENDER
- produces GameResultState
- .addReferanceState() was changed with Opponent interface for States
2023-09-15 15:43:31 +02:00
a836d14fbd GamePrposal: Accept to return GameBoard 2023-09-13 18:54:19 +02:00
4c2569810a GameBoard SURRENDER update
- UtxoLedgerTrxUtil with option
- rename action to command
- lots of minor refectorings
2023-09-13 15:01:01 +02:00
fee93a2b10 Corda: UtxoLedgerTransactionUtil helper class 2023-09-12 18:56:07 +02:00
fdfcd711a7 rename GameBoardActionFlow to GameBoardCommandFlow 2023-09-12 16:24:18 +02:00
01fd273c3a Move Contracts to individual classes
initial implementation for GameBoardMove
2023-09-12 14:07:59 +02:00
7f7722ecc0 GameProposal ACCEPT
- create new GameBoard state
- test
2023-09-11 13:50:05 +02:00
e235ecb942 Corda: CommitSubFlow 2023-09-07 21:33:37 +02:00
159bcd706e GameProposal updates
- remove GameProposalResolution state
use ladger trx history instead

- use issuer/acquier instead of sennder/receiver
2023-09-07 14:47:53 +02:00
5cc579230f SpringBoot: test GP can not be rejected twice 2023-09-07 14:00:27 +02:00
a9b70b963c CordaClient: use FlowResult 2023-09-06 12:39:52 +02:00