return step for state_sig_proposal_await_participants_confirmations

This commit is contained in:
programmer10110 2020-08-20 18:18:31 +03:00
parent 950e7369b4
commit eca8329508
3 changed files with 15 additions and 6 deletions

View File

@ -7,6 +7,7 @@ import (
"github.com/depools/dc4bc/dkg"
"github.com/depools/dc4bc/fsm/fsm"
"github.com/depools/dc4bc/fsm/state_machines/dkg_proposal_fsm"
"github.com/depools/dc4bc/fsm/state_machines/signature_proposal_fsm"
"github.com/depools/dc4bc/fsm/types/requests"
"github.com/depools/dc4bc/qr"
"github.com/syndtr/goleveldb/leveldb"
@ -174,6 +175,8 @@ func (am *AirgappedMachine) HandleOperation(operation client.Operation) ([]clien
// handler gets a pointer to an operation, do necessary things
// and write a result (or an error) to .Result field of operation
switch fsm.State(operation.Type) {
case signature_proposal_fsm.StateAwaitParticipantsConfirmations:
err = am.handleStateAwaitParticipantsConfirmations(&operation)
case dkg_proposal_fsm.StateDkgCommitsAwaitConfirmations:
err = am.handleStateDkgCommitsAwaitConfirmations(&operation)
case dkg_proposal_fsm.StateDkgDealsAwaitConfirmations:

View File

@ -166,7 +166,9 @@ func (c *Client) ProcessMessage(message storage.Message) error {
operation = &types.Operation{
Type: types.OperationType(resp.State),
Payload: bz,
DKGIdentifier: message.DkgRoundID,
}
fmt.Println("DKG - ", message.DkgRoundID)
default:
log.Printf("State %s does not require an operation", resp.State)
}

View File

@ -115,9 +115,11 @@ func (s *LevelDBState) SaveFSM(dkgRoundID string, dump []byte) error {
}
var fsmInstances = map[string][]byte{}
if len(bz) > 0 {
if err := json.Unmarshal(bz, &fsmInstances); err != nil {
return fmt.Errorf("failed to unmarshal FSM instances: %w", err)
}
}
fsmInstances[dkgRoundID] = dump
@ -135,9 +137,11 @@ func (s *LevelDBState) LoadFSM(dkgRoundID string) (*state_machines.FSMInstance,
}
var fsmInstances = map[string][]byte{}
if len(bz) > 0 {
if err := json.Unmarshal(bz, &fsmInstances); err != nil {
return nil, false, fmt.Errorf("failed to unmarshal FSM instances: %w", err)
}
}
fsmInstanceBz, ok := fsmInstances[dkgRoundID]
if !ok {