@@ -11,6 +11,8 @@ import (
1111 errors2 "errors"
1212 "fmt"
1313 "reflect"
14+ "runtime/debug"
15+ "time"
1416
1517 "github.com/hyperledger-labs/fabric-smart-client/platform/common/utils/collections"
1618 view2 "github.com/hyperledger-labs/fabric-smart-client/platform/view"
@@ -21,7 +23,6 @@ import (
2123 "github.com/hyperledger-labs/fabric-token-sdk/token/services/identity/multisig"
2224 "github.com/hyperledger-labs/fabric-token-sdk/token/services/network"
2325 "github.com/hyperledger-labs/fabric-token-sdk/token/services/tokens"
24- session2 "github.com/hyperledger-labs/fabric-token-sdk/token/services/utils/json/session"
2526 "github.com/pkg/errors"
2627 "go.opentelemetry.io/otel/trace"
2728 "go.uber.org/zap/zapcore"
@@ -347,15 +348,12 @@ func (c *CollectEndorsementsView) signRemote(context view.Context, party view.Id
347348 if err != nil {
348349 return nil , errors .Wrap (err , "failed sending transaction content" )
349350 }
350- if context == nil {
351- return nil , errors .New ("Failed to read context. context is empty" )
352- //WithMessage("failed to read audit event")
353- }
354- jsonSession := session2 .JSON (context )
355- sigma , err := jsonSession .ReceiveRaw ()
351+
352+ sigma , err := ReadMessage (session , time .Minute )
356353 if err != nil {
357354 return nil , errors .Wrap (err , "failed reading message" )
358355 }
356+
359357 verifier , err := verifierGetter (party )
360358 if err != nil {
361359 return nil , errors .Wrapf (err , "failed getting verifier for [%s]" , party )
@@ -556,14 +554,7 @@ func (c *CollectEndorsementsView) distributeEvnToParty(context view.Context, ent
556554 }
557555
558556 span .AddEvent ("Wait for ack" )
559- //sigma, err := ReadMessage(session, 1*time.Minute)
560- if context == nil {
561- return errors .New ("Failed to read context. context is empty" )
562- //WithMessage("failed to read audit event")
563- }
564- jsonsession := session2 .JSON (context )
565- sigma , err := jsonsession .ReceiveRaw ()
566- //sigma, err := ReadMessage(session, time.Minute*4)
557+ sigma , err := ReadMessage (session , 1 * time .Minute )
567558 if err != nil {
568559 return errors .Wrapf (err , "failed reading message on session [%s]" , session .Info ().ID )
569560 }
@@ -745,12 +736,8 @@ func (f *ReceiveTransactionView) Call(context view.Context) (interface{}, error)
745736 span := trace .SpanFromContext (context .Context ())
746737 span .AddEvent ("start_receive_transaction_view" )
747738 defer span .AddEvent ("end_receive_transaction_view" )
748- if context == nil {
749- return nil , errors .New ("Failed to read context. context is empty" )
750- //WithMessage("failed to read audit event")
751- }
752- jsonsession := session2 .JSON (context )
753- msg , err := jsonsession .ReceiveRaw ()
739+
740+ msg , err := ReadMessage (context .Session (), time .Minute * 4 )
754741 if err != nil {
755742 span .RecordError (err )
756743 }
@@ -761,6 +748,7 @@ func (f *ReceiveTransactionView) Call(context view.Context) (interface{}, error)
761748 }
762749 if len (msg ) == 0 {
763750 info := context .Session ().Info ()
751+ logger .Errorf ("received empty message, session closed [%s:%v]: [%s]" , info .ID , info .Closed , string (debug .Stack ()))
764752 return nil , errors .Errorf ("received empty message, session closed [%s:%v]" , info .ID , info .Closed )
765753 }
766754 tx , err := NewTransactionFromBytes (context , msg )
@@ -853,29 +841,20 @@ func (s *EndorseView) Call(context view.Context) (interface{}, error) {
853841 if err := kvss .(* kvs.KVS ).Get (k , & srRaw ); err != nil {
854842 return nil , errors .Wrap (err , "failed to to store signature request" )
855843 }
856- err = Unmarshal (srRaw , signatureRequest )
857- if err != nil {
858- return nil , errors .Wrap (err , "failed unmarshalling signature request" )
859- }
860844 } else {
861845 if logger .IsEnabledFor (zapcore .DebugLevel ) {
862846 logger .Debugf ("Receiving signature request..." )
863847 }
864- if context == nil {
865- return nil , errors .New ("Failed to read context. context is empty" )
866- //WithMessage("failed to read audit event")
867- }
868- jsonsession := session2 .JSON (context )
869- err := jsonsession .Receive (signatureRequest )
848+ srRaw , err = ReadMessage (session , time .Minute )
870849 if err != nil {
871850 return nil , errors .Wrap (err , "failed reading signature request" )
872851 }
873852 }
874853 // TODO: check what is signed...
875- // err = Unmarshal(srRaw, signatureRequest)
876- // if err != nil {
877- // return nil, errors.Wrap(err, "failed unmarshalling signature request")
878- // }
854+ err = Unmarshal (srRaw , signatureRequest )
855+ if err != nil {
856+ return nil , errors .Wrap (err , "failed unmarshalling signature request" )
857+ }
879858
880859 sigService := s .tx .TokenService ().SigService ()
881860 if ! sigService .IsMe (signatureRequest .Signer ) {
0 commit comments