github.com/0chain/gosdk@v1.17.11/zcnbridge/transaction/functions.go (about) 1 package transaction 2 3 // ZCNSC smart contract functions wrappers 4 5 import ( 6 "context" 7 8 "github.com/0chain/gosdk/zcncore" 9 ) 10 11 // AddAuthorizer adds authorizer to the bridge 12 // - ctx is the context of the request. 13 // - input is the payload of the request. 14 func AddAuthorizer(ctx context.Context, input *zcncore.AddAuthorizerPayload) (Transaction, error) { 15 t, err := NewTransactionEntity(0) 16 if err != nil { 17 return nil, err 18 } 19 20 scheme := t.GetScheme() 21 22 err = scheme.ZCNSCAddAuthorizer(input) 23 if err != nil { 24 return t, err 25 } 26 27 callBack := t.GetCallback() 28 29 err = callBack.WaitCompleteCall(ctx) 30 t.SetHash(scheme.Hash()) 31 if err != nil { 32 return t, err 33 } 34 35 return t, nil 36 } 37 38 // AuthorizerHealthCheck performs health check of the authorizer 39 // - ctx is the context of the request. 40 // - input is the payload of the request. 41 func AuthorizerHealthCheck(ctx context.Context, input *zcncore.AuthorizerHealthCheckPayload) (Transaction, error) { 42 t, err := NewTransactionEntity(0) 43 if err != nil { 44 return nil, err 45 } 46 47 scheme := t.GetScheme() 48 49 err = scheme.ZCNSCAuthorizerHealthCheck(input) 50 if err != nil { 51 return t, err 52 } 53 54 callBack := t.GetCallback() 55 56 err = callBack.WaitCompleteCall(ctx) 57 t.SetHash(scheme.Hash()) 58 if err != nil { 59 return t, err 60 } 61 62 return t, nil 63 }