Skip to content

crud: improvments #273

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Mar 20, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions crud/count.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,9 @@ type countArgs struct {
Opts CountOpts
}

// NewCountRequest returns a new empty CountRequest.
func NewCountRequest(space string) *CountRequest {
req := new(CountRequest)
// MakeCountRequest returns a new empty CountRequest.
func MakeCountRequest(space string) CountRequest {
req := CountRequest{}
req.impl = newCall("crud.count")
req.space = space
req.conditions = nil
Expand All @@ -88,27 +88,27 @@ func NewCountRequest(space string) *CountRequest {

// Conditions sets the conditions for the CountRequest request.
// Note: default value is nil.
func (req *CountRequest) Conditions(conditions []Condition) *CountRequest {
func (req CountRequest) Conditions(conditions []Condition) CountRequest {
req.conditions = conditions
return req
}

// Opts sets the options for the CountRequest request.
// Note: default value is nil.
func (req *CountRequest) Opts(opts CountOpts) *CountRequest {
func (req CountRequest) Opts(opts CountOpts) CountRequest {
req.opts = opts
return req
}

// Body fills an encoder with the call request body.
func (req *CountRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
func (req CountRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
args := countArgs{Space: req.space, Conditions: req.conditions, Opts: req.opts}
req.impl = req.impl.Args(args)
return req.impl.Body(res, enc)
}

// Context sets a passed context to CRUD request.
func (req *CountRequest) Context(ctx context.Context) *CountRequest {
func (req CountRequest) Context(ctx context.Context) CountRequest {
req.impl = req.impl.Context(ctx)

return req
Expand Down
18 changes: 10 additions & 8 deletions crud/delete.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,39 +24,41 @@ type deleteArgs struct {
Opts DeleteOpts
}

// NewDeleteRequest returns a new empty DeleteRequest.
func NewDeleteRequest(space string) *DeleteRequest {
req := new(DeleteRequest)
// MakeDeleteRequest returns a new empty DeleteRequest.
func MakeDeleteRequest(space string) DeleteRequest {
req := DeleteRequest{}
req.impl = newCall("crud.delete")
req.space = space
req.key = []interface{}{}
req.opts = DeleteOpts{}
return req
}

// Key sets the key for the DeleteRequest request.
// Note: default value is nil.
func (req *DeleteRequest) Key(key Tuple) *DeleteRequest {
func (req DeleteRequest) Key(key Tuple) DeleteRequest {
req.key = key
return req
}

// Opts sets the options for the DeleteRequest request.
// Note: default value is nil.
func (req *DeleteRequest) Opts(opts DeleteOpts) *DeleteRequest {
func (req DeleteRequest) Opts(opts DeleteOpts) DeleteRequest {
req.opts = opts
return req
}

// Body fills an encoder with the call request body.
func (req *DeleteRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
func (req DeleteRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
if req.key == nil {
req.key = []interface{}{}
}
args := deleteArgs{Space: req.space, Key: req.key, Opts: req.opts}
req.impl = req.impl.Args(args)
return req.impl.Body(res, enc)
}

// Context sets a passed context to CRUD request.
func (req *DeleteRequest) Context(ctx context.Context) *DeleteRequest {
func (req DeleteRequest) Context(ctx context.Context) DeleteRequest {
req.impl = req.impl.Context(ctx)

return req
Expand Down
12 changes: 6 additions & 6 deletions crud/example_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ func exampleConnect() *tarantool.Connection {
// interface{} type.
func ExampleResult_rowsInterface() {
conn := exampleConnect()
req := crud.NewReplaceRequest(exampleSpace).
req := crud.MakeReplaceRequest(exampleSpace).
Tuple([]interface{}{uint(2010), nil, "bla"})

ret := crud.Result{}
Expand All @@ -54,7 +54,7 @@ func ExampleResult_rowsInterface() {
// custom type.
func ExampleResult_rowsCustomType() {
conn := exampleConnect()
req := crud.NewReplaceRequest(exampleSpace).
req := crud.MakeReplaceRequest(exampleSpace).
Tuple([]interface{}{uint(2010), nil, "bla"})

type Tuple struct {
Expand Down Expand Up @@ -82,7 +82,7 @@ func ExampleResult_rowsCustomType() {
// response from *ManyRequest.
func ExampleResult_many() {
conn := exampleConnect()
req := crud.NewReplaceManyRequest(exampleSpace).
req := crud.MakeReplaceManyRequest(exampleSpace).
Tuples([]crud.Tuple{
[]interface{}{uint(2010), nil, "bla"},
[]interface{}{uint(2011), nil, "bla"},
Expand All @@ -105,7 +105,7 @@ func ExampleResult_many() {
// to handle a crud error.
func ExampleResult_error() {
conn := exampleConnect()
req := crud.NewReplaceRequest("not_exist").
req := crud.MakeReplaceRequest("not_exist").
Tuple([]interface{}{uint(2010), nil, "bla"})

ret := crud.Result{}
Expand All @@ -124,13 +124,13 @@ func ExampleResult_error() {
// to handle a crud error for a *ManyRequest.
func ExampleResult_errorMany() {
conn := exampleConnect()
initReq := crud.NewReplaceRequest("not_exist").
initReq := crud.MakeReplaceRequest("not_exist").
Tuple([]interface{}{uint(2010), nil, "bla"})
if _, err := conn.Do(initReq).Get(); err != nil {
fmt.Printf("Failed to initialize the example: %s\n", err)
}

req := crud.NewInsertManyRequest(exampleSpace).
req := crud.MakeInsertManyRequest(exampleSpace).
Tuples([]crud.Tuple{
[]interface{}{uint(2010), nil, "bla"},
[]interface{}{uint(2010), nil, "bla"},
Expand Down
18 changes: 10 additions & 8 deletions crud/get.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,39 +63,41 @@ type getArgs struct {
Opts GetOpts
}

// NewGetRequest returns a new empty GetRequest.
func NewGetRequest(space string) *GetRequest {
req := new(GetRequest)
// MakeGetRequest returns a new empty GetRequest.
func MakeGetRequest(space string) GetRequest {
req := GetRequest{}
req.impl = newCall("crud.get")
req.space = space
req.key = []interface{}{}
req.opts = GetOpts{}
return req
}

// Key sets the key for the GetRequest request.
// Note: default value is nil.
func (req *GetRequest) Key(key Tuple) *GetRequest {
func (req GetRequest) Key(key Tuple) GetRequest {
req.key = key
return req
}

// Opts sets the options for the GetRequest request.
// Note: default value is nil.
func (req *GetRequest) Opts(opts GetOpts) *GetRequest {
func (req GetRequest) Opts(opts GetOpts) GetRequest {
req.opts = opts
return req
}

// Body fills an encoder with the call request body.
func (req *GetRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
func (req GetRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
if req.key == nil {
req.key = []interface{}{}
}
args := getArgs{Space: req.space, Key: req.key, Opts: req.opts}
req.impl = req.impl.Args(args)
return req.impl.Body(res, enc)
}

// Context sets a passed context to CRUD request.
func (req *GetRequest) Context(ctx context.Context) *GetRequest {
func (req GetRequest) Context(ctx context.Context) GetRequest {
req.impl = req.impl.Context(ctx)

return req
Expand Down
36 changes: 20 additions & 16 deletions crud/insert.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,39 +24,41 @@ type insertArgs struct {
Opts InsertOpts
}

// NewInsertRequest returns a new empty InsertRequest.
func NewInsertRequest(space string) *InsertRequest {
req := new(InsertRequest)
// MakeInsertRequest returns a new empty InsertRequest.
func MakeInsertRequest(space string) InsertRequest {
req := InsertRequest{}
req.impl = newCall("crud.insert")
req.space = space
req.tuple = []interface{}{}
req.opts = InsertOpts{}
return req
}

// Tuple sets the tuple for the InsertRequest request.
// Note: default value is nil.
func (req *InsertRequest) Tuple(tuple Tuple) *InsertRequest {
func (req InsertRequest) Tuple(tuple Tuple) InsertRequest {
req.tuple = tuple
return req
}

// Opts sets the options for the insert request.
// Note: default value is nil.
func (req *InsertRequest) Opts(opts InsertOpts) *InsertRequest {
func (req InsertRequest) Opts(opts InsertOpts) InsertRequest {
req.opts = opts
return req
}

// Body fills an encoder with the call request body.
func (req *InsertRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
func (req InsertRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
if req.tuple == nil {
req.tuple = []interface{}{}
}
args := insertArgs{Space: req.space, Tuple: req.tuple, Opts: req.opts}
req.impl = req.impl.Args(args)
return req.impl.Body(res, enc)
}

// Context sets a passed context to CRUD request.
func (req *InsertRequest) Context(ctx context.Context) *InsertRequest {
func (req InsertRequest) Context(ctx context.Context) InsertRequest {
req.impl = req.impl.Context(ctx)

return req
Expand All @@ -80,39 +82,41 @@ type insertObjectArgs struct {
Opts InsertObjectOpts
}

// NewInsertObjectRequest returns a new empty InsertObjectRequest.
func NewInsertObjectRequest(space string) *InsertObjectRequest {
req := new(InsertObjectRequest)
// MakeInsertObjectRequest returns a new empty InsertObjectRequest.
func MakeInsertObjectRequest(space string) InsertObjectRequest {
req := InsertObjectRequest{}
req.impl = newCall("crud.insert_object")
req.space = space
req.object = MapObject{}
req.opts = InsertObjectOpts{}
return req
}

// Object sets the tuple for the InsertObjectRequest request.
// Note: default value is nil.
func (req *InsertObjectRequest) Object(object Object) *InsertObjectRequest {
func (req InsertObjectRequest) Object(object Object) InsertObjectRequest {
req.object = object
return req
}

// Opts sets the options for the InsertObjectRequest request.
// Note: default value is nil.
func (req *InsertObjectRequest) Opts(opts InsertObjectOpts) *InsertObjectRequest {
func (req InsertObjectRequest) Opts(opts InsertObjectOpts) InsertObjectRequest {
req.opts = opts
return req
}

// Body fills an encoder with the call request body.
func (req *InsertObjectRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
func (req InsertObjectRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
if req.object == nil {
req.object = MapObject{}
}
args := insertObjectArgs{Space: req.space, Object: req.object, Opts: req.opts}
req.impl = req.impl.Args(args)
return req.impl.Body(res, enc)
}

// Context sets a passed context to CRUD request.
func (req *InsertObjectRequest) Context(ctx context.Context) *InsertObjectRequest {
func (req InsertObjectRequest) Context(ctx context.Context) InsertObjectRequest {
req.impl = req.impl.Context(ctx)

return req
Expand Down
36 changes: 20 additions & 16 deletions crud/insert_many.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,39 +24,41 @@ type insertManyArgs struct {
Opts InsertManyOpts
}

// NewInsertManyRequest returns a new empty InsertManyRequest.
func NewInsertManyRequest(space string) *InsertManyRequest {
req := new(InsertManyRequest)
// MakeInsertManyRequest returns a new empty InsertManyRequest.
func MakeInsertManyRequest(space string) InsertManyRequest {
req := InsertManyRequest{}
req.impl = newCall("crud.insert_many")
req.space = space
req.tuples = []Tuple{}
req.opts = InsertManyOpts{}
return req
}

// Tuples sets the tuples for the InsertManyRequest request.
// Note: default value is nil.
func (req *InsertManyRequest) Tuples(tuples []Tuple) *InsertManyRequest {
func (req InsertManyRequest) Tuples(tuples []Tuple) InsertManyRequest {
req.tuples = tuples
return req
}

// Opts sets the options for the InsertManyRequest request.
// Note: default value is nil.
func (req *InsertManyRequest) Opts(opts InsertManyOpts) *InsertManyRequest {
func (req InsertManyRequest) Opts(opts InsertManyOpts) InsertManyRequest {
req.opts = opts
return req
}

// Body fills an encoder with the call request body.
func (req *InsertManyRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
func (req InsertManyRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
if req.tuples == nil {
req.tuples = []Tuple{}
}
args := insertManyArgs{Space: req.space, Tuples: req.tuples, Opts: req.opts}
req.impl = req.impl.Args(args)
return req.impl.Body(res, enc)
}

// Context sets a passed context to CRUD request.
func (req *InsertManyRequest) Context(ctx context.Context) *InsertManyRequest {
func (req InsertManyRequest) Context(ctx context.Context) InsertManyRequest {
req.impl = req.impl.Context(ctx)

return req
Expand All @@ -80,39 +82,41 @@ type insertObjectManyArgs struct {
Opts InsertObjectManyOpts
}

// NewInsertObjectManyRequest returns a new empty InsertObjectManyRequest.
func NewInsertObjectManyRequest(space string) *InsertObjectManyRequest {
req := new(InsertObjectManyRequest)
// MakeInsertObjectManyRequest returns a new empty InsertObjectManyRequest.
func MakeInsertObjectManyRequest(space string) InsertObjectManyRequest {
req := InsertObjectManyRequest{}
req.impl = newCall("crud.insert_object_many")
req.space = space
req.objects = []Object{}
req.opts = InsertObjectManyOpts{}
return req
}

// Objects sets the objects for the InsertObjectManyRequest request.
// Note: default value is nil.
func (req *InsertObjectManyRequest) Objects(objects []Object) *InsertObjectManyRequest {
func (req InsertObjectManyRequest) Objects(objects []Object) InsertObjectManyRequest {
req.objects = objects
return req
}

// Opts sets the options for the InsertObjectManyRequest request.
// Note: default value is nil.
func (req *InsertObjectManyRequest) Opts(opts InsertObjectManyOpts) *InsertObjectManyRequest {
func (req InsertObjectManyRequest) Opts(opts InsertObjectManyOpts) InsertObjectManyRequest {
req.opts = opts
return req
}

// Body fills an encoder with the call request body.
func (req *InsertObjectManyRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
func (req InsertObjectManyRequest) Body(res tarantool.SchemaResolver, enc *encoder) error {
if req.objects == nil {
req.objects = []Object{}
}
args := insertObjectManyArgs{Space: req.space, Objects: req.objects, Opts: req.opts}
req.impl = req.impl.Args(args)
return req.impl.Body(res, enc)
}

// Context sets a passed context to CRUD request.
func (req *InsertObjectManyRequest) Context(ctx context.Context) *InsertObjectManyRequest {
func (req InsertObjectManyRequest) Context(ctx context.Context) InsertObjectManyRequest {
req.impl = req.impl.Context(ctx)

return req
Expand Down
Loading