diff --git a/api/client/GetMultisigInfo/client.go b/api/client/GetMultisigInfo/client.go new file mode 100644 index 000000000..35fba7d1d --- /dev/null +++ b/api/client/GetMultisigInfo/client.go @@ -0,0 +1,54 @@ +package main + +import ( + "context" + "fmt" + "log" + + "github.com/sirupsen/logrus" + + "github.com/spf13/viper" + rpc_model "github.com/zoobc/zoobc-core/common/model" + rpc_service "github.com/zoobc/zoobc-core/common/service" + "github.com/zoobc/zoobc-core/common/util" + "google.golang.org/grpc" +) + +func main() { + var apiRPCPort int + if err := util.LoadConfig("../../../resource", "config", "toml"); err != nil { + logrus.Fatal(err) + } else { + apiRPCPort = viper.GetInt("apiRPCPort") + if apiRPCPort == 0 { + apiRPCPort = 8080 + } + } + + conn, err := grpc.Dial(fmt.Sprintf(":%d", apiRPCPort), grpc.WithInsecure()) + if err != nil { + log.Fatalf("did not connect: %s", err) + } + defer conn.Close() + + c := rpc_service.NewMultisigServiceClient(conn) + + response, err := c.GetMultisignatureInfo(context.Background(), + &rpc_model.GetMultisignatureInfoRequest{ + MultisigAddress: "", + Pagination: &rpc_model.Pagination{ + OrderField: "block_height", + OrderBy: rpc_model.OrderBy_DESC, + Page: 1, + Limit: 2, + }, + }, + ) + + if err != nil { + log.Fatalf("error calling remote.GetMultisigInfo: %s", err) + } + + log.Printf("response from remote.GetMultisigInfo(): %v", response) + +} diff --git a/api/client/GetPendingTransactionByAddress/client.go b/api/client/GetPendingTransactions/client.go similarity index 90% rename from api/client/GetPendingTransactionByAddress/client.go rename to api/client/GetPendingTransactions/client.go index b960ea7cb..d5a25c5b3 100644 --- a/api/client/GetPendingTransactionByAddress/client.go +++ b/api/client/GetPendingTransactions/client.go @@ -33,8 +33,8 @@ func main() { c := rpc_service.NewMultisigServiceClient(conn) - response, err := c.GetPendingTransactionByAddress(context.Background(), - &rpc_model.GetPendingTransactionByAddressRequest{ + response, err := c.GetPendingTransactions(context.Background(), + &rpc_model.GetPendingTransactionsRequest{ SenderAddress: "E6u7lDnLgyiPuklLd6rXNQJI3_kGA1Q7e1BEXdJVB1hy", Status: rpc_model.PendingTransactionStatus_PendingTransactionPending, Pagination: &rpc_model.Pagination{ diff --git a/api/handler/multisigHandler.go b/api/handler/multisigHandler.go index 68bb08d56..560bc97ed 100644 --- a/api/handler/multisigHandler.go +++ b/api/handler/multisigHandler.go @@ -17,13 +17,10 @@ type ( } ) -func (msh *MultisigHandler) GetPendingTransactionByAddress( +func (msh *MultisigHandler) GetPendingTransactions( ctx context.Context, - req *model.GetPendingTransactionByAddressRequest, -) (*model.GetPendingTransactionByAddressResponse, error) { - if req.GetSenderAddress() == "" { - return nil, status.Error(codes.InvalidArgument, "SenderAddressNotProvided") - } + req *model.GetPendingTransactionsRequest, +) (*model.GetPendingTransactionsResponse, error) { if req.GetPagination().GetPage() < 1 { return nil, status.Error(codes.InvalidArgument, "PageCannotBeLessThanOne") } @@ -31,7 +28,7 @@ func (msh *MultisigHandler) GetPendingTransactionByAddress( req.Pagination.OrderField = "block_height" req.Pagination.OrderBy = model.OrderBy_DESC } - result, err := msh.MultisigService.GetPendingTransactionByAddress(req) + result, err := msh.MultisigService.GetPendingTransactions(req) return result, err } @@ -42,3 +39,21 @@ func (msh *MultisigHandler) GetPendingTransactionDetailByTransactionHash( result, err := msh.MultisigService.GetPendingTransactionDetailByTransactionHash(req) return result, err } + +func (msh *MultisigHandler) GetMultisignatureInfo( + ctx context.Context, + req *model.GetMultisignatureInfoRequest, +) (*model.GetMultisignatureInfoResponse, error) { + if req.GetPagination().GetPage() < 1 { + return nil, status.Error(codes.InvalidArgument, "PageCannotBeLessThanOne") + } + if req.GetPagination().GetOrderField() == "" { + req.Pagination.OrderField = "block_height" + req.Pagination.OrderBy = model.OrderBy_DESC + } + if req.GetPagination().GetPage() > 30 { + return nil, status.Error(codes.InvalidArgument, "LimitCannotBeMoreThan30") + } + result, err := msh.MultisigService.GetMultisignatureInfo(req) + return result, err +} diff --git a/api/service/multisigService.go b/api/service/multisigService.go index fb9a2cffb..b38e78ca5 100644 --- a/api/service/multisigService.go +++ b/api/service/multisigService.go @@ -17,12 +17,15 @@ import ( type ( MultisigServiceInterface interface { - GetPendingTransactionByAddress( - param *model.GetPendingTransactionByAddressRequest, - ) (*model.GetPendingTransactionByAddressResponse, error) + GetPendingTransactions( + param *model.GetPendingTransactionsRequest, + ) (*model.GetPendingTransactionsResponse, error) GetPendingTransactionDetailByTransactionHash( param *model.GetPendingTransactionDetailByTransactionHashRequest, ) (*model.GetPendingTransactionDetailByTransactionHashResponse, error) + GetMultisignatureInfo( + param *model.GetMultisignatureInfoRequest, + ) (*model.GetMultisignatureInfoResponse, error) } MultisigService struct { @@ -51,9 +54,9 @@ func NewMultisigService( } } -func (ms *MultisigService) GetPendingTransactionByAddress( - param *model.GetPendingTransactionByAddressRequest, -) (*model.GetPendingTransactionByAddressResponse, error) { +func (ms *MultisigService) GetPendingTransactions( + param *model.GetPendingTransactionsRequest, +) (*model.GetPendingTransactionsResponse, error) { var ( totalRecords uint32 result []*model.PendingTransaction @@ -64,7 +67,9 @@ func (ms *MultisigService) GetPendingTransactionByAddress( args []interface{} ) caseQuery.Select(musigQuery.TableName, musigQuery.Fields...) - caseQuery.Where(caseQuery.Equal("sender_address", param.GetSenderAddress())) + if param.GetSenderAddress() != "" { + caseQuery.Where(caseQuery.Equal("sender_address", param.GetSenderAddress())) + } caseQuery.Where(caseQuery.Equal("status", param.GetStatus())) caseQuery.Where(caseQuery.Equal("latest", true)) @@ -97,7 +102,7 @@ func (ms *MultisigService) GetPendingTransactionByAddress( if err != nil { return nil, err } - return &model.GetPendingTransactionByAddressResponse{ + return &model.GetPendingTransactionsResponse{ Count: totalRecords, Page: param.GetPagination().GetPage(), PendingTransactions: result, @@ -189,3 +194,56 @@ func (ms *MultisigService) GetPendingTransactionDetailByTransactionHash( MultiSignatureInfo: multisigInfo, }, nil } + +func (ms *MultisigService) GetMultisignatureInfo( + param *model.GetMultisignatureInfoRequest, +) (*model.GetMultisignatureInfoResponse, error) { + var ( + result []*model.MultiSignatureInfo + caseQuery = query.NewCaseQuery() + multisigInfoQuery = query.NewMultisignatureInfoQuery() + selectQuery string + args []interface{} + totalRecords uint32 + err error + ) + caseQuery.Select(multisigInfoQuery.TableName, multisigInfoQuery.Fields...) + if param.GetMultisigAddress() != "" { + caseQuery.Where(caseQuery.Equal("multisig_address", param.GetMultisigAddress())) + } + caseQuery.Where(caseQuery.Equal("latest", true)) + selectQuery, args = caseQuery.Build() + + countQuery := query.GetTotalRecordOfSelect(selectQuery) + + countRow, _ := ms.Executor.ExecuteSelectRow(countQuery, false, args...) + err = countRow.Scan( + &totalRecords, + ) + if err != nil { + if err == sql.ErrNoRows { + return nil, status.Error(codes.NotFound, "FailToGetTotalItemInMultisigInfo") + } + return nil, status.Error(codes.Internal, err.Error()) + } + caseQuery.OrderBy(param.GetPagination().GetOrderField(), param.GetPagination().GetOrderBy()) + caseQuery.Paginate( + param.GetPagination().GetLimit(), + param.GetPagination().GetPage(), + ) + selectQuery, args = caseQuery.Build() + multisigInfoRows, err := ms.Executor.ExecuteSelect(selectQuery, false, args...) + if err != nil { + return nil, status.Error(codes.Internal, err.Error()) + } + defer multisigInfoRows.Close() + result, err = ms.MultisignatureInfoQuery.BuildModel(result, multisigInfoRows) + if err != nil { + return nil, err + } + return &model.GetMultisignatureInfoResponse{ + Count: totalRecords, + Page: param.GetPagination().GetPage(), + MultisignatureInfo: result, + }, err +} diff --git a/api/service/multisigService_test.go b/api/service/multisigService_test.go index 64c0ae7b6..2088da989 100644 --- a/api/service/multisigService_test.go +++ b/api/service/multisigService_test.go @@ -17,7 +17,7 @@ import ( var ( // mock GetPendingTransactionByAddress - mockGetPendingTransactionByAddressExecutorCountFailParam = &model.GetPendingTransactionByAddressRequest{ + mockGetPendingTransactionsExecutorCountFailParam = &model.GetPendingTransactionsRequest{ SenderAddress: "abc", Status: model.PendingTransactionStatus_PendingTransactionPending, Pagination: &model.Pagination{ @@ -32,25 +32,25 @@ var ( type ( // mock GetPendingTransactionByAddress - mockGetPendingTransactionByAddressExecutorCountFail struct { + mockGetPendingTransactionsExecutorCountFail struct { query.Executor } - mockGetPendingTransactionByAddressExecutorGetPendingTxsFail struct { + mockGetPendingTransactionsExecutorGetPendingTxsFail struct { query.Executor } - mockGetPendingTransactionByAddressExecutorGetPendingTxsSuccess struct { + mockGetPendingTransactionsExecutorGetPendingTxsSuccess struct { query.Executor } - mockGetPendingTransactionByAddressPendingTxQueryBuildFail struct { + mockGetPendingTransactionsPendingTxQueryBuildFail struct { query.PendingTransactionQuery } - mockGetPendingTransactionByAddressPendingTxQueryBuildSuccess struct { + mockGetPendingTransactionsPendingTxQueryBuildSuccess struct { query.PendingTransactionQuery } // mock GetPendingTransactionByAddress ) -func (*mockGetPendingTransactionByAddressExecutorCountFail) ExecuteSelectRow( +func (*mockGetPendingTransactionsExecutorCountFail) ExecuteSelectRow( qe string, tx bool, args ...interface{}, ) (*sql.Row, error) { db, mock, _ := sqlmock.New() @@ -61,7 +61,7 @@ func (*mockGetPendingTransactionByAddressExecutorCountFail) ExecuteSelectRow( return row, nil } -func (*mockGetPendingTransactionByAddressExecutorGetPendingTxsFail) ExecuteSelectRow( +func (*mockGetPendingTransactionsExecutorGetPendingTxsFail) ExecuteSelectRow( qe string, tx bool, args ...interface{}, ) (*sql.Row, error) { db, mock, _ := sqlmock.New() @@ -72,13 +72,13 @@ func (*mockGetPendingTransactionByAddressExecutorGetPendingTxsFail) ExecuteSelec return row, nil } -func (*mockGetPendingTransactionByAddressExecutorGetPendingTxsFail) ExecuteSelect( +func (*mockGetPendingTransactionsExecutorGetPendingTxsFail) ExecuteSelect( qe string, tx bool, args ...interface{}, ) (*sql.Rows, error) { return nil, errors.New("mockedError") } -func (*mockGetPendingTransactionByAddressExecutorGetPendingTxsSuccess) ExecuteSelectRow( +func (*mockGetPendingTransactionsExecutorGetPendingTxsSuccess) ExecuteSelectRow( qe string, tx bool, args ...interface{}, ) (*sql.Row, error) { db, mock, _ := sqlmock.New() @@ -89,7 +89,7 @@ func (*mockGetPendingTransactionByAddressExecutorGetPendingTxsSuccess) ExecuteSe return row, nil } -func (*mockGetPendingTransactionByAddressExecutorGetPendingTxsSuccess) ExecuteSelect( +func (*mockGetPendingTransactionsExecutorGetPendingTxsSuccess) ExecuteSelect( qe string, tx bool, args ...interface{}, ) (*sql.Rows, error) { db, mock, _ := sqlmock.New() @@ -100,13 +100,13 @@ func (*mockGetPendingTransactionByAddressExecutorGetPendingTxsSuccess) ExecuteSe return rows, nil } -func (*mockGetPendingTransactionByAddressPendingTxQueryBuildFail) BuildModel( +func (*mockGetPendingTransactionsPendingTxQueryBuildFail) BuildModel( pts []*model.PendingTransaction, rows *sql.Rows, ) ([]*model.PendingTransaction, error) { return nil, errors.New("mockedError") } -func (*mockGetPendingTransactionByAddressPendingTxQueryBuildSuccess) BuildModel( +func (*mockGetPendingTransactionsPendingTxQueryBuildSuccess) BuildModel( pts []*model.PendingTransaction, rows *sql.Rows, ) ([]*model.PendingTransaction, error) { return []*model.PendingTransaction{}, nil @@ -122,19 +122,19 @@ func TestMultisigService_GetPendingTransactionByAddress(t *testing.T) { Logger *logrus.Logger } type args struct { - param *model.GetPendingTransactionByAddressRequest + param *model.GetPendingTransactionsRequest } tests := []struct { name string fields fields args args - want *model.GetPendingTransactionByAddressResponse + want *model.GetPendingTransactionsResponse wantErr bool }{ { name: "GetPendingTransactionByAddress-fail-countExecuteSelectRow-error-noRow", fields: fields{ - Executor: &mockGetPendingTransactionByAddressExecutorCountFail{}, + Executor: &mockGetPendingTransactionsExecutorCountFail{}, BlockService: nil, PendingTransactionQuery: nil, PendingSignatureQuery: nil, @@ -142,7 +142,7 @@ func TestMultisigService_GetPendingTransactionByAddress(t *testing.T) { Logger: nil, }, args: args{ - param: mockGetPendingTransactionByAddressExecutorCountFailParam, + param: mockGetPendingTransactionsExecutorCountFailParam, }, want: nil, wantErr: true, @@ -150,7 +150,7 @@ func TestMultisigService_GetPendingTransactionByAddress(t *testing.T) { { name: "GetPendingTransactionByAddress-fail-GetPendingTxsExecutor-error", fields: fields{ - Executor: &mockGetPendingTransactionByAddressExecutorGetPendingTxsFail{}, + Executor: &mockGetPendingTransactionsExecutorGetPendingTxsFail{}, BlockService: nil, PendingTransactionQuery: nil, PendingSignatureQuery: nil, @@ -158,7 +158,7 @@ func TestMultisigService_GetPendingTransactionByAddress(t *testing.T) { Logger: nil, }, args: args{ - param: mockGetPendingTransactionByAddressExecutorCountFailParam, + param: mockGetPendingTransactionsExecutorCountFailParam, }, want: nil, wantErr: true, @@ -166,15 +166,15 @@ func TestMultisigService_GetPendingTransactionByAddress(t *testing.T) { { name: "GetPendingTransactionByAddress-fail-PendingTxQueryBuild-error", fields: fields{ - Executor: &mockGetPendingTransactionByAddressExecutorGetPendingTxsSuccess{}, + Executor: &mockGetPendingTransactionsExecutorGetPendingTxsSuccess{}, BlockService: nil, - PendingTransactionQuery: &mockGetPendingTransactionByAddressPendingTxQueryBuildFail{}, + PendingTransactionQuery: &mockGetPendingTransactionsPendingTxQueryBuildFail{}, PendingSignatureQuery: nil, MultisignatureInfoQuery: nil, Logger: nil, }, args: args{ - param: mockGetPendingTransactionByAddressExecutorCountFailParam, + param: mockGetPendingTransactionsExecutorCountFailParam, }, want: nil, wantErr: true, @@ -182,17 +182,17 @@ func TestMultisigService_GetPendingTransactionByAddress(t *testing.T) { { name: "GetPendingTransactionByAddress-success", fields: fields{ - Executor: &mockGetPendingTransactionByAddressExecutorGetPendingTxsSuccess{}, + Executor: &mockGetPendingTransactionsExecutorGetPendingTxsSuccess{}, BlockService: nil, - PendingTransactionQuery: &mockGetPendingTransactionByAddressPendingTxQueryBuildSuccess{}, + PendingTransactionQuery: &mockGetPendingTransactionsPendingTxQueryBuildSuccess{}, PendingSignatureQuery: nil, MultisignatureInfoQuery: nil, Logger: nil, }, args: args{ - param: mockGetPendingTransactionByAddressExecutorCountFailParam, + param: mockGetPendingTransactionsExecutorCountFailParam, }, - want: &model.GetPendingTransactionByAddressResponse{ + want: &model.GetPendingTransactionsResponse{ Count: 1, Page: 1, PendingTransactions: []*model.PendingTransaction{}, @@ -210,7 +210,7 @@ func TestMultisigService_GetPendingTransactionByAddress(t *testing.T) { MultisignatureInfoQuery: tt.fields.MultisignatureInfoQuery, Logger: tt.fields.Logger, } - got, err := ms.GetPendingTransactionByAddress(tt.args.param) + got, err := ms.GetPendingTransactions(tt.args.param) if (err != nil) != tt.wantErr { t.Errorf("GetPendingTransactionByAddress() error = %v, wantErr %v", err, tt.wantErr) return @@ -589,3 +589,237 @@ func TestNewMultisigService(t *testing.T) { }) } } + +var ( + // mock GetMultisigInfo + mockGetMultisigInfoExecutorParam = &model.GetMultisignatureInfoRequest{ + MultisigAddress: "abc", + Pagination: &model.Pagination{ + OrderField: "block_height", + OrderBy: model.OrderBy_DESC, + Page: 1, + Limit: 1, + }, + } + // mock GetMultisigInfo +) + +type ( + mockGetMultisigInfoExecutorCountFailNoRow struct { + query.Executor + } + mockGetMultisigInfoExecutorCountFailOther struct { + query.Executor + } + mockGetMultisigInfoExecutorExecuteSelectError struct { + query.Executor + } + mockGetMultisigInfoExecutorSuccess struct { + query.Executor + } + mockGetMultisigInfoQueryBuildFail struct { + query.MultisignatureInfoQuery + } + mockGetMultisigInfoQueryBuildSuccess struct { + query.MultisignatureInfoQuery + } +) + +func (*mockGetMultisigInfoExecutorCountFailNoRow) ExecuteSelectRow( + qe string, tx bool, args ...interface{}, +) (*sql.Row, error) { + db, mock, _ := sqlmock.New() + defer db.Close() + mock.ExpectQuery(regexp.QuoteMeta(qe)).WillReturnRows(sqlmock.NewRows([]string{ + "Total"})) + row := db.QueryRow(qe) + return row, nil +} + +func (*mockGetMultisigInfoExecutorCountFailOther) ExecuteSelectRow( + qe string, tx bool, args ...interface{}, +) (*sql.Row, error) { + db, mock, _ := sqlmock.New() + defer db.Close() + mock.ExpectQuery(regexp.QuoteMeta(qe)).WillReturnRows(sqlmock.NewRows([]string{ + "Total", "Other", "Other"}).AddRow(1, 1, 1)) + row := db.QueryRow(qe) + return row, nil +} + +func (*mockGetMultisigInfoExecutorExecuteSelectError) ExecuteSelectRow( + qe string, tx bool, args ...interface{}, +) (*sql.Row, error) { + db, mock, _ := sqlmock.New() + defer db.Close() + mock.ExpectQuery(regexp.QuoteMeta(qe)).WillReturnRows(sqlmock.NewRows([]string{ + "Total"}).AddRow(1)) + row := db.QueryRow(qe) + return row, nil +} + +func (*mockGetMultisigInfoExecutorExecuteSelectError) ExecuteSelect( + qe string, tx bool, args ...interface{}, +) (*sql.Rows, error) { + return nil, errors.New("mockedError") +} + +func (*mockGetMultisigInfoExecutorSuccess) ExecuteSelectRow( + qe string, tx bool, args ...interface{}, +) (*sql.Row, error) { + db, mock, _ := sqlmock.New() + defer db.Close() + mock.ExpectQuery(regexp.QuoteMeta(qe)).WillReturnRows(sqlmock.NewRows([]string{ + "Total"}).AddRow(1)) + row := db.QueryRow(qe) + return row, nil +} + +func (*mockGetMultisigInfoExecutorSuccess) ExecuteSelect( + qe string, tx bool, args ...interface{}, +) (*sql.Rows, error) { + db, mock, _ := sqlmock.New() + defer db.Close() + mock.ExpectQuery(regexp.QuoteMeta(qe)).WillReturnRows(sqlmock.NewRows([]string{ + "mockedColumn"}).AddRow(1)) + rows, _ := db.Query(qe) + return rows, nil +} + +func (*mockGetMultisigInfoQueryBuildFail) BuildModel( + multisigInfos []*model.MultiSignatureInfo, rows *sql.Rows, +) ([]*model.MultiSignatureInfo, error) { + return nil, errors.New("mockedError") +} + +func (*mockGetMultisigInfoQueryBuildSuccess) BuildModel( + multisigInfos []*model.MultiSignatureInfo, rows *sql.Rows, +) ([]*model.MultiSignatureInfo, error) { + return []*model.MultiSignatureInfo{}, nil +} + +func TestMultisigService_GetMultisignatureInfo(t *testing.T) { + type fields struct { + Executor query.ExecutorInterface + BlockService service.BlockServiceInterface + PendingTransactionQuery query.PendingTransactionQueryInterface + PendingSignatureQuery query.PendingSignatureQueryInterface + MultisignatureInfoQuery query.MultisignatureInfoQueryInterface + Logger *logrus.Logger + } + type args struct { + param *model.GetMultisignatureInfoRequest + } + tests := []struct { + name string + fields fields + args args + want *model.GetMultisignatureInfoResponse + wantErr bool + }{ + { + name: "GetMultisignatureInfo-fail-countRow.Scan()-ErrorNoRow", + fields: fields{ + Executor: &mockGetMultisigInfoExecutorCountFailNoRow{}, + BlockService: nil, + PendingTransactionQuery: nil, + PendingSignatureQuery: nil, + MultisignatureInfoQuery: nil, + Logger: logrus.New(), + }, + args: args{ + param: mockGetMultisigInfoExecutorParam, + }, + want: nil, + wantErr: true, + }, + { + name: "GetMultisignatureInfo-fail-countRow.Scan()-ErrorOther", + fields: fields{ + Executor: &mockGetMultisigInfoExecutorCountFailOther{}, + BlockService: nil, + PendingTransactionQuery: nil, + PendingSignatureQuery: nil, + MultisignatureInfoQuery: nil, + Logger: logrus.New(), + }, + args: args{ + param: mockGetMultisigInfoExecutorParam, + }, + want: nil, + wantErr: true, + }, + { + name: "GetMultisignatureInfo-fail-multisigInfoExecuteSelect-Error", + fields: fields{ + Executor: &mockGetMultisigInfoExecutorExecuteSelectError{}, + BlockService: nil, + PendingTransactionQuery: nil, + PendingSignatureQuery: nil, + MultisignatureInfoQuery: nil, + Logger: logrus.New(), + }, + args: args{ + param: mockGetMultisigInfoExecutorParam, + }, + want: nil, + wantErr: true, + }, + { + name: "GetMultisignatureInfo-fail-multisigInfoQueryBuild-Error", + fields: fields{ + Executor: &mockGetMultisigInfoExecutorSuccess{}, + BlockService: nil, + PendingTransactionQuery: nil, + PendingSignatureQuery: nil, + MultisignatureInfoQuery: &mockGetMultisigInfoQueryBuildFail{}, + Logger: logrus.New(), + }, + args: args{ + param: mockGetMultisigInfoExecutorParam, + }, + want: nil, + wantErr: true, + }, + { + name: "GetMultisignatureInfo-success", + fields: fields{ + Executor: &mockGetMultisigInfoExecutorSuccess{}, + BlockService: nil, + PendingTransactionQuery: nil, + PendingSignatureQuery: nil, + MultisignatureInfoQuery: &mockGetMultisigInfoQueryBuildSuccess{}, + Logger: logrus.New(), + }, + args: args{ + param: mockGetMultisigInfoExecutorParam, + }, + want: &model.GetMultisignatureInfoResponse{ + Count: 1, + Page: mockGetMultisigInfoExecutorParam.GetPagination().Page, + MultisignatureInfo: []*model.MultiSignatureInfo{}, + }, + wantErr: false, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + ms := &MultisigService{ + Executor: tt.fields.Executor, + BlockService: tt.fields.BlockService, + PendingTransactionQuery: tt.fields.PendingTransactionQuery, + PendingSignatureQuery: tt.fields.PendingSignatureQuery, + MultisignatureInfoQuery: tt.fields.MultisignatureInfoQuery, + Logger: tt.fields.Logger, + } + got, err := ms.GetMultisignatureInfo(tt.args.param) + if (err != nil) != tt.wantErr { + t.Errorf("GetMultisignatureInfo() error = %v, wantErr %v", err, tt.wantErr) + return + } + if !reflect.DeepEqual(got, tt.want) { + t.Errorf("GetMultisignatureInfo() got = %v, want %v", got, tt.want) + } + }) + } +} diff --git a/common/model/multiSignature.pb.go b/common/model/multiSignature.pb.go index 727797fae..5d5649898 100644 --- a/common/model/multiSignature.pb.go +++ b/common/model/multiSignature.pb.go @@ -330,7 +330,7 @@ func (m *PendingTransaction) GetLatest() bool { return false } -type GetPendingTransactionByAddressRequest struct { +type GetPendingTransactionsRequest struct { SenderAddress string `protobuf:"bytes,1,opt,name=SenderAddress,proto3" json:"SenderAddress,omitempty"` Status PendingTransactionStatus `protobuf:"varint,2,opt,name=Status,proto3,enum=model.PendingTransactionStatus" json:"Status,omitempty"` Pagination *Pagination `protobuf:"bytes,3,opt,name=Pagination,proto3" json:"Pagination,omitempty"` @@ -339,53 +339,53 @@ type GetPendingTransactionByAddressRequest struct { XXX_sizecache int32 `json:"-"` } -func (m *GetPendingTransactionByAddressRequest) Reset() { *m = GetPendingTransactionByAddressRequest{} } -func (m *GetPendingTransactionByAddressRequest) String() string { return proto.CompactTextString(m) } -func (*GetPendingTransactionByAddressRequest) ProtoMessage() {} -func (*GetPendingTransactionByAddressRequest) Descriptor() ([]byte, []int) { +func (m *GetPendingTransactionsRequest) Reset() { *m = GetPendingTransactionsRequest{} } +func (m *GetPendingTransactionsRequest) String() string { return proto.CompactTextString(m) } +func (*GetPendingTransactionsRequest) ProtoMessage() {} +func (*GetPendingTransactionsRequest) Descriptor() ([]byte, []int) { return fileDescriptor_136af44c597c17ae, []int{4} } -func (m *GetPendingTransactionByAddressRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GetPendingTransactionByAddressRequest.Unmarshal(m, b) +func (m *GetPendingTransactionsRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetPendingTransactionsRequest.Unmarshal(m, b) } -func (m *GetPendingTransactionByAddressRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GetPendingTransactionByAddressRequest.Marshal(b, m, deterministic) +func (m *GetPendingTransactionsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetPendingTransactionsRequest.Marshal(b, m, deterministic) } -func (m *GetPendingTransactionByAddressRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetPendingTransactionByAddressRequest.Merge(m, src) +func (m *GetPendingTransactionsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetPendingTransactionsRequest.Merge(m, src) } -func (m *GetPendingTransactionByAddressRequest) XXX_Size() int { - return xxx_messageInfo_GetPendingTransactionByAddressRequest.Size(m) +func (m *GetPendingTransactionsRequest) XXX_Size() int { + return xxx_messageInfo_GetPendingTransactionsRequest.Size(m) } -func (m *GetPendingTransactionByAddressRequest) XXX_DiscardUnknown() { - xxx_messageInfo_GetPendingTransactionByAddressRequest.DiscardUnknown(m) +func (m *GetPendingTransactionsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetPendingTransactionsRequest.DiscardUnknown(m) } -var xxx_messageInfo_GetPendingTransactionByAddressRequest proto.InternalMessageInfo +var xxx_messageInfo_GetPendingTransactionsRequest proto.InternalMessageInfo -func (m *GetPendingTransactionByAddressRequest) GetSenderAddress() string { +func (m *GetPendingTransactionsRequest) GetSenderAddress() string { if m != nil { return m.SenderAddress } return "" } -func (m *GetPendingTransactionByAddressRequest) GetStatus() PendingTransactionStatus { +func (m *GetPendingTransactionsRequest) GetStatus() PendingTransactionStatus { if m != nil { return m.Status } return PendingTransactionStatus_PendingTransactionPending } -func (m *GetPendingTransactionByAddressRequest) GetPagination() *Pagination { +func (m *GetPendingTransactionsRequest) GetPagination() *Pagination { if m != nil { return m.Pagination } return nil } -type GetPendingTransactionByAddressResponse struct { +type GetPendingTransactionsResponse struct { // Number of item in current page Count uint32 `protobuf:"varint,1,opt,name=Count,proto3" json:"Count,omitempty"` // Starting page @@ -397,48 +397,46 @@ type GetPendingTransactionByAddressResponse struct { XXX_sizecache int32 `json:"-"` } -func (m *GetPendingTransactionByAddressResponse) Reset() { - *m = GetPendingTransactionByAddressResponse{} -} -func (m *GetPendingTransactionByAddressResponse) String() string { return proto.CompactTextString(m) } -func (*GetPendingTransactionByAddressResponse) ProtoMessage() {} -func (*GetPendingTransactionByAddressResponse) Descriptor() ([]byte, []int) { +func (m *GetPendingTransactionsResponse) Reset() { *m = GetPendingTransactionsResponse{} } +func (m *GetPendingTransactionsResponse) String() string { return proto.CompactTextString(m) } +func (*GetPendingTransactionsResponse) ProtoMessage() {} +func (*GetPendingTransactionsResponse) Descriptor() ([]byte, []int) { return fileDescriptor_136af44c597c17ae, []int{5} } -func (m *GetPendingTransactionByAddressResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GetPendingTransactionByAddressResponse.Unmarshal(m, b) +func (m *GetPendingTransactionsResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetPendingTransactionsResponse.Unmarshal(m, b) } -func (m *GetPendingTransactionByAddressResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GetPendingTransactionByAddressResponse.Marshal(b, m, deterministic) +func (m *GetPendingTransactionsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetPendingTransactionsResponse.Marshal(b, m, deterministic) } -func (m *GetPendingTransactionByAddressResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetPendingTransactionByAddressResponse.Merge(m, src) +func (m *GetPendingTransactionsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetPendingTransactionsResponse.Merge(m, src) } -func (m *GetPendingTransactionByAddressResponse) XXX_Size() int { - return xxx_messageInfo_GetPendingTransactionByAddressResponse.Size(m) +func (m *GetPendingTransactionsResponse) XXX_Size() int { + return xxx_messageInfo_GetPendingTransactionsResponse.Size(m) } -func (m *GetPendingTransactionByAddressResponse) XXX_DiscardUnknown() { - xxx_messageInfo_GetPendingTransactionByAddressResponse.DiscardUnknown(m) +func (m *GetPendingTransactionsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetPendingTransactionsResponse.DiscardUnknown(m) } -var xxx_messageInfo_GetPendingTransactionByAddressResponse proto.InternalMessageInfo +var xxx_messageInfo_GetPendingTransactionsResponse proto.InternalMessageInfo -func (m *GetPendingTransactionByAddressResponse) GetCount() uint32 { +func (m *GetPendingTransactionsResponse) GetCount() uint32 { if m != nil { return m.Count } return 0 } -func (m *GetPendingTransactionByAddressResponse) GetPage() uint32 { +func (m *GetPendingTransactionsResponse) GetPage() uint32 { if m != nil { return m.Page } return 0 } -func (m *GetPendingTransactionByAddressResponse) GetPendingTransactions() []*PendingTransaction { +func (m *GetPendingTransactionsResponse) GetPendingTransactions() []*PendingTransaction { if m != nil { return m.PendingTransactions } @@ -548,6 +546,111 @@ func (m *GetPendingTransactionDetailByTransactionHashResponse) GetMultiSignature return nil } +type GetMultisignatureInfoRequest struct { + MultisigAddress string `protobuf:"bytes,1,opt,name=MultisigAddress,proto3" json:"MultisigAddress,omitempty"` + Pagination *Pagination `protobuf:"bytes,2,opt,name=Pagination,proto3" json:"Pagination,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetMultisignatureInfoRequest) Reset() { *m = GetMultisignatureInfoRequest{} } +func (m *GetMultisignatureInfoRequest) String() string { return proto.CompactTextString(m) } +func (*GetMultisignatureInfoRequest) ProtoMessage() {} +func (*GetMultisignatureInfoRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_136af44c597c17ae, []int{8} +} + +func (m *GetMultisignatureInfoRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetMultisignatureInfoRequest.Unmarshal(m, b) +} +func (m *GetMultisignatureInfoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetMultisignatureInfoRequest.Marshal(b, m, deterministic) +} +func (m *GetMultisignatureInfoRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetMultisignatureInfoRequest.Merge(m, src) +} +func (m *GetMultisignatureInfoRequest) XXX_Size() int { + return xxx_messageInfo_GetMultisignatureInfoRequest.Size(m) +} +func (m *GetMultisignatureInfoRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetMultisignatureInfoRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_GetMultisignatureInfoRequest proto.InternalMessageInfo + +func (m *GetMultisignatureInfoRequest) GetMultisigAddress() string { + if m != nil { + return m.MultisigAddress + } + return "" +} + +func (m *GetMultisignatureInfoRequest) GetPagination() *Pagination { + if m != nil { + return m.Pagination + } + return nil +} + +type GetMultisignatureInfoResponse struct { + // Number of item in current page + Count uint32 `protobuf:"varint,1,opt,name=Count,proto3" json:"Count,omitempty"` + // Starting page + Page uint32 `protobuf:"varint,2,opt,name=Page,proto3" json:"Page,omitempty"` + // content of the request + MultisignatureInfo []*MultiSignatureInfo `protobuf:"bytes,3,rep,name=MultisignatureInfo,proto3" json:"MultisignatureInfo,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetMultisignatureInfoResponse) Reset() { *m = GetMultisignatureInfoResponse{} } +func (m *GetMultisignatureInfoResponse) String() string { return proto.CompactTextString(m) } +func (*GetMultisignatureInfoResponse) ProtoMessage() {} +func (*GetMultisignatureInfoResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_136af44c597c17ae, []int{9} +} + +func (m *GetMultisignatureInfoResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetMultisignatureInfoResponse.Unmarshal(m, b) +} +func (m *GetMultisignatureInfoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetMultisignatureInfoResponse.Marshal(b, m, deterministic) +} +func (m *GetMultisignatureInfoResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetMultisignatureInfoResponse.Merge(m, src) +} +func (m *GetMultisignatureInfoResponse) XXX_Size() int { + return xxx_messageInfo_GetMultisignatureInfoResponse.Size(m) +} +func (m *GetMultisignatureInfoResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetMultisignatureInfoResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_GetMultisignatureInfoResponse proto.InternalMessageInfo + +func (m *GetMultisignatureInfoResponse) GetCount() uint32 { + if m != nil { + return m.Count + } + return 0 +} + +func (m *GetMultisignatureInfoResponse) GetPage() uint32 { + if m != nil { + return m.Page + } + return 0 +} + +func (m *GetMultisignatureInfoResponse) GetMultisignatureInfo() []*MultiSignatureInfo { + if m != nil { + return m.MultisignatureInfo + } + return nil +} + func init() { proto.RegisterEnum("model.PendingTransactionStatus", PendingTransactionStatus_name, PendingTransactionStatus_value) proto.RegisterType((*MultiSignatureInfo)(nil), "model.MultiSignatureInfo") @@ -555,56 +658,61 @@ func init() { proto.RegisterMapType((map[string][]byte)(nil), "model.SignatureInfo.SignaturesEntry") proto.RegisterType((*PendingSignature)(nil), "model.PendingSignature") proto.RegisterType((*PendingTransaction)(nil), "model.PendingTransaction") - proto.RegisterType((*GetPendingTransactionByAddressRequest)(nil), "model.GetPendingTransactionByAddressRequest") - proto.RegisterType((*GetPendingTransactionByAddressResponse)(nil), "model.GetPendingTransactionByAddressResponse") + proto.RegisterType((*GetPendingTransactionsRequest)(nil), "model.GetPendingTransactionsRequest") + proto.RegisterType((*GetPendingTransactionsResponse)(nil), "model.GetPendingTransactionsResponse") proto.RegisterType((*GetPendingTransactionDetailByTransactionHashRequest)(nil), "model.GetPendingTransactionDetailByTransactionHashRequest") proto.RegisterType((*GetPendingTransactionDetailByTransactionHashResponse)(nil), "model.GetPendingTransactionDetailByTransactionHashResponse") + proto.RegisterType((*GetMultisignatureInfoRequest)(nil), "model.GetMultisignatureInfoRequest") + proto.RegisterType((*GetMultisignatureInfoResponse)(nil), "model.GetMultisignatureInfoResponse") } func init() { proto.RegisterFile("model/multiSignature.proto", fileDescriptor_136af44c597c17ae) } var fileDescriptor_136af44c597c17ae = []byte{ - // 671 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x55, 0xcb, 0x6e, 0xd3, 0x40, - 0x14, 0x65, 0xec, 0x26, 0x22, 0x37, 0x4d, 0xeb, 0x0e, 0xa8, 0xb8, 0x11, 0x0f, 0x2b, 0x2a, 0x95, - 0x55, 0x41, 0x02, 0x29, 0x12, 0x08, 0x89, 0x45, 0x43, 0x23, 0x5a, 0x41, 0x4b, 0x35, 0x65, 0xc5, - 0xce, 0xb5, 0x07, 0xd7, 0x6a, 0x3c, 0x13, 0xec, 0x31, 0x6a, 0xd8, 0xf2, 0x09, 0xb0, 0xe7, 0x3b, - 0x90, 0x10, 0x9f, 0xc2, 0xb7, 0x20, 0xcf, 0x38, 0x2f, 0xdb, 0x2d, 0x44, 0x6c, 0x22, 0xcf, 0x39, - 0x73, 0x1f, 0xe7, 0xf8, 0xfa, 0x06, 0x9a, 0x21, 0xf7, 0xe8, 0xa0, 0x13, 0x26, 0x03, 0x11, 0x9c, - 0x04, 0x3e, 0x73, 0x44, 0x12, 0xd1, 0xf6, 0x30, 0xe2, 0x82, 0xe3, 0x8a, 0xe4, 0x9a, 0xeb, 0xea, - 0xca, 0xd0, 0xf1, 0x03, 0xe6, 0x88, 0x80, 0x33, 0x45, 0xb7, 0x7e, 0x23, 0xc0, 0x87, 0x73, 0x71, - 0x07, 0xec, 0x03, 0xc7, 0x0f, 0x60, 0xed, 0x30, 0x60, 0x41, 0x98, 0x84, 0x13, 0x3c, 0x36, 0x91, - 0x85, 0xec, 0x06, 0x29, 0x12, 0xd8, 0x84, 0xca, 0x11, 0x67, 0x2e, 0x35, 0x35, 0x0b, 0xd9, 0x7a, - 0x4f, 0x7b, 0x84, 0x88, 0x02, 0xf0, 0x6d, 0xa8, 0xed, 0x7a, 0x5e, 0x44, 0xe3, 0x98, 0xc6, 0xa6, - 0x6e, 0xe9, 0x76, 0x8d, 0x4c, 0x01, 0x6c, 0xc3, 0xaa, 0xac, 0x1d, 0x07, 0x7e, 0x06, 0x9a, 0x4b, - 0x16, 0xb2, 0x6b, 0x24, 0x0f, 0x63, 0x0b, 0xea, 0xbd, 0x01, 0x77, 0xcf, 0xf7, 0x69, 0xe0, 0x9f, - 0x09, 0xb3, 0x22, 0x3b, 0x99, 0x85, 0xf0, 0x3a, 0x54, 0xdf, 0x38, 0x82, 0xc6, 0xc2, 0xac, 0x5a, - 0xc8, 0xbe, 0x4e, 0xb2, 0x53, 0xeb, 0x17, 0x82, 0xc6, 0xbc, 0x36, 0x1b, 0x56, 0xdf, 0x45, 0x0e, - 0x8b, 0x1d, 0x37, 0xf5, 0x61, 0xdf, 0x89, 0xcf, 0xa4, 0xb2, 0x65, 0x92, 0x87, 0xf1, 0x1e, 0xc0, - 0x8c, 0x7c, 0xcd, 0xd2, 0xed, 0x7a, 0x77, 0xb3, 0x2d, 0x9d, 0x6c, 0xcf, 0xe5, 0x9c, 0x9e, 0xe2, - 0x3e, 0x13, 0xd1, 0x88, 0xcc, 0xc4, 0x35, 0x5f, 0xc0, 0x6a, 0x8e, 0xc6, 0x06, 0xe8, 0xe7, 0x74, - 0x24, 0xcb, 0xd6, 0x48, 0xfa, 0x88, 0x6f, 0x42, 0xe5, 0x93, 0x33, 0x48, 0x94, 0x85, 0xcb, 0x44, - 0x1d, 0x9e, 0x6b, 0xcf, 0x50, 0xeb, 0x27, 0x02, 0xe3, 0x98, 0x32, 0x2f, 0x60, 0xfe, 0x24, 0xcd, - 0x02, 0x1a, 0xb6, 0x60, 0x65, 0xd7, 0x75, 0x79, 0xc2, 0xc4, 0xd8, 0x62, 0x4d, 0x56, 0xcd, 0xa1, - 0xe9, 0x9b, 0x9a, 0xa4, 0x37, 0x75, 0x99, 0x6b, 0x0a, 0xe4, 0xfd, 0x5f, 0xba, 0xca, 0xff, 0xca, - 0x9c, 0xff, 0x5f, 0x34, 0xc0, 0x59, 0xfb, 0x33, 0xad, 0xe1, 0x4d, 0x68, 0x9c, 0x50, 0xe6, 0xd1, - 0x68, 0xdc, 0x95, 0xf2, 0x62, 0x1e, 0x2c, 0x93, 0xa9, 0x95, 0xcb, 0xdc, 0x06, 0x63, 0x06, 0xea, - 0x8d, 0x84, 0x9c, 0xb7, 0xf4, 0x6a, 0x01, 0xc7, 0x4f, 0xa1, 0x7a, 0x22, 0x1c, 0x91, 0xa8, 0x69, - 0x5b, 0xe9, 0xde, 0xcb, 0x5e, 0x69, 0xb1, 0x4d, 0x75, 0x8d, 0x64, 0xd7, 0xff, 0x63, 0x0a, 0x7f, - 0x20, 0xb8, 0xff, 0x8a, 0x8a, 0x62, 0x85, 0xde, 0x28, 0xd3, 0x4a, 0xe8, 0xc7, 0x84, 0xc6, 0xe2, - 0x1f, 0x8d, 0x99, 0x4a, 0xd0, 0x16, 0x93, 0xf0, 0x18, 0xe0, 0x78, 0xb2, 0x03, 0xa4, 0x43, 0xf5, - 0xee, 0xda, 0x38, 0x78, 0x42, 0x90, 0x99, 0x4b, 0xad, 0xef, 0x08, 0xb6, 0xfe, 0xd6, 0x7b, 0x3c, - 0xe4, 0x2c, 0xa6, 0xe9, 0x14, 0xbf, 0x4c, 0x87, 0x2a, 0x5b, 0x15, 0xea, 0x80, 0x31, 0x2c, 0x1d, - 0x3b, 0xbe, 0x1a, 0xed, 0x06, 0x91, 0xcf, 0xf8, 0x35, 0xdc, 0x28, 0x26, 0x54, 0x2b, 0xa2, 0xde, - 0xdd, 0xb8, 0x54, 0x0d, 0x29, 0x8b, 0x6a, 0x51, 0xd8, 0x29, 0x6d, 0x70, 0x8f, 0x0a, 0x27, 0x18, - 0xf4, 0x46, 0xb9, 0x61, 0x19, 0x5b, 0xdd, 0x06, 0x9c, 0x63, 0xf6, 0xe9, 0x45, 0xe6, 0x77, 0x09, - 0xd3, 0xfa, 0xaa, 0xc1, 0x93, 0xc5, 0xea, 0x64, 0xb6, 0x1c, 0x94, 0x7d, 0x02, 0xb2, 0xd0, 0x95, - 0x5a, 0xcb, 0xbe, 0x9b, 0x3e, 0xac, 0xe5, 0x97, 0xc1, 0x78, 0x33, 0xdd, 0x9a, 0xcf, 0x34, 0xe1, - 0x49, 0x31, 0x22, 0xed, 0xa8, 0xb8, 0xf5, 0xb3, 0x71, 0x18, 0x77, 0x54, 0xbc, 0x40, 0x4a, 0x82, - 0xb6, 0xbf, 0x21, 0x30, 0x2f, 0x1b, 0x3b, 0x7c, 0x07, 0x36, 0x8a, 0x5c, 0x86, 0x18, 0xd7, 0xf0, - 0x5d, 0x68, 0x16, 0xe9, 0xfe, 0x05, 0x75, 0x13, 0x41, 0x3d, 0x03, 0xe1, 0x26, 0xac, 0x17, 0xf9, - 0x23, 0xfe, 0x76, 0x68, 0x68, 0xe5, 0xa9, 0xfb, 0x17, 0xc3, 0x20, 0xa2, 0x9e, 0xa1, 0xf7, 0xb6, - 0xdf, 0xdb, 0x7e, 0x20, 0xce, 0x92, 0xd3, 0xb6, 0xcb, 0xc3, 0xce, 0x67, 0xce, 0x4f, 0x5d, 0xf5, - 0xfb, 0xd0, 0xe5, 0x11, 0xed, 0xb8, 0x3c, 0x0c, 0x39, 0xeb, 0x48, 0xa5, 0xa7, 0x55, 0xf9, 0x5f, - 0xb8, 0xf3, 0x27, 0x00, 0x00, 0xff, 0xff, 0x63, 0xca, 0x3d, 0x33, 0x48, 0x07, 0x00, 0x00, + // 711 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xdd, 0x4e, 0x13, 0x41, + 0x14, 0x76, 0x76, 0x69, 0x63, 0x4f, 0x29, 0x94, 0xd1, 0xe0, 0xd2, 0x00, 0x36, 0x0d, 0x31, 0x1b, + 0xa2, 0xad, 0x16, 0x13, 0x8d, 0x89, 0x17, 0x54, 0x1a, 0x20, 0x0a, 0x92, 0xc1, 0x2b, 0xef, 0x96, + 0xed, 0x58, 0x36, 0x74, 0x67, 0xea, 0xce, 0xac, 0xa1, 0x7a, 0xe9, 0x23, 0x48, 0xe2, 0x73, 0x78, + 0x6f, 0x7c, 0x14, 0x9f, 0xc5, 0xec, 0xec, 0x6e, 0xbb, 0x7f, 0x10, 0x1a, 0x6f, 0x9a, 0x9d, 0xef, + 0xfc, 0x7f, 0xf3, 0xcd, 0x49, 0xa1, 0xe1, 0xf2, 0x01, 0x1d, 0x75, 0x5c, 0x7f, 0x24, 0x9d, 0x53, + 0x67, 0xc8, 0x2c, 0xe9, 0x7b, 0xb4, 0x3d, 0xf6, 0xb8, 0xe4, 0xb8, 0xa4, 0x6c, 0x8d, 0xd5, 0xd0, + 0x65, 0x6c, 0x0d, 0x1d, 0x66, 0x49, 0x87, 0xb3, 0xd0, 0xdc, 0xfa, 0x8b, 0x00, 0x1f, 0xa5, 0xe2, + 0x0e, 0xd9, 0x27, 0x8e, 0x1f, 0xc3, 0xca, 0x91, 0xc3, 0x1c, 0xd7, 0x77, 0xa7, 0xb8, 0x30, 0x50, + 0x13, 0x99, 0x35, 0x92, 0x37, 0x60, 0x03, 0x4a, 0xc7, 0x9c, 0xd9, 0xd4, 0xd0, 0x9a, 0xc8, 0xd4, + 0x7b, 0xda, 0x53, 0x44, 0x42, 0x00, 0xaf, 0x43, 0x65, 0x77, 0x30, 0xf0, 0xa8, 0x10, 0x54, 0x18, + 0x7a, 0x53, 0x37, 0x2b, 0x64, 0x06, 0x60, 0x13, 0x96, 0x55, 0x6d, 0xe1, 0x0c, 0x23, 0xd0, 0x58, + 0x68, 0x22, 0xb3, 0x42, 0xb2, 0x30, 0x6e, 0x42, 0xb5, 0x37, 0xe2, 0xf6, 0xc5, 0x01, 0x75, 0x86, + 0xe7, 0xd2, 0x28, 0xa9, 0x4e, 0x92, 0x10, 0x5e, 0x85, 0xf2, 0x3b, 0x4b, 0x52, 0x21, 0x8d, 0x72, + 0x13, 0x99, 0x77, 0x49, 0x74, 0x6a, 0xfd, 0x41, 0x50, 0x4b, 0xcf, 0x66, 0xc2, 0xf2, 0x07, 0xcf, + 0x62, 0xc2, 0xb2, 0x03, 0x1e, 0x0e, 0x2c, 0x71, 0xae, 0x26, 0x5b, 0x24, 0x59, 0x18, 0xef, 0x01, + 0x24, 0xc6, 0xd7, 0x9a, 0xba, 0x59, 0xed, 0x6e, 0xb5, 0x15, 0x93, 0xed, 0x54, 0xce, 0xd9, 0x49, + 0xf4, 0x99, 0xf4, 0x26, 0x24, 0x11, 0xd7, 0x78, 0x0d, 0xcb, 0x19, 0x33, 0xae, 0x83, 0x7e, 0x41, + 0x27, 0xaa, 0x6c, 0x85, 0x04, 0x9f, 0xf8, 0x3e, 0x94, 0xbe, 0x58, 0x23, 0x3f, 0xa4, 0x70, 0x91, + 0x84, 0x87, 0x57, 0xda, 0x4b, 0xd4, 0xfa, 0x8d, 0xa0, 0x7e, 0x42, 0xd9, 0xc0, 0x61, 0xc3, 0x69, + 0x9a, 0x39, 0x66, 0x78, 0x04, 0x4b, 0xbb, 0xb6, 0xcd, 0x7d, 0x26, 0x63, 0x8a, 0x35, 0x55, 0x35, + 0x83, 0x06, 0x37, 0x35, 0x4d, 0x6f, 0xe8, 0x2a, 0xd7, 0x0c, 0xc8, 0xf2, 0xbf, 0x70, 0x13, 0xff, + 0xa5, 0x14, 0xff, 0xdf, 0x35, 0xc0, 0x51, 0xfb, 0x89, 0xd6, 0xf0, 0x16, 0xd4, 0x4e, 0x29, 0x1b, + 0x50, 0x2f, 0xee, 0x2a, 0xe4, 0x22, 0x0d, 0x16, 0x8d, 0xa9, 0x15, 0x8f, 0xb9, 0x0d, 0xf5, 0x04, + 0xd4, 0x9b, 0x48, 0xa5, 0xb7, 0xc0, 0x35, 0x87, 0xe3, 0x17, 0x50, 0x3e, 0x95, 0x96, 0xf4, 0x43, + 0xb5, 0x2d, 0x75, 0x1f, 0x46, 0x57, 0x9a, 0x6f, 0x33, 0x74, 0x23, 0x91, 0xfb, 0x7f, 0xa8, 0xf0, + 0x17, 0x82, 0x8d, 0x7d, 0x2a, 0xf3, 0x15, 0x04, 0xa1, 0x9f, 0x7d, 0x2a, 0xe4, 0x2d, 0x09, 0x99, + 0xb5, 0xae, 0xcd, 0xd7, 0xfa, 0x33, 0x80, 0x93, 0xe9, 0xdb, 0x57, 0xcc, 0x54, 0xbb, 0x2b, 0x71, + 0xf0, 0xd4, 0x40, 0x12, 0x4e, 0xad, 0x9f, 0x08, 0x36, 0xaf, 0xeb, 0x59, 0x8c, 0x39, 0x13, 0x34, + 0x50, 0xed, 0x9b, 0x40, 0x44, 0xd1, 0x6a, 0x08, 0x0f, 0x18, 0xc3, 0xc2, 0x89, 0x35, 0x0c, 0xa5, + 0x5c, 0x23, 0xea, 0x1b, 0xbf, 0x85, 0x7b, 0x05, 0x89, 0xd4, 0x4a, 0xa8, 0x76, 0xd7, 0xae, 0x9d, + 0x82, 0x14, 0x45, 0xb5, 0x28, 0xec, 0x14, 0x36, 0xb6, 0x47, 0xa5, 0xe5, 0x8c, 0x7a, 0x93, 0x8c, + 0x38, 0x62, 0x8a, 0xdb, 0x80, 0x33, 0x96, 0x03, 0x7a, 0x19, 0xf1, 0x5c, 0x60, 0x69, 0xfd, 0xd0, + 0xe0, 0xf9, 0x7c, 0x75, 0x22, 0x5a, 0x0e, 0x8b, 0x24, 0xaf, 0x0a, 0xdd, 0x38, 0x6b, 0xd1, 0x3b, + 0xe9, 0xc3, 0x4a, 0xf6, 0xf1, 0xc7, 0x9b, 0xe8, 0x41, 0x3a, 0xd3, 0xd4, 0x4e, 0xf2, 0x11, 0x41, + 0x47, 0xf9, 0x2d, 0x1f, 0xc9, 0x20, 0xee, 0x28, 0xef, 0x40, 0x0a, 0x82, 0x5a, 0xdf, 0x60, 0x7d, + 0x9f, 0xca, 0x78, 0x41, 0x27, 0x9c, 0x23, 0x96, 0x0b, 0x96, 0x3a, 0x2a, 0x5e, 0xea, 0x69, 0x4d, + 0x6a, 0xb7, 0xd1, 0xe4, 0x55, 0xf8, 0x8e, 0x8a, 0xaa, 0xcf, 0x2d, 0xc9, 0x98, 0x13, 0x91, 0xe1, + 0x44, 0xbf, 0x0d, 0x27, 0xa9, 0xa0, 0xed, 0x2b, 0x04, 0xc6, 0x75, 0x4f, 0x10, 0x6f, 0xc0, 0x5a, + 0xde, 0x16, 0x21, 0xf5, 0x3b, 0x78, 0x13, 0x1a, 0x79, 0x73, 0xff, 0x92, 0xda, 0xbe, 0xa4, 0x83, + 0x3a, 0xc2, 0x0d, 0x58, 0xcd, 0xdb, 0x8f, 0xf9, 0xfb, 0x71, 0x5d, 0x2b, 0x4e, 0xdd, 0xbf, 0x1c, + 0x3b, 0x1e, 0x1d, 0xd4, 0xf5, 0xde, 0xf6, 0x47, 0x73, 0xe8, 0xc8, 0x73, 0xff, 0xac, 0x6d, 0x73, + 0xb7, 0xf3, 0x95, 0xf3, 0x33, 0x3b, 0xfc, 0x7d, 0x62, 0x73, 0x8f, 0x76, 0x6c, 0xee, 0xba, 0x9c, + 0x75, 0xd4, 0xa4, 0x67, 0x65, 0xf5, 0x7f, 0x60, 0xe7, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0c, + 0x78, 0x3b, 0xef, 0x4c, 0x08, 0x00, 0x00, } diff --git a/common/schema b/common/schema index bf39e2a10..cf5b67400 160000 --- a/common/schema +++ b/common/schema @@ -1 +1 @@ -Subproject commit bf39e2a1082ee310d2826453e577fcc076dc3b6d +Subproject commit cf5b67400b42c82bf60115440982f28014084bc7 diff --git a/common/service/multiSignature.pb.go b/common/service/multiSignature.pb.go index 8242606b3..2436a8ca7 100644 --- a/common/service/multiSignature.pb.go +++ b/common/service/multiSignature.pb.go @@ -27,25 +27,27 @@ const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package func init() { proto.RegisterFile("service/multiSignature.proto", fileDescriptor_c7c370ee2b80617f) } var fileDescriptor_c7c370ee2b80617f = []byte{ - // 276 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0xbf, 0x4a, 0xc4, 0x40, - 0x10, 0x87, 0x39, 0x05, 0x85, 0x34, 0xc2, 0x96, 0xe1, 0xb0, 0xb0, 0xd4, 0x24, 0x8b, 0x5e, 0xa5, - 0x57, 0x5d, 0x10, 0xb4, 0x11, 0xc4, 0xb3, 0xb2, 0xdb, 0x6c, 0x86, 0xbd, 0x81, 0xec, 0x4e, 0xdc, - 0xd9, 0x1c, 0x9c, 0xa5, 0xaf, 0xe0, 0x9b, 0xe8, 0xa3, 0xf8, 0x0a, 0x56, 0x3e, 0x85, 0x5c, 0x12, - 0xc1, 0xe2, 0xfe, 0xc8, 0x35, 0x5b, 0xec, 0xfc, 0xbe, 0xd9, 0xf9, 0xd8, 0x89, 0x86, 0x0c, 0x7e, - 0x8e, 0x1a, 0xa4, 0x6d, 0xaa, 0x80, 0x53, 0x34, 0x4e, 0x85, 0xc6, 0x43, 0x56, 0x7b, 0x0a, 0x24, - 0x0e, 0xfb, 0x6a, 0x1c, 0x5b, 0x2a, 0xa1, 0x5a, 0x19, 0x8a, 0x87, 0x86, 0xc8, 0x54, 0x20, 0x55, - 0x8d, 0x52, 0x39, 0x47, 0x41, 0x05, 0x24, 0xc7, 0x5d, 0xf5, 0xe2, 0x63, 0x3f, 0x3a, 0xba, 0x5b, - 0x62, 0x8c, 0x66, 0xda, 0x75, 0x13, 0xef, 0x83, 0xe8, 0xf8, 0x06, 0xc2, 0x3d, 0xb8, 0x12, 0x9d, - 0x79, 0xf4, 0xca, 0xb1, 0xd2, 0x4b, 0x28, 0x5f, 0x4c, 0xca, 0xd2, 0x03, 0xb3, 0x48, 0xb2, 0xf6, - 0xc5, 0x6c, 0x73, 0xec, 0x01, 0x9e, 0x1b, 0xe0, 0x10, 0xa7, 0xff, 0x4c, 0x73, 0x4d, 0x8e, 0xe1, - 0x64, 0xf4, 0xfa, 0xf9, 0xf5, 0xb6, 0x97, 0x8a, 0x33, 0x39, 0x3f, 0xef, 0x9c, 0x18, 0x8d, 0xdc, - 0x32, 0xd1, 0xf7, 0x20, 0x4a, 0x56, 0x46, 0xae, 0x21, 0x28, 0xac, 0xf2, 0xc5, 0x9f, 0xab, 0x5b, - 0xc5, 0x33, 0x71, 0xb5, 0x69, 0xa8, 0x35, 0xd0, 0xaf, 0xd0, 0x78, 0x27, 0xb6, 0xd7, 0x9b, 0xb4, - 0x7a, 0x63, 0x71, 0xb9, 0x5d, 0x6f, 0x4d, 0xab, 0x3c, 0x79, 0x3a, 0x35, 0x18, 0x66, 0x4d, 0x91, - 0x69, 0xb2, 0xf2, 0x85, 0xa8, 0xd0, 0xdd, 0x99, 0x6a, 0xf2, 0x20, 0x35, 0x59, 0x4b, 0x4e, 0xf6, - 0xdb, 0x51, 0x1c, 0xb4, 0x5f, 0x3d, 0xfa, 0x09, 0x00, 0x00, 0xff, 0xff, 0xc0, 0xb5, 0x83, 0xe9, - 0x4d, 0x02, 0x00, 0x00, + // 308 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x29, 0x4e, 0x2d, 0x2a, + 0xcb, 0x4c, 0x4e, 0xd5, 0xcf, 0x2d, 0xcd, 0x29, 0xc9, 0x0c, 0xce, 0x4c, 0xcf, 0x4b, 0x2c, 0x29, + 0x2d, 0x4a, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x87, 0xca, 0x4a, 0x49, 0xe5, 0xe6, + 0xa7, 0xa4, 0xe6, 0x60, 0x55, 0x24, 0x25, 0x93, 0x9e, 0x9f, 0x9f, 0x9e, 0x93, 0xaa, 0x9f, 0x58, + 0x90, 0xa9, 0x9f, 0x98, 0x97, 0x97, 0x5f, 0x92, 0x58, 0x92, 0x99, 0x9f, 0x57, 0x0c, 0x91, 0x35, + 0x5a, 0xc2, 0xc2, 0xc5, 0xef, 0x0b, 0xd2, 0x56, 0x9c, 0x99, 0x1e, 0x0c, 0x31, 0x4d, 0x68, 0x12, + 0x23, 0x97, 0x98, 0x7b, 0x6a, 0x49, 0x40, 0x6a, 0x5e, 0x4a, 0x66, 0x5e, 0x7a, 0x48, 0x51, 0x62, + 0x5e, 0x71, 0x62, 0x32, 0x58, 0x93, 0x90, 0x8a, 0x1e, 0xd8, 0x26, 0x3d, 0xec, 0xd2, 0x41, 0xa9, + 0x85, 0xa5, 0xa9, 0xc5, 0x25, 0x52, 0xaa, 0x04, 0x54, 0x15, 0x17, 0xe4, 0xe7, 0x15, 0xa7, 0x2a, + 0x69, 0x37, 0x5d, 0x7e, 0x32, 0x99, 0x49, 0x55, 0x48, 0x59, 0xbf, 0xcc, 0x10, 0xe2, 0xf6, 0xe2, + 0xcc, 0x74, 0x7d, 0x1c, 0x36, 0xbf, 0x62, 0xe4, 0xd2, 0xc1, 0x2a, 0xe5, 0x92, 0x5a, 0x92, 0x98, + 0x99, 0xe3, 0x54, 0x89, 0x24, 0xe4, 0x91, 0x58, 0x9c, 0x21, 0x64, 0x85, 0xcf, 0x11, 0x38, 0x34, + 0xc1, 0x3c, 0x60, 0x4d, 0x96, 0x5e, 0xa8, 0xb7, 0x1c, 0xc1, 0xde, 0xb2, 0x16, 0xb2, 0x24, 0xec, + 0x2d, 0x5c, 0x6e, 0xef, 0x63, 0xe4, 0x12, 0x75, 0x4f, 0x2d, 0x81, 0x45, 0x0c, 0x24, 0x3e, 0x3d, + 0xf3, 0xd2, 0xf2, 0x85, 0x94, 0x11, 0x2e, 0xc3, 0x94, 0x85, 0x39, 0x5f, 0x05, 0xbf, 0x22, 0xa8, + 0x3b, 0xb5, 0xc0, 0xee, 0x54, 0x11, 0x52, 0x42, 0x77, 0x27, 0xa6, 0x1e, 0x27, 0x9d, 0x28, 0xad, + 0xf4, 0xcc, 0x92, 0x8c, 0xd2, 0x24, 0xbd, 0xe4, 0xfc, 0x5c, 0xfd, 0xaa, 0xfc, 0xfc, 0xa4, 0x64, + 0x08, 0xa9, 0x9b, 0x9c, 0x5f, 0x94, 0xaa, 0x9f, 0x9c, 0x9f, 0x9b, 0x9b, 0x9f, 0xa7, 0x0f, 0x4d, + 0x8e, 0x49, 0x6c, 0xe0, 0xb4, 0x65, 0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0x76, 0x64, 0xb9, 0xbd, + 0xbe, 0x02, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -60,8 +62,9 @@ const _ = grpc.SupportPackageIsVersion4 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type MultisigServiceClient interface { - GetPendingTransactionByAddress(ctx context.Context, in *model.GetPendingTransactionByAddressRequest, opts ...grpc.CallOption) (*model.GetPendingTransactionByAddressResponse, error) + GetPendingTransactions(ctx context.Context, in *model.GetPendingTransactionsRequest, opts ...grpc.CallOption) (*model.GetPendingTransactionsResponse, error) GetPendingTransactionDetailByTransactionHash(ctx context.Context, in *model.GetPendingTransactionDetailByTransactionHashRequest, opts ...grpc.CallOption) (*model.GetPendingTransactionDetailByTransactionHashResponse, error) + GetMultisignatureInfo(ctx context.Context, in *model.GetMultisignatureInfoRequest, opts ...grpc.CallOption) (*model.GetMultisignatureInfoResponse, error) } type multisigServiceClient struct { @@ -72,9 +75,9 @@ func NewMultisigServiceClient(cc *grpc.ClientConn) MultisigServiceClient { return &multisigServiceClient{cc} } -func (c *multisigServiceClient) GetPendingTransactionByAddress(ctx context.Context, in *model.GetPendingTransactionByAddressRequest, opts ...grpc.CallOption) (*model.GetPendingTransactionByAddressResponse, error) { - out := new(model.GetPendingTransactionByAddressResponse) - err := c.cc.Invoke(ctx, "/service.MultisigService/GetPendingTransactionByAddress", in, out, opts...) +func (c *multisigServiceClient) GetPendingTransactions(ctx context.Context, in *model.GetPendingTransactionsRequest, opts ...grpc.CallOption) (*model.GetPendingTransactionsResponse, error) { + out := new(model.GetPendingTransactionsResponse) + err := c.cc.Invoke(ctx, "/service.MultisigService/GetPendingTransactions", in, out, opts...) if err != nil { return nil, err } @@ -90,30 +93,40 @@ func (c *multisigServiceClient) GetPendingTransactionDetailByTransactionHash(ctx return out, nil } +func (c *multisigServiceClient) GetMultisignatureInfo(ctx context.Context, in *model.GetMultisignatureInfoRequest, opts ...grpc.CallOption) (*model.GetMultisignatureInfoResponse, error) { + out := new(model.GetMultisignatureInfoResponse) + err := c.cc.Invoke(ctx, "/service.MultisigService/GetMultisignatureInfo", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // MultisigServiceServer is the server API for MultisigService service. type MultisigServiceServer interface { - GetPendingTransactionByAddress(context.Context, *model.GetPendingTransactionByAddressRequest) (*model.GetPendingTransactionByAddressResponse, error) + GetPendingTransactions(context.Context, *model.GetPendingTransactionsRequest) (*model.GetPendingTransactionsResponse, error) GetPendingTransactionDetailByTransactionHash(context.Context, *model.GetPendingTransactionDetailByTransactionHashRequest) (*model.GetPendingTransactionDetailByTransactionHashResponse, error) + GetMultisignatureInfo(context.Context, *model.GetMultisignatureInfoRequest) (*model.GetMultisignatureInfoResponse, error) } func RegisterMultisigServiceServer(s *grpc.Server, srv MultisigServiceServer) { s.RegisterService(&_MultisigService_serviceDesc, srv) } -func _MultisigService_GetPendingTransactionByAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(model.GetPendingTransactionByAddressRequest) +func _MultisigService_GetPendingTransactions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(model.GetPendingTransactionsRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(MultisigServiceServer).GetPendingTransactionByAddress(ctx, in) + return srv.(MultisigServiceServer).GetPendingTransactions(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/service.MultisigService/GetPendingTransactionByAddress", + FullMethod: "/service.MultisigService/GetPendingTransactions", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MultisigServiceServer).GetPendingTransactionByAddress(ctx, req.(*model.GetPendingTransactionByAddressRequest)) + return srv.(MultisigServiceServer).GetPendingTransactions(ctx, req.(*model.GetPendingTransactionsRequest)) } return interceptor(ctx, in, info, handler) } @@ -136,18 +149,40 @@ func _MultisigService_GetPendingTransactionDetailByTransactionHash_Handler(srv i return interceptor(ctx, in, info, handler) } +func _MultisigService_GetMultisignatureInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(model.GetMultisignatureInfoRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MultisigServiceServer).GetMultisignatureInfo(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/service.MultisigService/GetMultisignatureInfo", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MultisigServiceServer).GetMultisignatureInfo(ctx, req.(*model.GetMultisignatureInfoRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _MultisigService_serviceDesc = grpc.ServiceDesc{ ServiceName: "service.MultisigService", HandlerType: (*MultisigServiceServer)(nil), Methods: []grpc.MethodDesc{ { - MethodName: "GetPendingTransactionByAddress", - Handler: _MultisigService_GetPendingTransactionByAddress_Handler, + MethodName: "GetPendingTransactions", + Handler: _MultisigService_GetPendingTransactions_Handler, }, { MethodName: "GetPendingTransactionDetailByTransactionHash", Handler: _MultisigService_GetPendingTransactionDetailByTransactionHash_Handler, }, + { + MethodName: "GetMultisignatureInfo", + Handler: _MultisigService_GetMultisignatureInfo_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "service/multiSignature.proto", diff --git a/common/service/multiSignature.pb.gw.go b/common/service/multiSignature.pb.gw.go index 67ab6777c..02d29ac9d 100644 --- a/common/service/multiSignature.pb.gw.go +++ b/common/service/multiSignature.pb.gw.go @@ -30,18 +30,18 @@ var _ = runtime.String var _ = utilities.NewDoubleArray var ( - filter_MultisigService_GetPendingTransactionByAddress_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} + filter_MultisigService_GetPendingTransactions_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) -func request_MultisigService_GetPendingTransactionByAddress_0(ctx context.Context, marshaler runtime.Marshaler, client MultisigServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq model.GetPendingTransactionByAddressRequest +func request_MultisigService_GetPendingTransactions_0(ctx context.Context, marshaler runtime.Marshaler, client MultisigServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq model.GetPendingTransactionsRequest var metadata runtime.ServerMetadata - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_MultisigService_GetPendingTransactionByAddress_0); err != nil { + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_MultisigService_GetPendingTransactions_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.GetPendingTransactionByAddress(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.GetPendingTransactions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } @@ -63,6 +63,23 @@ func request_MultisigService_GetPendingTransactionDetailByTransactionHash_0(ctx } +var ( + filter_MultisigService_GetMultisignatureInfo_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_MultisigService_GetMultisignatureInfo_0(ctx context.Context, marshaler runtime.Marshaler, client MultisigServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq model.GetMultisignatureInfoRequest + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_MultisigService_GetMultisignatureInfo_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.GetMultisignatureInfo(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + // RegisterMultisigServiceHandlerFromEndpoint is same as RegisterMultisigServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterMultisigServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { @@ -101,7 +118,7 @@ func RegisterMultisigServiceHandler(ctx context.Context, mux *runtime.ServeMux, // "MultisigServiceClient" to call the correct interceptors. func RegisterMultisigServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client MultisigServiceClient) error { - mux.Handle("GET", pattern_MultisigService_GetPendingTransactionByAddress_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_MultisigService_GetPendingTransactions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) @@ -110,14 +127,14 @@ func RegisterMultisigServiceHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_MultisigService_GetPendingTransactionByAddress_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_MultisigService_GetPendingTransactions_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_MultisigService_GetPendingTransactionByAddress_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_MultisigService_GetPendingTransactions_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -141,17 +158,41 @@ func RegisterMultisigServiceHandlerClient(ctx context.Context, mux *runtime.Serv }) + mux.Handle("GET", pattern_MultisigService_GetMultisignatureInfo_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_MultisigService_GetMultisignatureInfo_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_MultisigService_GetMultisignatureInfo_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } var ( - pattern_MultisigService_GetPendingTransactionByAddress_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "multisig", "GetPendingTransactionByAddress"}, "")) + pattern_MultisigService_GetPendingTransactions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "multisig", "GetPendingTransactions"}, "")) pattern_MultisigService_GetPendingTransactionDetailByTransactionHash_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "multisig", "GetPendingTransactionDetailByTransactionHash"}, "")) + + pattern_MultisigService_GetMultisignatureInfo_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "multisig", "GetMultisignatureInfo"}, "")) ) var ( - forward_MultisigService_GetPendingTransactionByAddress_0 = runtime.ForwardResponseMessage + forward_MultisigService_GetPendingTransactions_0 = runtime.ForwardResponseMessage forward_MultisigService_GetPendingTransactionDetailByTransactionHash_0 = runtime.ForwardResponseMessage + + forward_MultisigService_GetMultisignatureInfo_0 = runtime.ForwardResponseMessage )