[#1] Build REST Gateway with FrostFS dependencies

This commit is contained in:
Alexey Vanin 2022-12-15 13:03:54 +03:00 committed by Kirillov Denis
parent 2345fe6441
commit 803cafbbd5
70 changed files with 325 additions and 284 deletions

View file

@ -70,7 +70,7 @@ endif
# Generate server by swagger spec # Generate server by swagger spec
generate-server: swagger generate-server: swagger
./bin/swagger generate server -t gen -f ./spec/rest.yaml --exclude-main \ ./bin/swagger generate server -t gen -f ./spec/rest.yaml --exclude-main \
-A neofs-rest-gw -P models.Principal \ -A frostfs-rest-gw -P models.Principal \
-C templates/server-config.yaml --template-dir templates -C templates/server-config.yaml --template-dir templates
# Run tests # Run tests

View file

@ -10,15 +10,15 @@ import (
"strings" "strings"
"time" "time"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi"
"github.com/TrueCloudLab/frostfs-rest-gw/handlers"
"github.com/TrueCloudLab/frostfs-rest-gw/metrics"
"github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/nspcc-dev/neo-go/cli/flags" "github.com/nspcc-dev/neo-go/cli/flags"
"github.com/nspcc-dev/neo-go/cli/input" "github.com/nspcc-dev/neo-go/cli/input"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/crypto/keys"
"github.com/nspcc-dev/neo-go/pkg/util" "github.com/nspcc-dev/neo-go/pkg/util"
"github.com/nspcc-dev/neo-go/pkg/wallet" "github.com/nspcc-dev/neo-go/pkg/wallet"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi"
"github.com/nspcc-dev/neofs-rest-gw/handlers"
"github.com/nspcc-dev/neofs-rest-gw/metrics"
"github.com/nspcc-dev/neofs-sdk-go/pool"
"github.com/spf13/pflag" "github.com/spf13/pflag"
"github.com/spf13/viper" "github.com/spf13/viper"
"go.uber.org/zap" "go.uber.org/zap"

View file

@ -14,24 +14,24 @@ import (
"testing" "testing"
"time" "time"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/TrueCloudLab/frostfs-rest-gw/handlers"
"github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
"github.com/TrueCloudLab/frostfs-sdk-go/bearer"
"github.com/TrueCloudLab/frostfs-sdk-go/container"
"github.com/TrueCloudLab/frostfs-sdk-go/container/acl"
cid "github.com/TrueCloudLab/frostfs-sdk-go/container/id"
neofsecdsa "github.com/TrueCloudLab/frostfs-sdk-go/crypto/ecdsa"
"github.com/TrueCloudLab/frostfs-sdk-go/eacl"
"github.com/TrueCloudLab/frostfs-sdk-go/netmap"
"github.com/TrueCloudLab/frostfs-sdk-go/object"
oid "github.com/TrueCloudLab/frostfs-sdk-go/object/id"
"github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/TrueCloudLab/frostfs-sdk-go/user"
"github.com/go-openapi/loads" "github.com/go-openapi/loads"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/crypto/keys"
"github.com/nspcc-dev/neofs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
"github.com/nspcc-dev/neofs-rest-gw/handlers"
"github.com/nspcc-dev/neofs-rest-gw/internal/util"
"github.com/nspcc-dev/neofs-sdk-go/bearer"
"github.com/nspcc-dev/neofs-sdk-go/container"
"github.com/nspcc-dev/neofs-sdk-go/container/acl"
cid "github.com/nspcc-dev/neofs-sdk-go/container/id"
neofsecdsa "github.com/nspcc-dev/neofs-sdk-go/crypto/ecdsa"
"github.com/nspcc-dev/neofs-sdk-go/eacl"
"github.com/nspcc-dev/neofs-sdk-go/netmap"
"github.com/nspcc-dev/neofs-sdk-go/object"
oid "github.com/nspcc-dev/neofs-sdk-go/object/id"
"github.com/nspcc-dev/neofs-sdk-go/pool"
"github.com/nspcc-dev/neofs-sdk-go/user"
"github.com/spf13/viper" "github.com/spf13/viper"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"github.com/testcontainers/testcontainers-go" "github.com/testcontainers/testcontainers-go"
@ -166,7 +166,7 @@ func runServer(ctx context.Context, t *testing.T, node string) context.CancelFun
swaggerSpec, err := loads.Analyzed(restapi.SwaggerJSON, "") swaggerSpec, err := loads.Analyzed(restapi.SwaggerJSON, "")
require.NoError(t, err) require.NoError(t, err)
api := operations.NewNeofsRestGwAPI(swaggerSpec) api := operations.NewFrostfsRestGwAPI(swaggerSpec)
server := restapi.NewServer(api, serverConfig(v)) server := restapi.NewServer(api, serverConfig(v))
server.ConfigureAPI(neofsAPI.Configure) server.ConfigureAPI(neofsAPI.Configure)

View file

@ -5,9 +5,9 @@ import (
"os/signal" "os/signal"
"syscall" "syscall"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/go-openapi/loads" "github.com/go-openapi/loads"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
"go.uber.org/zap" "go.uber.org/zap"
) )
@ -31,7 +31,7 @@ func main() {
serverCfg := serverConfig(v) serverCfg := serverConfig(v)
serverCfg.SuccessfulStartCallback = neofsAPI.StartCallback serverCfg.SuccessfulStartCallback = neofsAPI.StartCallback
api := operations.NewNeofsRestGwAPI(swaggerSpec) api := operations.NewFrostfsRestGwAPI(swaggerSpec)
server := restapi.NewServer(api, serverCfg) server := restapi.NewServer(api, serverCfg)
defer func() { defer func() {
if err = server.Shutdown(); err != nil { if err = server.Shutdown(); err != nil {

View file

@ -29,10 +29,10 @@ func NewAuth(ctx *middleware.Context, handler AuthHandler) *Auth {
return &Auth{Context: ctx, Handler: handler} return &Auth{Context: ctx, Handler: handler}
} }
/* Auth swagger:route POST /auth auth /*
Auth swagger:route POST /auth auth
Form bearer token to further requests Form bearer token to further requests
*/ */
type Auth struct { type Auth struct {
Context *middleware.Context Context *middleware.Context

View file

@ -16,7 +16,7 @@ import (
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"github.com/go-openapi/validate" "github.com/go-openapi/validate"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// NewAuthParams creates a new AuthParams object // NewAuthParams creates a new AuthParams object

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// AuthOKCode is the HTTP code returned for type AuthOK // AuthOKCode is the HTTP code returned for type AuthOK
const AuthOKCode int = 200 const AuthOKCode int = 200
/*AuthOK Base64 encoded stable binary marshaled bearer token bodies. /*
AuthOK Base64 encoded stable binary marshaled bearer token bodies.
swagger:response authOK swagger:response authOK
*/ */
@ -85,7 +86,8 @@ func (o *AuthOK) WriteResponse(rw http.ResponseWriter, producer runtime.Producer
// AuthBadRequestCode is the HTTP code returned for type AuthBadRequest // AuthBadRequestCode is the HTTP code returned for type AuthBadRequest
const AuthBadRequestCode int = 400 const AuthBadRequestCode int = 400
/*AuthBadRequest Bad request /*
AuthBadRequest Bad request
swagger:response authBadRequest swagger:response authBadRequest
*/ */

View file

@ -10,7 +10,7 @@ import (
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// DeleteContainerHandlerFunc turns a function with the right signature into a delete container handler // DeleteContainerHandlerFunc turns a function with the right signature into a delete container handler
@ -31,10 +31,10 @@ func NewDeleteContainer(ctx *middleware.Context, handler DeleteContainerHandler)
return &DeleteContainer{Context: ctx, Handler: handler} return &DeleteContainer{Context: ctx, Handler: handler}
} }
/* DeleteContainer swagger:route DELETE /containers/{containerId} deleteContainer /*
DeleteContainer swagger:route DELETE /containers/{containerId} deleteContainer
Delete container by id Delete container by id
*/ */
type DeleteContainer struct { type DeleteContainer struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// DeleteContainerOKCode is the HTTP code returned for type DeleteContainerOK // DeleteContainerOKCode is the HTTP code returned for type DeleteContainerOK
const DeleteContainerOKCode int = 200 const DeleteContainerOKCode int = 200
/*DeleteContainerOK Successful deletion. /*
DeleteContainerOK Successful deletion.
swagger:response deleteContainerOK swagger:response deleteContainerOK
*/ */
@ -82,7 +83,8 @@ func (o *DeleteContainerOK) WriteResponse(rw http.ResponseWriter, producer runti
// DeleteContainerBadRequestCode is the HTTP code returned for type DeleteContainerBadRequest // DeleteContainerBadRequestCode is the HTTP code returned for type DeleteContainerBadRequest
const DeleteContainerBadRequestCode int = 400 const DeleteContainerBadRequestCode int = 400
/*DeleteContainerBadRequest Bad request. /*
DeleteContainerBadRequest Bad request.
swagger:response deleteContainerBadRequest swagger:response deleteContainerBadRequest
*/ */

View file

@ -10,7 +10,7 @@ import (
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// DeleteObjectHandlerFunc turns a function with the right signature into a delete object handler // DeleteObjectHandlerFunc turns a function with the right signature into a delete object handler
@ -31,10 +31,10 @@ func NewDeleteObject(ctx *middleware.Context, handler DeleteObjectHandler) *Dele
return &DeleteObject{Context: ctx, Handler: handler} return &DeleteObject{Context: ctx, Handler: handler}
} }
/* DeleteObject swagger:route DELETE /objects/{containerId}/{objectId} deleteObject /*
DeleteObject swagger:route DELETE /objects/{containerId}/{objectId} deleteObject
Remove object from NeoFS Remove object from NeoFS
*/ */
type DeleteObject struct { type DeleteObject struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// DeleteObjectOKCode is the HTTP code returned for type DeleteObjectOK // DeleteObjectOKCode is the HTTP code returned for type DeleteObjectOK
const DeleteObjectOKCode int = 200 const DeleteObjectOKCode int = 200
/*DeleteObjectOK Successful deletion. /*
DeleteObjectOK Successful deletion.
swagger:response deleteObjectOK swagger:response deleteObjectOK
*/ */
@ -82,7 +83,8 @@ func (o *DeleteObjectOK) WriteResponse(rw http.ResponseWriter, producer runtime.
// DeleteObjectBadRequestCode is the HTTP code returned for type DeleteObjectBadRequest // DeleteObjectBadRequestCode is the HTTP code returned for type DeleteObjectBadRequest
const DeleteObjectBadRequestCode int = 400 const DeleteObjectBadRequestCode int = 400
/*DeleteObjectBadRequest Bad request. /*
DeleteObjectBadRequest Bad request.
swagger:response deleteObjectBadRequest swagger:response deleteObjectBadRequest
*/ */

View file

@ -10,7 +10,7 @@ import (
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// FormBinaryBearerHandlerFunc turns a function with the right signature into a form binary bearer handler // FormBinaryBearerHandlerFunc turns a function with the right signature into a form binary bearer handler
@ -31,10 +31,10 @@ func NewFormBinaryBearer(ctx *middleware.Context, handler FormBinaryBearerHandle
return &FormBinaryBearer{Context: ctx, Handler: handler} return &FormBinaryBearer{Context: ctx, Handler: handler}
} }
/* FormBinaryBearer swagger:route GET /auth/bearer formBinaryBearer /*
FormBinaryBearer swagger:route GET /auth/bearer formBinaryBearer
Form binary bearer token Form binary bearer token
*/ */
type FormBinaryBearer struct { type FormBinaryBearer struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// FormBinaryBearerOKCode is the HTTP code returned for type FormBinaryBearerOK // FormBinaryBearerOKCode is the HTTP code returned for type FormBinaryBearerOK
const FormBinaryBearerOKCode int = 200 const FormBinaryBearerOKCode int = 200
/*FormBinaryBearerOK Base64 encoded stable binary marshaled bearer token. /*
FormBinaryBearerOK Base64 encoded stable binary marshaled bearer token.
swagger:response formBinaryBearerOK swagger:response formBinaryBearerOK
*/ */
@ -82,7 +83,8 @@ func (o *FormBinaryBearerOK) WriteResponse(rw http.ResponseWriter, producer runt
// FormBinaryBearerBadRequestCode is the HTTP code returned for type FormBinaryBearerBadRequest // FormBinaryBearerBadRequestCode is the HTTP code returned for type FormBinaryBearerBadRequest
const FormBinaryBearerBadRequestCode int = 400 const FormBinaryBearerBadRequestCode int = 400
/*FormBinaryBearerBadRequest Bad request /*
FormBinaryBearerBadRequest Bad request
swagger:response formBinaryBearerBadRequest swagger:response formBinaryBearerBadRequest
*/ */

View file

@ -19,12 +19,12 @@ import (
"github.com/go-openapi/strfmt" "github.com/go-openapi/strfmt"
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// NewNeofsRestGwAPI creates a new NeofsRestGw instance // NewFrostfsRestGwAPI creates a new FrostfsRestGw instance
func NewNeofsRestGwAPI(spec *loads.Document) *NeofsRestGwAPI { func NewFrostfsRestGwAPI(spec *loads.Document) *FrostfsRestGwAPI {
return &NeofsRestGwAPI{ return &FrostfsRestGwAPI{
handlers: make(map[string]map[string]http.Handler), handlers: make(map[string]map[string]http.Handler),
formats: strfmt.Default, formats: strfmt.Default,
defaultConsumes: "application/json", defaultConsumes: "application/json",
@ -117,8 +117,8 @@ func NewNeofsRestGwAPI(spec *loads.Document) *NeofsRestGwAPI {
} }
} }
/*NeofsRestGwAPI REST API for native integration with NeoFS. */ /*FrostfsRestGwAPI REST API for native integration with NeoFS. */
type NeofsRestGwAPI struct { type FrostfsRestGwAPI struct {
spec *loads.Document spec *loads.Document
context *middleware.Context context *middleware.Context
handlers map[string]map[string]http.Handler handlers map[string]map[string]http.Handler
@ -220,52 +220,52 @@ type NeofsRestGwAPI struct {
} }
// UseRedoc for documentation at /docs // UseRedoc for documentation at /docs
func (o *NeofsRestGwAPI) UseRedoc() { func (o *FrostfsRestGwAPI) UseRedoc() {
o.useSwaggerUI = false o.useSwaggerUI = false
} }
// UseSwaggerUI for documentation at /docs // UseSwaggerUI for documentation at /docs
func (o *NeofsRestGwAPI) UseSwaggerUI() { func (o *FrostfsRestGwAPI) UseSwaggerUI() {
o.useSwaggerUI = true o.useSwaggerUI = true
} }
// SetDefaultProduces sets the default produces media type // SetDefaultProduces sets the default produces media type
func (o *NeofsRestGwAPI) SetDefaultProduces(mediaType string) { func (o *FrostfsRestGwAPI) SetDefaultProduces(mediaType string) {
o.defaultProduces = mediaType o.defaultProduces = mediaType
} }
// SetDefaultConsumes returns the default consumes media type // SetDefaultConsumes returns the default consumes media type
func (o *NeofsRestGwAPI) SetDefaultConsumes(mediaType string) { func (o *FrostfsRestGwAPI) SetDefaultConsumes(mediaType string) {
o.defaultConsumes = mediaType o.defaultConsumes = mediaType
} }
// SetSpec sets a spec that will be served for the clients. // SetSpec sets a spec that will be served for the clients.
func (o *NeofsRestGwAPI) SetSpec(spec *loads.Document) { func (o *FrostfsRestGwAPI) SetSpec(spec *loads.Document) {
o.spec = spec o.spec = spec
} }
// DefaultProduces returns the default produces media type // DefaultProduces returns the default produces media type
func (o *NeofsRestGwAPI) DefaultProduces() string { func (o *FrostfsRestGwAPI) DefaultProduces() string {
return o.defaultProduces return o.defaultProduces
} }
// DefaultConsumes returns the default consumes media type // DefaultConsumes returns the default consumes media type
func (o *NeofsRestGwAPI) DefaultConsumes() string { func (o *FrostfsRestGwAPI) DefaultConsumes() string {
return o.defaultConsumes return o.defaultConsumes
} }
// Formats returns the registered string formats // Formats returns the registered string formats
func (o *NeofsRestGwAPI) Formats() strfmt.Registry { func (o *FrostfsRestGwAPI) Formats() strfmt.Registry {
return o.formats return o.formats
} }
// RegisterFormat registers a custom format validator // RegisterFormat registers a custom format validator
func (o *NeofsRestGwAPI) RegisterFormat(name string, format strfmt.Format, validator strfmt.Validator) { func (o *FrostfsRestGwAPI) RegisterFormat(name string, format strfmt.Format, validator strfmt.Validator) {
o.formats.Add(name, format, validator) o.formats.Add(name, format, validator)
} }
// Validate validates the registrations in the NeofsRestGwAPI // Validate validates the registrations in the FrostfsRestGwAPI
func (o *NeofsRestGwAPI) Validate() error { func (o *FrostfsRestGwAPI) Validate() error {
var unregistered []string var unregistered []string
if o.JSONConsumer == nil { if o.JSONConsumer == nil {
@ -352,12 +352,12 @@ func (o *NeofsRestGwAPI) Validate() error {
} }
// ServeErrorFor gets a error handler for a given operation id // ServeErrorFor gets a error handler for a given operation id
func (o *NeofsRestGwAPI) ServeErrorFor(operationID string) func(http.ResponseWriter, *http.Request, error) { func (o *FrostfsRestGwAPI) ServeErrorFor(operationID string) func(http.ResponseWriter, *http.Request, error) {
return o.ServeError return o.ServeError
} }
// AuthenticatorsFor gets the authenticators for the specified security schemes // AuthenticatorsFor gets the authenticators for the specified security schemes
func (o *NeofsRestGwAPI) AuthenticatorsFor(schemes map[string]spec.SecurityScheme) map[string]runtime.Authenticator { func (o *FrostfsRestGwAPI) AuthenticatorsFor(schemes map[string]spec.SecurityScheme) map[string]runtime.Authenticator {
result := make(map[string]runtime.Authenticator) result := make(map[string]runtime.Authenticator)
for name := range schemes { for name := range schemes {
switch name { switch name {
@ -373,13 +373,13 @@ func (o *NeofsRestGwAPI) AuthenticatorsFor(schemes map[string]spec.SecuritySchem
} }
// Authorizer returns the registered authorizer // Authorizer returns the registered authorizer
func (o *NeofsRestGwAPI) Authorizer() runtime.Authorizer { func (o *FrostfsRestGwAPI) Authorizer() runtime.Authorizer {
return o.APIAuthorizer return o.APIAuthorizer
} }
// ConsumersFor gets the consumers for the specified media types. // ConsumersFor gets the consumers for the specified media types.
// MIME type parameters are ignored here. // MIME type parameters are ignored here.
func (o *NeofsRestGwAPI) ConsumersFor(mediaTypes []string) map[string]runtime.Consumer { func (o *FrostfsRestGwAPI) ConsumersFor(mediaTypes []string) map[string]runtime.Consumer {
result := make(map[string]runtime.Consumer, len(mediaTypes)) result := make(map[string]runtime.Consumer, len(mediaTypes))
for _, mt := range mediaTypes { for _, mt := range mediaTypes {
switch mt { switch mt {
@ -396,7 +396,7 @@ func (o *NeofsRestGwAPI) ConsumersFor(mediaTypes []string) map[string]runtime.Co
// ProducersFor gets the producers for the specified media types. // ProducersFor gets the producers for the specified media types.
// MIME type parameters are ignored here. // MIME type parameters are ignored here.
func (o *NeofsRestGwAPI) ProducersFor(mediaTypes []string) map[string]runtime.Producer { func (o *FrostfsRestGwAPI) ProducersFor(mediaTypes []string) map[string]runtime.Producer {
result := make(map[string]runtime.Producer, len(mediaTypes)) result := make(map[string]runtime.Producer, len(mediaTypes))
for _, mt := range mediaTypes { for _, mt := range mediaTypes {
switch mt { switch mt {
@ -412,7 +412,7 @@ func (o *NeofsRestGwAPI) ProducersFor(mediaTypes []string) map[string]runtime.Pr
} }
// HandlerFor gets a http.Handler for the provided operation method and path // HandlerFor gets a http.Handler for the provided operation method and path
func (o *NeofsRestGwAPI) HandlerFor(method, path string) (http.Handler, bool) { func (o *FrostfsRestGwAPI) HandlerFor(method, path string) (http.Handler, bool) {
if o.handlers == nil { if o.handlers == nil {
return nil, false return nil, false
} }
@ -427,8 +427,8 @@ func (o *NeofsRestGwAPI) HandlerFor(method, path string) (http.Handler, bool) {
return h, ok return h, ok
} }
// Context returns the middleware context for the neofs rest gw API // Context returns the middleware context for the frostfs rest gw API
func (o *NeofsRestGwAPI) Context() *middleware.Context { func (o *FrostfsRestGwAPI) Context() *middleware.Context {
if o.context == nil { if o.context == nil {
o.context = middleware.NewRoutableContext(o.spec, o, nil) o.context = middleware.NewRoutableContext(o.spec, o, nil)
} }
@ -436,7 +436,7 @@ func (o *NeofsRestGwAPI) Context() *middleware.Context {
return o.context return o.context
} }
func (o *NeofsRestGwAPI) initHandlerCache() { func (o *FrostfsRestGwAPI) initHandlerCache() {
o.Context() // don't care about the result, just that the initialization happened o.Context() // don't care about the result, just that the initialization happened
if o.handlers == nil { if o.handlers == nil {
o.handlers = make(map[string]map[string]http.Handler) o.handlers = make(map[string]map[string]http.Handler)
@ -530,7 +530,7 @@ func (o *NeofsRestGwAPI) initHandlerCache() {
// Serve creates a http handler to serve the API over HTTP // Serve creates a http handler to serve the API over HTTP
// can be used directly in http.ListenAndServe(":8000", api.Serve(nil)) // can be used directly in http.ListenAndServe(":8000", api.Serve(nil))
func (o *NeofsRestGwAPI) Serve(builder middleware.Builder) http.Handler { func (o *FrostfsRestGwAPI) Serve(builder middleware.Builder) http.Handler {
o.Init() o.Init()
if o.Middleware != nil { if o.Middleware != nil {
@ -543,24 +543,24 @@ func (o *NeofsRestGwAPI) Serve(builder middleware.Builder) http.Handler {
} }
// Init allows you to just initialize the handler cache, you can then recompose the middleware as you see fit // Init allows you to just initialize the handler cache, you can then recompose the middleware as you see fit
func (o *NeofsRestGwAPI) Init() { func (o *FrostfsRestGwAPI) Init() {
if len(o.handlers) == 0 { if len(o.handlers) == 0 {
o.initHandlerCache() o.initHandlerCache()
} }
} }
// RegisterConsumer allows you to add (or override) a consumer for a media type. // RegisterConsumer allows you to add (or override) a consumer for a media type.
func (o *NeofsRestGwAPI) RegisterConsumer(mediaType string, consumer runtime.Consumer) { func (o *FrostfsRestGwAPI) RegisterConsumer(mediaType string, consumer runtime.Consumer) {
o.customConsumers[mediaType] = consumer o.customConsumers[mediaType] = consumer
} }
// RegisterProducer allows you to add (or override) a producer for a media type. // RegisterProducer allows you to add (or override) a producer for a media type.
func (o *NeofsRestGwAPI) RegisterProducer(mediaType string, producer runtime.Producer) { func (o *FrostfsRestGwAPI) RegisterProducer(mediaType string, producer runtime.Producer) {
o.customProducers[mediaType] = producer o.customProducers[mediaType] = producer
} }
// AddMiddlewareFor adds a http middleware to existing handler // AddMiddlewareFor adds a http middleware to existing handler
func (o *NeofsRestGwAPI) AddMiddlewareFor(method, path string, builder middleware.Builder) { func (o *FrostfsRestGwAPI) AddMiddlewareFor(method, path string, builder middleware.Builder) {
um := strings.ToUpper(method) um := strings.ToUpper(method)
if path == "/" { if path == "/" {
path = "" path = ""

View file

@ -29,12 +29,12 @@ func NewGetBalance(ctx *middleware.Context, handler GetBalanceHandler) *GetBalan
return &GetBalance{Context: ctx, Handler: handler} return &GetBalance{Context: ctx, Handler: handler}
} }
/* GetBalance swagger:route GET /accounting/balance/{address} getBalance /*
GetBalance swagger:route GET /accounting/balance/{address} getBalance
Get balance in NeoFS # Get balance in NeoFS
Getting balance of provided wallet address in NeoFS. Getting balance of provided wallet address in NeoFS.
*/ */
type GetBalance struct { type GetBalance struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// GetBalanceOKCode is the HTTP code returned for type GetBalanceOK // GetBalanceOKCode is the HTTP code returned for type GetBalanceOK
const GetBalanceOKCode int = 200 const GetBalanceOKCode int = 200
/*GetBalanceOK Balance of address in NeoFS /*
GetBalanceOK Balance of address in NeoFS
swagger:response getBalanceOK swagger:response getBalanceOK
*/ */
@ -82,7 +83,8 @@ func (o *GetBalanceOK) WriteResponse(rw http.ResponseWriter, producer runtime.Pr
// GetBalanceBadRequestCode is the HTTP code returned for type GetBalanceBadRequest // GetBalanceBadRequestCode is the HTTP code returned for type GetBalanceBadRequest
const GetBalanceBadRequestCode int = 400 const GetBalanceBadRequestCode int = 400
/*GetBalanceBadRequest Bad request /*
GetBalanceBadRequest Bad request
swagger:response getBalanceBadRequest swagger:response getBalanceBadRequest
*/ */

View file

@ -29,10 +29,10 @@ func NewGetContainer(ctx *middleware.Context, handler GetContainerHandler) *GetC
return &GetContainer{Context: ctx, Handler: handler} return &GetContainer{Context: ctx, Handler: handler}
} }
/* GetContainer swagger:route GET /containers/{containerId} getContainer /*
GetContainer swagger:route GET /containers/{containerId} getContainer
Get container by id Get container by id
*/ */
type GetContainer struct { type GetContainer struct {
Context *middleware.Context Context *middleware.Context

View file

@ -29,10 +29,10 @@ func NewGetContainerEACL(ctx *middleware.Context, handler GetContainerEACLHandle
return &GetContainerEACL{Context: ctx, Handler: handler} return &GetContainerEACL{Context: ctx, Handler: handler}
} }
/* GetContainerEACL swagger:route GET /containers/{containerId}/eacl getContainerEAcl /*
GetContainerEACL swagger:route GET /containers/{containerId}/eacl getContainerEAcl
Get container EACL by id Get container EACL by id
*/ */
type GetContainerEACL struct { type GetContainerEACL struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// GetContainerEACLOKCode is the HTTP code returned for type GetContainerEACLOK // GetContainerEACLOKCode is the HTTP code returned for type GetContainerEACLOK
const GetContainerEACLOKCode int = 200 const GetContainerEACLOKCode int = 200
/*GetContainerEACLOK Container EACL information. /*
GetContainerEACLOK Container EACL information.
swagger:response getContainerEAclOK swagger:response getContainerEAclOK
*/ */
@ -82,7 +83,8 @@ func (o *GetContainerEACLOK) WriteResponse(rw http.ResponseWriter, producer runt
// GetContainerEACLBadRequestCode is the HTTP code returned for type GetContainerEACLBadRequest // GetContainerEACLBadRequestCode is the HTTP code returned for type GetContainerEACLBadRequest
const GetContainerEACLBadRequestCode int = 400 const GetContainerEACLBadRequestCode int = 400
/*GetContainerEACLBadRequest Bad request. /*
GetContainerEACLBadRequest Bad request.
swagger:response getContainerEAclBadRequest swagger:response getContainerEAclBadRequest
*/ */

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// GetContainerOKCode is the HTTP code returned for type GetContainerOK // GetContainerOKCode is the HTTP code returned for type GetContainerOK
const GetContainerOKCode int = 200 const GetContainerOKCode int = 200
/*GetContainerOK Container info. /*
GetContainerOK Container info.
swagger:response getContainerOK swagger:response getContainerOK
*/ */
@ -82,7 +83,8 @@ func (o *GetContainerOK) WriteResponse(rw http.ResponseWriter, producer runtime.
// GetContainerBadRequestCode is the HTTP code returned for type GetContainerBadRequest // GetContainerBadRequestCode is the HTTP code returned for type GetContainerBadRequest
const GetContainerBadRequestCode int = 400 const GetContainerBadRequestCode int = 400
/*GetContainerBadRequest Bad request. /*
GetContainerBadRequest Bad request.
swagger:response getContainerBadRequest swagger:response getContainerBadRequest
*/ */

View file

@ -10,7 +10,7 @@ import (
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// GetObjectInfoHandlerFunc turns a function with the right signature into a get object info handler // GetObjectInfoHandlerFunc turns a function with the right signature into a get object info handler
@ -31,10 +31,10 @@ func NewGetObjectInfo(ctx *middleware.Context, handler GetObjectInfoHandler) *Ge
return &GetObjectInfo{Context: ctx, Handler: handler} return &GetObjectInfo{Context: ctx, Handler: handler}
} }
/* GetObjectInfo swagger:route GET /objects/{containerId}/{objectId} getObjectInfo /*
GetObjectInfo swagger:route GET /objects/{containerId}/{objectId} getObjectInfo
Get object info by address Get object info by address
*/ */
type GetObjectInfo struct { type GetObjectInfo struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// GetObjectInfoOKCode is the HTTP code returned for type GetObjectInfoOK // GetObjectInfoOKCode is the HTTP code returned for type GetObjectInfoOK
const GetObjectInfoOKCode int = 200 const GetObjectInfoOKCode int = 200
/*GetObjectInfoOK Object info /*
GetObjectInfoOK Object info
swagger:response getObjectInfoOK swagger:response getObjectInfoOK
*/ */
@ -82,7 +83,8 @@ func (o *GetObjectInfoOK) WriteResponse(rw http.ResponseWriter, producer runtime
// GetObjectInfoBadRequestCode is the HTTP code returned for type GetObjectInfoBadRequest // GetObjectInfoBadRequestCode is the HTTP code returned for type GetObjectInfoBadRequest
const GetObjectInfoBadRequestCode int = 400 const GetObjectInfoBadRequestCode int = 400
/*GetObjectInfoBadRequest Bad request /*
GetObjectInfoBadRequest Bad request
swagger:response getObjectInfoBadRequest swagger:response getObjectInfoBadRequest
*/ */

View file

@ -29,10 +29,10 @@ func NewListContainers(ctx *middleware.Context, handler ListContainersHandler) *
return &ListContainers{Context: ctx, Handler: handler} return &ListContainers{Context: ctx, Handler: handler}
} }
/* ListContainers swagger:route GET /containers listContainers /*
ListContainers swagger:route GET /containers listContainers
Get list of containers Get list of containers
*/ */
type ListContainers struct { type ListContainers struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// ListContainersOKCode is the HTTP code returned for type ListContainersOK // ListContainersOKCode is the HTTP code returned for type ListContainersOK
const ListContainersOKCode int = 200 const ListContainersOKCode int = 200
/*ListContainersOK Containers info. /*
ListContainersOK Containers info.
swagger:response listContainersOK swagger:response listContainersOK
*/ */
@ -82,7 +83,8 @@ func (o *ListContainersOK) WriteResponse(rw http.ResponseWriter, producer runtim
// ListContainersBadRequestCode is the HTTP code returned for type ListContainersBadRequest // ListContainersBadRequestCode is the HTTP code returned for type ListContainersBadRequest
const ListContainersBadRequestCode int = 400 const ListContainersBadRequestCode int = 400
/*ListContainersBadRequest Bad request. /*
ListContainersBadRequest Bad request.
swagger:response listContainersBadRequest swagger:response listContainersBadRequest
*/ */

View file

@ -29,10 +29,10 @@ func NewOptionsAuth(ctx *middleware.Context, handler OptionsAuthHandler) *Option
return &OptionsAuth{Context: ctx, Handler: handler} return &OptionsAuth{Context: ctx, Handler: handler}
} }
/* OptionsAuth swagger:route OPTIONS /auth optionsAuth /*
OptionsAuth swagger:route OPTIONS /auth optionsAuth
OptionsAuth options auth API OptionsAuth options auth API
*/ */
type OptionsAuth struct { type OptionsAuth struct {
Context *middleware.Context Context *middleware.Context

View file

@ -29,10 +29,10 @@ func NewOptionsAuthBearer(ctx *middleware.Context, handler OptionsAuthBearerHand
return &OptionsAuthBearer{Context: ctx, Handler: handler} return &OptionsAuthBearer{Context: ctx, Handler: handler}
} }
/* OptionsAuthBearer swagger:route OPTIONS /auth/bearer optionsAuthBearer /*
OptionsAuthBearer swagger:route OPTIONS /auth/bearer optionsAuthBearer
OptionsAuthBearer options auth bearer API OptionsAuthBearer options auth bearer API
*/ */
type OptionsAuthBearer struct { type OptionsAuthBearer struct {
Context *middleware.Context Context *middleware.Context

View file

@ -14,7 +14,8 @@ import (
// OptionsAuthBearerOKCode is the HTTP code returned for type OptionsAuthBearerOK // OptionsAuthBearerOKCode is the HTTP code returned for type OptionsAuthBearerOK
const OptionsAuthBearerOKCode int = 200 const OptionsAuthBearerOKCode int = 200
/*OptionsAuthBearerOK CORS /*
OptionsAuthBearerOK CORS
swagger:response optionsAuthBearerOK swagger:response optionsAuthBearerOK
*/ */

View file

@ -14,7 +14,8 @@ import (
// OptionsAuthOKCode is the HTTP code returned for type OptionsAuthOK // OptionsAuthOKCode is the HTTP code returned for type OptionsAuthOK
const OptionsAuthOKCode int = 200 const OptionsAuthOKCode int = 200
/*OptionsAuthOK CORS /*
OptionsAuthOK CORS
swagger:response optionsAuthOK swagger:response optionsAuthOK
*/ */

View file

@ -29,10 +29,10 @@ func NewOptionsContainersEACL(ctx *middleware.Context, handler OptionsContainers
return &OptionsContainersEACL{Context: ctx, Handler: handler} return &OptionsContainersEACL{Context: ctx, Handler: handler}
} }
/* OptionsContainersEACL swagger:route OPTIONS /containers/{containerId}/eacl optionsContainersEAcl /*
OptionsContainersEACL swagger:route OPTIONS /containers/{containerId}/eacl optionsContainersEAcl
OptionsContainersEACL options containers e ACL API OptionsContainersEACL options containers e ACL API
*/ */
type OptionsContainersEACL struct { type OptionsContainersEACL struct {
Context *middleware.Context Context *middleware.Context

View file

@ -14,7 +14,8 @@ import (
// OptionsContainersEACLOKCode is the HTTP code returned for type OptionsContainersEACLOK // OptionsContainersEACLOKCode is the HTTP code returned for type OptionsContainersEACLOK
const OptionsContainersEACLOKCode int = 200 const OptionsContainersEACLOKCode int = 200
/*OptionsContainersEACLOK CORS /*
OptionsContainersEACLOK CORS
swagger:response optionsContainersEAclOK swagger:response optionsContainersEAclOK
*/ */

View file

@ -29,10 +29,10 @@ func NewOptionsContainersGetDelete(ctx *middleware.Context, handler OptionsConta
return &OptionsContainersGetDelete{Context: ctx, Handler: handler} return &OptionsContainersGetDelete{Context: ctx, Handler: handler}
} }
/* OptionsContainersGetDelete swagger:route OPTIONS /containers/{containerId} optionsContainersGetDelete /*
OptionsContainersGetDelete swagger:route OPTIONS /containers/{containerId} optionsContainersGetDelete
OptionsContainersGetDelete options containers get delete API OptionsContainersGetDelete options containers get delete API
*/ */
type OptionsContainersGetDelete struct { type OptionsContainersGetDelete struct {
Context *middleware.Context Context *middleware.Context

View file

@ -14,7 +14,8 @@ import (
// OptionsContainersGetDeleteOKCode is the HTTP code returned for type OptionsContainersGetDeleteOK // OptionsContainersGetDeleteOKCode is the HTTP code returned for type OptionsContainersGetDeleteOK
const OptionsContainersGetDeleteOKCode int = 200 const OptionsContainersGetDeleteOKCode int = 200
/*OptionsContainersGetDeleteOK CORS /*
OptionsContainersGetDeleteOK CORS
swagger:response optionsContainersGetDeleteOK swagger:response optionsContainersGetDeleteOK
*/ */

View file

@ -29,10 +29,10 @@ func NewOptionsContainersPutList(ctx *middleware.Context, handler OptionsContain
return &OptionsContainersPutList{Context: ctx, Handler: handler} return &OptionsContainersPutList{Context: ctx, Handler: handler}
} }
/* OptionsContainersPutList swagger:route OPTIONS /containers optionsContainersPutList /*
OptionsContainersPutList swagger:route OPTIONS /containers optionsContainersPutList
OptionsContainersPutList options containers put list API OptionsContainersPutList options containers put list API
*/ */
type OptionsContainersPutList struct { type OptionsContainersPutList struct {
Context *middleware.Context Context *middleware.Context

View file

@ -14,7 +14,8 @@ import (
// OptionsContainersPutListOKCode is the HTTP code returned for type OptionsContainersPutListOK // OptionsContainersPutListOKCode is the HTTP code returned for type OptionsContainersPutListOK
const OptionsContainersPutListOKCode int = 200 const OptionsContainersPutListOKCode int = 200
/*OptionsContainersPutListOK CORS /*
OptionsContainersPutListOK CORS
swagger:response optionsContainersPutListOK swagger:response optionsContainersPutListOK
*/ */

View file

@ -29,10 +29,10 @@ func NewOptionsObjectsGetDelete(ctx *middleware.Context, handler OptionsObjectsG
return &OptionsObjectsGetDelete{Context: ctx, Handler: handler} return &OptionsObjectsGetDelete{Context: ctx, Handler: handler}
} }
/* OptionsObjectsGetDelete swagger:route OPTIONS /objects/{containerId}/{objectId} optionsObjectsGetDelete /*
OptionsObjectsGetDelete swagger:route OPTIONS /objects/{containerId}/{objectId} optionsObjectsGetDelete
OptionsObjectsGetDelete options objects get delete API OptionsObjectsGetDelete options objects get delete API
*/ */
type OptionsObjectsGetDelete struct { type OptionsObjectsGetDelete struct {
Context *middleware.Context Context *middleware.Context

View file

@ -14,7 +14,8 @@ import (
// OptionsObjectsGetDeleteOKCode is the HTTP code returned for type OptionsObjectsGetDeleteOK // OptionsObjectsGetDeleteOKCode is the HTTP code returned for type OptionsObjectsGetDeleteOK
const OptionsObjectsGetDeleteOKCode int = 200 const OptionsObjectsGetDeleteOKCode int = 200
/*OptionsObjectsGetDeleteOK CORS /*
OptionsObjectsGetDeleteOK CORS
swagger:response optionsObjectsGetDeleteOK swagger:response optionsObjectsGetDeleteOK
*/ */

View file

@ -29,10 +29,10 @@ func NewOptionsObjectsPut(ctx *middleware.Context, handler OptionsObjectsPutHand
return &OptionsObjectsPut{Context: ctx, Handler: handler} return &OptionsObjectsPut{Context: ctx, Handler: handler}
} }
/* OptionsObjectsPut swagger:route OPTIONS /objects optionsObjectsPut /*
OptionsObjectsPut swagger:route OPTIONS /objects optionsObjectsPut
OptionsObjectsPut options objects put API OptionsObjectsPut options objects put API
*/ */
type OptionsObjectsPut struct { type OptionsObjectsPut struct {
Context *middleware.Context Context *middleware.Context

View file

@ -14,7 +14,8 @@ import (
// OptionsObjectsPutOKCode is the HTTP code returned for type OptionsObjectsPutOK // OptionsObjectsPutOKCode is the HTTP code returned for type OptionsObjectsPutOK
const OptionsObjectsPutOKCode int = 200 const OptionsObjectsPutOKCode int = 200
/*OptionsObjectsPutOK CORS /*
OptionsObjectsPutOK CORS
swagger:response optionsObjectsPutOK swagger:response optionsObjectsPutOK
*/ */

View file

@ -29,10 +29,10 @@ func NewOptionsObjectsSearch(ctx *middleware.Context, handler OptionsObjectsSear
return &OptionsObjectsSearch{Context: ctx, Handler: handler} return &OptionsObjectsSearch{Context: ctx, Handler: handler}
} }
/* OptionsObjectsSearch swagger:route OPTIONS /objects/{containerId}/search optionsObjectsSearch /*
OptionsObjectsSearch swagger:route OPTIONS /objects/{containerId}/search optionsObjectsSearch
OptionsObjectsSearch options objects search API OptionsObjectsSearch options objects search API
*/ */
type OptionsObjectsSearch struct { type OptionsObjectsSearch struct {
Context *middleware.Context Context *middleware.Context

View file

@ -14,7 +14,8 @@ import (
// OptionsObjectsSearchOKCode is the HTTP code returned for type OptionsObjectsSearchOK // OptionsObjectsSearchOKCode is the HTTP code returned for type OptionsObjectsSearchOK
const OptionsObjectsSearchOKCode int = 200 const OptionsObjectsSearchOKCode int = 200
/*OptionsObjectsSearchOK Base64 encoded stable binary marshaled bearer token. /*
OptionsObjectsSearchOK Base64 encoded stable binary marshaled bearer token.
swagger:response optionsObjectsSearchOK swagger:response optionsObjectsSearchOK
*/ */

View file

@ -15,7 +15,7 @@ import (
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"github.com/go-openapi/validate" "github.com/go-openapi/validate"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// PutContainerHandlerFunc turns a function with the right signature into a put container handler // PutContainerHandlerFunc turns a function with the right signature into a put container handler
@ -36,10 +36,10 @@ func NewPutContainer(ctx *middleware.Context, handler PutContainerHandler) *PutC
return &PutContainer{Context: ctx, Handler: handler} return &PutContainer{Context: ctx, Handler: handler}
} }
/* PutContainer swagger:route PUT /containers putContainer /*
PutContainer swagger:route PUT /containers putContainer
Create new container in NeoFS Create new container in NeoFS
*/ */
type PutContainer struct { type PutContainer struct {
Context *middleware.Context Context *middleware.Context

View file

@ -10,7 +10,7 @@ import (
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// PutContainerEACLHandlerFunc turns a function with the right signature into a put container e ACL handler // PutContainerEACLHandlerFunc turns a function with the right signature into a put container e ACL handler
@ -31,10 +31,10 @@ func NewPutContainerEACL(ctx *middleware.Context, handler PutContainerEACLHandle
return &PutContainerEACL{Context: ctx, Handler: handler} return &PutContainerEACL{Context: ctx, Handler: handler}
} }
/* PutContainerEACL swagger:route PUT /containers/{containerId}/eacl putContainerEAcl /*
PutContainerEACL swagger:route PUT /containers/{containerId}/eacl putContainerEAcl
Set container EACL by id Set container EACL by id
*/ */
type PutContainerEACL struct { type PutContainerEACL struct {
Context *middleware.Context Context *middleware.Context

View file

@ -17,7 +17,7 @@ import (
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"github.com/go-openapi/validate" "github.com/go-openapi/validate"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// NewPutContainerEACLParams creates a new PutContainerEACLParams object // NewPutContainerEACLParams creates a new PutContainerEACLParams object

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// PutContainerEACLOKCode is the HTTP code returned for type PutContainerEACLOK // PutContainerEACLOKCode is the HTTP code returned for type PutContainerEACLOK
const PutContainerEACLOKCode int = 200 const PutContainerEACLOKCode int = 200
/*PutContainerEACLOK Successful EACL updating. /*
PutContainerEACLOK Successful EACL updating.
swagger:response putContainerEAclOK swagger:response putContainerEAclOK
*/ */
@ -82,7 +83,8 @@ func (o *PutContainerEACLOK) WriteResponse(rw http.ResponseWriter, producer runt
// PutContainerEACLBadRequestCode is the HTTP code returned for type PutContainerEACLBadRequest // PutContainerEACLBadRequestCode is the HTTP code returned for type PutContainerEACLBadRequest
const PutContainerEACLBadRequestCode int = 400 const PutContainerEACLBadRequestCode int = 400
/*PutContainerEACLBadRequest Bad request. /*
PutContainerEACLBadRequest Bad request.
swagger:response putContainerEAclBadRequest swagger:response putContainerEAclBadRequest
*/ */

View file

@ -17,7 +17,7 @@ import (
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"github.com/go-openapi/validate" "github.com/go-openapi/validate"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// NewPutContainerParams creates a new PutContainerParams object // NewPutContainerParams creates a new PutContainerParams object

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// PutContainerOKCode is the HTTP code returned for type PutContainerOK // PutContainerOKCode is the HTTP code returned for type PutContainerOK
const PutContainerOKCode int = 200 const PutContainerOKCode int = 200
/*PutContainerOK Identifier of the created container. /*
PutContainerOK Identifier of the created container.
swagger:response putContainerOK swagger:response putContainerOK
*/ */
@ -82,7 +83,8 @@ func (o *PutContainerOK) WriteResponse(rw http.ResponseWriter, producer runtime.
// PutContainerBadRequestCode is the HTTP code returned for type PutContainerBadRequest // PutContainerBadRequestCode is the HTTP code returned for type PutContainerBadRequest
const PutContainerBadRequestCode int = 400 const PutContainerBadRequestCode int = 400
/*PutContainerBadRequest Bad request. /*
PutContainerBadRequest Bad request.
swagger:response putContainerBadRequest swagger:response putContainerBadRequest
*/ */

View file

@ -10,7 +10,7 @@ import (
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// PutObjectHandlerFunc turns a function with the right signature into a put object handler // PutObjectHandlerFunc turns a function with the right signature into a put object handler
@ -31,10 +31,10 @@ func NewPutObject(ctx *middleware.Context, handler PutObjectHandler) *PutObject
return &PutObject{Context: ctx, Handler: handler} return &PutObject{Context: ctx, Handler: handler}
} }
/* PutObject swagger:route PUT /objects putObject /*
PutObject swagger:route PUT /objects putObject
Upload object to NeoFS Upload object to NeoFS
*/ */
type PutObject struct { type PutObject struct {
Context *middleware.Context Context *middleware.Context

View file

@ -17,7 +17,7 @@ import (
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"github.com/go-openapi/validate" "github.com/go-openapi/validate"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// NewPutObjectParams creates a new PutObjectParams object // NewPutObjectParams creates a new PutObjectParams object

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// PutObjectOKCode is the HTTP code returned for type PutObjectOK // PutObjectOKCode is the HTTP code returned for type PutObjectOK
const PutObjectOKCode int = 200 const PutObjectOKCode int = 200
/*PutObjectOK Address of uploaded objects /*
PutObjectOK Address of uploaded objects
swagger:response putObjectOK swagger:response putObjectOK
*/ */
@ -82,7 +83,8 @@ func (o *PutObjectOK) WriteResponse(rw http.ResponseWriter, producer runtime.Pro
// PutObjectBadRequestCode is the HTTP code returned for type PutObjectBadRequest // PutObjectBadRequestCode is the HTTP code returned for type PutObjectBadRequest
const PutObjectBadRequestCode int = 400 const PutObjectBadRequestCode int = 400
/*PutObjectBadRequest Bad request /*
PutObjectBadRequest Bad request
swagger:response putObjectBadRequest swagger:response putObjectBadRequest
*/ */

View file

@ -10,7 +10,7 @@ import (
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// SearchObjectsHandlerFunc turns a function with the right signature into a search objects handler // SearchObjectsHandlerFunc turns a function with the right signature into a search objects handler
@ -31,10 +31,10 @@ func NewSearchObjects(ctx *middleware.Context, handler SearchObjectsHandler) *Se
return &SearchObjects{Context: ctx, Handler: handler} return &SearchObjects{Context: ctx, Handler: handler}
} }
/* SearchObjects swagger:route POST /objects/{containerId}/search searchObjects /*
SearchObjects swagger:route POST /objects/{containerId}/search searchObjects
Search objects by filters Search objects by filters
*/ */
type SearchObjects struct { type SearchObjects struct {
Context *middleware.Context Context *middleware.Context

View file

@ -17,7 +17,7 @@ import (
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"github.com/go-openapi/validate" "github.com/go-openapi/validate"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// NewSearchObjectsParams creates a new SearchObjectsParams object // NewSearchObjectsParams creates a new SearchObjectsParams object

View file

@ -10,13 +10,14 @@ import (
"github.com/go-openapi/runtime" "github.com/go-openapi/runtime"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
) )
// SearchObjectsOKCode is the HTTP code returned for type SearchObjectsOK // SearchObjectsOKCode is the HTTP code returned for type SearchObjectsOK
const SearchObjectsOKCode int = 200 const SearchObjectsOKCode int = 200
/*SearchObjectsOK List of objects /*
SearchObjectsOK List of objects
swagger:response searchObjectsOK swagger:response searchObjectsOK
*/ */
@ -82,7 +83,8 @@ func (o *SearchObjectsOK) WriteResponse(rw http.ResponseWriter, producer runtime
// SearchObjectsBadRequestCode is the HTTP code returned for type SearchObjectsBadRequest // SearchObjectsBadRequestCode is the HTTP code returned for type SearchObjectsBadRequest
const SearchObjectsBadRequestCode int = 400 const SearchObjectsBadRequestCode int = 400
/*SearchObjectsBadRequest Bad request /*
SearchObjectsBadRequest Bad request
swagger:response searchObjectsBadRequest swagger:response searchObjectsBadRequest
*/ */

View file

@ -22,7 +22,7 @@ import (
"github.com/go-openapi/swag" "github.com/go-openapi/swag"
"golang.org/x/net/netutil" "golang.org/x/net/netutil"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations" "github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
) )
const ( const (
@ -62,8 +62,8 @@ type ServerConfig struct {
SuccessfulStartCallback func() SuccessfulStartCallback func()
} }
// NewServer creates a new api neofs rest gw server but does not configure it // NewServer creates a new api frostfs rest gw server but does not configure it
func NewServer(api *operations.NeofsRestGwAPI, cfg *ServerConfig) *Server { func NewServer(api *operations.FrostfsRestGwAPI, cfg *ServerConfig) *Server {
s := new(Server) s := new(Server)
s.EnabledListeners = cfg.EnabledListeners s.EnabledListeners = cfg.EnabledListeners
s.CleanupTimeout = cfg.CleanupTimeout s.CleanupTimeout = cfg.CleanupTimeout
@ -93,13 +93,13 @@ func NewServer(api *operations.NeofsRestGwAPI, cfg *ServerConfig) *Server {
} }
// ConfigureAPI configures the API and handlers. // ConfigureAPI configures the API and handlers.
func (s *Server) ConfigureAPI(fn func(*operations.NeofsRestGwAPI) http.Handler) { func (s *Server) ConfigureAPI(fn func(*operations.FrostfsRestGwAPI) http.Handler) {
if s.api != nil { if s.api != nil {
s.handler = fn(s.api) s.handler = fn(s.api)
} }
} }
// Server for the neofs rest gw API // Server for the frostfs rest gw API
type Server struct { type Server struct {
EnabledListeners []string EnabledListeners []string
CleanupTimeout time.Duration CleanupTimeout time.Duration
@ -128,7 +128,7 @@ type Server struct {
cfgTLSFn func(tlsConfig *tls.Config) cfgTLSFn func(tlsConfig *tls.Config)
cfgServerFn func(s *http.Server, scheme, addr string) cfgServerFn func(s *http.Server, scheme, addr string)
api *operations.NeofsRestGwAPI api *operations.FrostfsRestGwAPI
handler http.Handler handler http.Handler
hasListeners bool hasListeners bool
shutdown chan struct{} shutdown chan struct{}
@ -217,13 +217,13 @@ func (s *Server) Serve() (err error) {
servers = append(servers, httpServer) servers = append(servers, httpServer)
wg.Add(1) wg.Add(1)
s.Logf("Serving neofs rest gw at http://%s", s.httpServerL.Addr()) s.Logf("Serving frostfs rest gw at http://%s", s.httpServerL.Addr())
go func(l net.Listener) { go func(l net.Listener) {
defer wg.Done() defer wg.Done()
if err := httpServer.Serve(l); err != nil && err != http.ErrServerClosed { if err := httpServer.Serve(l); err != nil && err != http.ErrServerClosed {
s.Fatalf("%v", err) s.Fatalf("%v", err)
} }
s.Logf("Stopped serving neofs rest gw at http://%s", l.Addr()) s.Logf("Stopped serving frostfs rest gw at http://%s", l.Addr())
}(s.httpServerL) }(s.httpServerL)
} }
@ -314,13 +314,13 @@ func (s *Server) Serve() (err error) {
servers = append(servers, httpsServer) servers = append(servers, httpsServer)
wg.Add(1) wg.Add(1)
s.Logf("Serving neofs rest gw at https://%s", s.httpsServerL.Addr()) s.Logf("Serving frostfs rest gw at https://%s", s.httpsServerL.Addr())
go func(l net.Listener) { go func(l net.Listener) {
defer wg.Done() defer wg.Done()
if err := httpsServer.Serve(l); err != nil && err != http.ErrServerClosed { if err := httpsServer.Serve(l); err != nil && err != http.ErrServerClosed {
s.Fatalf("%v", err) s.Fatalf("%v", err)
} }
s.Logf("Stopped serving neofs rest gw at https://%s", l.Addr()) s.Logf("Stopped serving frostfs rest gw at https://%s", l.Addr())
}(tls.NewListener(s.httpsServerL, httpsServer.TLSConfig)) }(tls.NewListener(s.httpsServerL, httpsServer.TLSConfig))
} }

24
go.mod
View file

@ -1,8 +1,10 @@
module github.com/nspcc-dev/neofs-rest-gw module github.com/TrueCloudLab/frostfs-rest-gw
go 1.17 go 1.17
require ( require (
github.com/TrueCloudLab/frostfs-api-go/v2 v2.0.0-20221212144048-1351b6656d68
github.com/TrueCloudLab/frostfs-sdk-go v0.0.0-20221214065929-4c779423f556
github.com/go-openapi/errors v0.20.2 github.com/go-openapi/errors v0.20.2
github.com/go-openapi/loads v0.21.1 github.com/go-openapi/loads v0.21.1
github.com/go-openapi/runtime v0.23.3 github.com/go-openapi/runtime v0.23.3
@ -11,13 +13,11 @@ require (
github.com/go-openapi/swag v0.21.1 github.com/go-openapi/swag v0.21.1
github.com/go-openapi/validate v0.21.0 github.com/go-openapi/validate v0.21.0
github.com/google/uuid v1.3.0 github.com/google/uuid v1.3.0
github.com/nspcc-dev/neo-go v0.99.2 github.com/nspcc-dev/neo-go v0.99.4
github.com/nspcc-dev/neofs-api-go/v2 v2.13.2-0.20221005093543-3a91383f24a9
github.com/nspcc-dev/neofs-sdk-go v1.0.0-rc.6.0.20221007102402-8c682641bfd2
github.com/spf13/pflag v1.0.5 github.com/spf13/pflag v1.0.5
github.com/stretchr/testify v1.7.0 github.com/stretchr/testify v1.8.0
github.com/testcontainers/testcontainers-go v0.13.0 github.com/testcontainers/testcontainers-go v0.13.0
go.uber.org/zap v1.18.1 go.uber.org/zap v1.23.0
golang.org/x/net v0.0.0-20220403103023-749bd193bc2b golang.org/x/net v0.0.0-20220403103023-749bd193bc2b
) )
@ -27,6 +27,10 @@ require (
github.com/Microsoft/hcsshim v0.8.23 // indirect github.com/Microsoft/hcsshim v0.8.23 // indirect
github.com/PuerkitoBio/purell v1.1.1 // indirect github.com/PuerkitoBio/purell v1.1.1 // indirect
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect
github.com/TrueCloudLab/frostfs-crypto v0.5.0
github.com/TrueCloudLab/hrw v1.1.0 // indirect
github.com/TrueCloudLab/rfc6979 v0.3.0 // indirect
github.com/TrueCloudLab/tzhash v1.7.0 // indirect
github.com/antlr/antlr4/runtime/Go/antlr v1.4.10 // indirect github.com/antlr/antlr4/runtime/Go/antlr v1.4.10 // indirect
github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d // indirect github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d // indirect
github.com/beorn7/perks v1.0.1 // indirect github.com/beorn7/perks v1.0.1 // indirect
@ -61,10 +65,7 @@ require (
github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6 // indirect github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6 // indirect
github.com/morikuni/aec v0.0.0-20170113033406-39771216ff4c // indirect github.com/morikuni/aec v0.0.0-20170113033406-39771216ff4c // indirect
github.com/mr-tron/base58 v1.2.0 // indirect github.com/mr-tron/base58 v1.2.0 // indirect
github.com/nspcc-dev/hrw v1.0.9 // indirect
github.com/nspcc-dev/neofs-crypto v0.4.0
github.com/nspcc-dev/rfc6979 v0.2.0 // indirect github.com/nspcc-dev/rfc6979 v0.2.0 // indirect
github.com/nspcc-dev/tzhash v1.6.1 // indirect
github.com/oklog/ulid v1.3.1 // indirect github.com/oklog/ulid v1.3.1 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/opencontainers/image-spec v1.0.2 // indirect github.com/opencontainers/image-spec v1.0.2 // indirect
@ -88,10 +89,9 @@ require (
github.com/urfave/cli v1.22.5 // indirect github.com/urfave/cli v1.22.5 // indirect
go.mongodb.org/mongo-driver v1.8.4 // indirect go.mongodb.org/mongo-driver v1.8.4 // indirect
go.opencensus.io v0.23.0 // indirect go.opencensus.io v0.23.0 // indirect
go.uber.org/atomic v1.9.0 // indirect go.uber.org/atomic v1.10.0 // indirect
go.uber.org/multierr v1.6.0 // indirect go.uber.org/multierr v1.8.0 // indirect
golang.org/x/crypto v0.0.0-20220214200702-86341886e292 // indirect golang.org/x/crypto v0.0.0-20220214200702-86341886e292 // indirect
golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 // indirect
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a // indirect golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a // indirect
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect
golang.org/x/text v0.3.7 // indirect golang.org/x/text v0.3.7 // indirect

51
go.sum
View file

@ -94,6 +94,19 @@ github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbt
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M= github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M=
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ=
github.com/TrueCloudLab/frostfs-api-go/v2 v2.0.0-20221212144048-1351b6656d68 h1:mwZr15qCuIcWojIOmH6LILPohbWIkknZe9vhBRapmfQ=
github.com/TrueCloudLab/frostfs-api-go/v2 v2.0.0-20221212144048-1351b6656d68/go.mod h1:u3P6aL/NpAIY5IFRsJhmV+61Q3pJ3BkLENqySkf5zZQ=
github.com/TrueCloudLab/frostfs-contract v0.0.0-20221213081248-6c805c1b4e42/go.mod h1:qmf648elr+FWBZH3hqND8KVrXMnqu/e0z48k+sX8C2s=
github.com/TrueCloudLab/frostfs-crypto v0.5.0 h1:ZoLjixSkQv3j1EwZ1WJzMEJY2NR+9nO4Pd8WSyM/RRI=
github.com/TrueCloudLab/frostfs-crypto v0.5.0/go.mod h1:775MUewpH8AWpXrimAG2NYWOXB6lpKOI5kqgu+eI5zs=
github.com/TrueCloudLab/frostfs-sdk-go v0.0.0-20221214065929-4c779423f556 h1:Cc1jjYxKPfyw7TIJh3Bje7m8DOSn2dx+2zmr0yusWGw=
github.com/TrueCloudLab/frostfs-sdk-go v0.0.0-20221214065929-4c779423f556/go.mod h1:4ZiG4jNLzrqeJbmZUrPI7wDZhQVPaf0zEIWa/eBsqBg=
github.com/TrueCloudLab/hrw v1.1.0 h1:2U69PpUX1UtMWgh/RAg6D8mQW+/WsxbLNE+19EUhLhY=
github.com/TrueCloudLab/hrw v1.1.0/go.mod h1:Pzi8Hy3qx12cew+ajVxgbtDVM4sRG9/gJnJLcL/yRyY=
github.com/TrueCloudLab/rfc6979 v0.3.0 h1:0SYMAfQWh/TjnofqYQHy+s3rmQ5gi0fvOaDbqd60/Ic=
github.com/TrueCloudLab/rfc6979 v0.3.0/go.mod h1:qylxFXFQ/sMvpZC/8JyWp+mfzk5Zj/KDT5FAbekhobc=
github.com/TrueCloudLab/tzhash v1.7.0 h1:btGORepc7Dg+n4MxgJxv73c9eYhwSBI5HqsqUBRmJiw=
github.com/TrueCloudLab/tzhash v1.7.0/go.mod h1:gDQxqjhTqhR58Qfx0gxGtuyGAkixOukwbFGX9O6UGg4=
github.com/Workiva/go-datastructures v1.0.50/go.mod h1:Z+F2Rca0qCsVYDS8z7bAGm8f3UkzuWYS/oBZz5a7VVA= github.com/Workiva/go-datastructures v1.0.50/go.mod h1:Z+F2Rca0qCsVYDS8z7bAGm8f3UkzuWYS/oBZz5a7VVA=
github.com/abiosoft/ishell v2.0.0+incompatible/go.mod h1:HQR9AqF2R3P4XXpMpI0NAzgHf/aS6+zVXRj14cVk9qg= github.com/abiosoft/ishell v2.0.0+incompatible/go.mod h1:HQR9AqF2R3P4XXpMpI0NAzgHf/aS6+zVXRj14cVk9qg=
github.com/abiosoft/ishell/v2 v2.0.2/go.mod h1:E4oTCXfo6QjoCart0QYa5m9w4S+deXs/P/9jA77A9Bs= github.com/abiosoft/ishell/v2 v2.0.2/go.mod h1:E4oTCXfo6QjoCart0QYa5m9w4S+deXs/P/9jA77A9Bs=
@ -735,38 +748,27 @@ github.com/nspcc-dev/dbft v0.0.0-20191209120240-0d6b7568d9ae/go.mod h1:3FjXOoHmA
github.com/nspcc-dev/dbft v0.0.0-20200117124306-478e5cfbf03a/go.mod h1:/YFK+XOxxg0Bfm6P92lY5eDSLYfp06XOdL8KAVgXjVk= github.com/nspcc-dev/dbft v0.0.0-20200117124306-478e5cfbf03a/go.mod h1:/YFK+XOxxg0Bfm6P92lY5eDSLYfp06XOdL8KAVgXjVk=
github.com/nspcc-dev/dbft v0.0.0-20200219114139-199d286ed6c1/go.mod h1:O0qtn62prQSqizzoagHmuuKoz8QMkU3SzBoKdEvm3aQ= github.com/nspcc-dev/dbft v0.0.0-20200219114139-199d286ed6c1/go.mod h1:O0qtn62prQSqizzoagHmuuKoz8QMkU3SzBoKdEvm3aQ=
github.com/nspcc-dev/dbft v0.0.0-20210721160347-1b03241391ac/go.mod h1:U8MSnEShH+o5hexfWJdze6uMFJteP0ko7J2frO7Yu1Y= github.com/nspcc-dev/dbft v0.0.0-20210721160347-1b03241391ac/go.mod h1:U8MSnEShH+o5hexfWJdze6uMFJteP0ko7J2frO7Yu1Y=
github.com/nspcc-dev/dbft v0.0.0-20220629112714-fd49ca59d354/go.mod h1:U8MSnEShH+o5hexfWJdze6uMFJteP0ko7J2frO7Yu1Y= github.com/nspcc-dev/dbft v0.0.0-20220902113116-58a5e763e647/go.mod h1:g9xisXmX9NP9MjioaTe862n9SlZTrP+6PVUWLBYOr98=
github.com/nspcc-dev/go-ordered-json v0.0.0-20210915112629-e1b6cce73d02/go.mod h1:79bEUDEviBHJMFV6Iq6in57FEOCMcRhfQnfaf0ETA5U= github.com/nspcc-dev/go-ordered-json v0.0.0-20210915112629-e1b6cce73d02/go.mod h1:79bEUDEviBHJMFV6Iq6in57FEOCMcRhfQnfaf0ETA5U=
github.com/nspcc-dev/go-ordered-json v0.0.0-20220111165707-25110be27d22 h1:n4ZaFCKt1pQJd7PXoMJabZWK9ejjbLOVrkl/lOUmshg= github.com/nspcc-dev/go-ordered-json v0.0.0-20220111165707-25110be27d22 h1:n4ZaFCKt1pQJd7PXoMJabZWK9ejjbLOVrkl/lOUmshg=
github.com/nspcc-dev/go-ordered-json v0.0.0-20220111165707-25110be27d22/go.mod h1:79bEUDEviBHJMFV6Iq6in57FEOCMcRhfQnfaf0ETA5U= github.com/nspcc-dev/go-ordered-json v0.0.0-20220111165707-25110be27d22/go.mod h1:79bEUDEviBHJMFV6Iq6in57FEOCMcRhfQnfaf0ETA5U=
github.com/nspcc-dev/hrw v1.0.9 h1:17VcAuTtrstmFppBjfRiia4K2wA/ukXZhLFS8Y8rz5Y=
github.com/nspcc-dev/hrw v1.0.9/go.mod h1:l/W2vx83vMQo6aStyx2AuZrJ+07lGv2JQGlVkPG06MU= github.com/nspcc-dev/hrw v1.0.9/go.mod h1:l/W2vx83vMQo6aStyx2AuZrJ+07lGv2JQGlVkPG06MU=
github.com/nspcc-dev/neo-go v0.73.1-pre.0.20200303142215-f5a1b928ce09/go.mod h1:pPYwPZ2ks+uMnlRLUyXOpLieaDQSEaf4NM3zHVbRjmg= github.com/nspcc-dev/neo-go v0.73.1-pre.0.20200303142215-f5a1b928ce09/go.mod h1:pPYwPZ2ks+uMnlRLUyXOpLieaDQSEaf4NM3zHVbRjmg=
github.com/nspcc-dev/neo-go v0.98.0/go.mod h1:E3cc1x6RXSXrJb2nDWXTXjnXk3rIqVN8YdFyWv+FrqM= github.com/nspcc-dev/neo-go v0.98.0/go.mod h1:E3cc1x6RXSXrJb2nDWXTXjnXk3rIqVN8YdFyWv+FrqM=
github.com/nspcc-dev/neo-go v0.99.1-pre.0.20220714084516-54849ef3e58e/go.mod h1:/y5Sl8p3YheTygriBtCCMWKkDOek8HcvSo5ds2rJtKI= github.com/nspcc-dev/neo-go v0.99.4 h1:8Y+SdRxksC72a4PNkcGCh/aaQinh9Gu+c5LilbcsXOI=
github.com/nspcc-dev/neo-go v0.99.2 h1:Fq79FI6BJkj/XkgWtrURSdXgXIeBHCgbKauBw3LOvZ4= github.com/nspcc-dev/neo-go v0.99.4/go.mod h1:mKTolfRUfKjFso5HPvGSQtUZc70n0VKBMs16eGuC5gA=
github.com/nspcc-dev/neo-go v0.99.2/go.mod h1:9P0yWqhZX7i/ChJ+zjtiStO1uPTolPFUM+L5oNznU8E= github.com/nspcc-dev/neo-go/pkg/interop v0.0.0-20220927123257-24c107e3a262/go.mod h1:23bBw0v6pBYcrWs8CBEEDIEDJNbcFoIh8pGGcf2Vv8s=
github.com/nspcc-dev/neo-go/pkg/interop v0.0.0-20220713145417-4f184498bc42/go.mod h1:QBE0I30F2kOAISNpT5oks82yF4wkkUq3SCfI3Hqgx/Y=
github.com/nspcc-dev/neo-go/pkg/interop v0.0.0-20220809123759-3094d3e0c14b/go.mod h1:23bBw0v6pBYcrWs8CBEEDIEDJNbcFoIh8pGGcf2Vv8s=
github.com/nspcc-dev/neofs-api-go/v2 v2.11.0-pre.0.20211201134523-3604d96f3fe1/go.mod h1:oS8dycEh8PPf2Jjp6+8dlwWyEv2Dy77h/XhhcdxYEFs= github.com/nspcc-dev/neofs-api-go/v2 v2.11.0-pre.0.20211201134523-3604d96f3fe1/go.mod h1:oS8dycEh8PPf2Jjp6+8dlwWyEv2Dy77h/XhhcdxYEFs=
github.com/nspcc-dev/neofs-api-go/v2 v2.11.1/go.mod h1:oS8dycEh8PPf2Jjp6+8dlwWyEv2Dy77h/XhhcdxYEFs= github.com/nspcc-dev/neofs-api-go/v2 v2.11.1/go.mod h1:oS8dycEh8PPf2Jjp6+8dlwWyEv2Dy77h/XhhcdxYEFs=
github.com/nspcc-dev/neofs-api-go/v2 v2.13.2-0.20221005093543-3a91383f24a9 h1:c9ovp4KuPyIBx4dVG4bmkePlmuN0au4BBtFGXALWFBM=
github.com/nspcc-dev/neofs-api-go/v2 v2.13.2-0.20221005093543-3a91383f24a9/go.mod h1:DRIr0Ic1s+6QgdqmNFNLIqMqd7lNMJfYwkczlm1hDtM=
github.com/nspcc-dev/neofs-contract v0.15.3/go.mod h1:BXVZUZUJxrmmDETglXHI8+5DSgn84B9y5DoSWqEjYCs=
github.com/nspcc-dev/neofs-crypto v0.2.0/go.mod h1:F/96fUzPM3wR+UGsPi3faVNmFlA9KAEAUQR7dMxZmNA= github.com/nspcc-dev/neofs-crypto v0.2.0/go.mod h1:F/96fUzPM3wR+UGsPi3faVNmFlA9KAEAUQR7dMxZmNA=
github.com/nspcc-dev/neofs-crypto v0.2.3/go.mod h1:8w16GEJbH6791ktVqHN9YRNH3s9BEEKYxGhlFnp0cDw= github.com/nspcc-dev/neofs-crypto v0.2.3/go.mod h1:8w16GEJbH6791ktVqHN9YRNH3s9BEEKYxGhlFnp0cDw=
github.com/nspcc-dev/neofs-crypto v0.3.0/go.mod h1:8w16GEJbH6791ktVqHN9YRNH3s9BEEKYxGhlFnp0cDw= github.com/nspcc-dev/neofs-crypto v0.3.0/go.mod h1:8w16GEJbH6791ktVqHN9YRNH3s9BEEKYxGhlFnp0cDw=
github.com/nspcc-dev/neofs-crypto v0.4.0 h1:5LlrUAM5O0k1+sH/sktBtrgfWtq1pgpDs09fZo+KYi4=
github.com/nspcc-dev/neofs-crypto v0.4.0/go.mod h1:6XJ8kbXgOfevbI2WMruOtI+qUJXNwSGM/E9eClXxPHs= github.com/nspcc-dev/neofs-crypto v0.4.0/go.mod h1:6XJ8kbXgOfevbI2WMruOtI+qUJXNwSGM/E9eClXxPHs=
github.com/nspcc-dev/neofs-sdk-go v0.0.0-20211201182451-a5b61c4f6477/go.mod h1:dfMtQWmBHYpl9Dez23TGtIUKiFvCIxUZq/CkSIhEpz4= github.com/nspcc-dev/neofs-sdk-go v0.0.0-20211201182451-a5b61c4f6477/go.mod h1:dfMtQWmBHYpl9Dez23TGtIUKiFvCIxUZq/CkSIhEpz4=
github.com/nspcc-dev/neofs-sdk-go v0.0.0-20220113123743-7f3162110659/go.mod h1:/jay1lr3w7NQd/VDBkEhkJmDmyPNsu4W+QV2obsUV40= github.com/nspcc-dev/neofs-sdk-go v0.0.0-20220113123743-7f3162110659/go.mod h1:/jay1lr3w7NQd/VDBkEhkJmDmyPNsu4W+QV2obsUV40=
github.com/nspcc-dev/neofs-sdk-go v1.0.0-rc.6.0.20221007102402-8c682641bfd2 h1:iOuKuX54KQVFUR3yYPk8IGioD4dtwzoz3IAolavuqKE=
github.com/nspcc-dev/neofs-sdk-go v1.0.0-rc.6.0.20221007102402-8c682641bfd2/go.mod h1:RLGptWbksCAODl8bK+2YD9EBpzDJrfJR/eM0lBK87qk=
github.com/nspcc-dev/rfc6979 v0.1.0/go.mod h1:exhIh1PdpDC5vQmyEsGvc4YDM/lyQp/452QxGq/UEso= github.com/nspcc-dev/rfc6979 v0.1.0/go.mod h1:exhIh1PdpDC5vQmyEsGvc4YDM/lyQp/452QxGq/UEso=
github.com/nspcc-dev/rfc6979 v0.2.0 h1:3e1WNxrN60/6N0DW7+UYisLeZJyfqZTNOjeV/toYvOE= github.com/nspcc-dev/rfc6979 v0.2.0 h1:3e1WNxrN60/6N0DW7+UYisLeZJyfqZTNOjeV/toYvOE=
github.com/nspcc-dev/rfc6979 v0.2.0/go.mod h1:exhIh1PdpDC5vQmyEsGvc4YDM/lyQp/452QxGq/UEso= github.com/nspcc-dev/rfc6979 v0.2.0/go.mod h1:exhIh1PdpDC5vQmyEsGvc4YDM/lyQp/452QxGq/UEso=
github.com/nspcc-dev/tzhash v1.6.1 h1:8dUrWFpjkmoHF+7GxuGUmarj9LLHWFcuyF3CTrqq9JE=
github.com/nspcc-dev/tzhash v1.6.1/go.mod h1:BoflzCVp+DO/f1mvbcsJQWoFzidIFBhWFZMglbUW648=
github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=
github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4= github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4=
github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=
@ -942,14 +944,17 @@ github.com/stretchr/objx v0.0.0-20180129172003-8a3f7159479f/go.mod h1:HFkY916IF+
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s= github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s=
github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw=
github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww=
@ -1028,17 +1033,21 @@ go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqe
go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE=
go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
go.uber.org/goleak v1.1.10 h1:z+mqJhf6ss6BSfSM671tgKyZBFPTTJM+HLxnhPC3wu0= go.uber.org/atomic v1.10.0 h1:9qC72Qh0+3MqyJbAn8YU5xVq1frD8bn3JtD2oXtafVQ=
go.uber.org/atomic v1.10.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0=
go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A=
go.uber.org/goleak v1.1.11 h1:wy28qYRKZgnJTxGxvye5/wgWr1EKjmUDGYox5mGlRlI=
go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ=
go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0=
go.uber.org/multierr v1.6.0 h1:y6IPFStTAIT5Ytl7/XYmHvzXQ7S3g/IeZW9hyZ5thw4=
go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU=
go.uber.org/multierr v1.8.0 h1:dg6GjLku4EH+249NNmoIciG9N/jURbDG+pFlTkhzIC8=
go.uber.org/multierr v1.8.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak=
go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo=
go.uber.org/zap v1.18.1 h1:CSUJ2mjFszzEWt4CdKISEuChVIXGBn3lAPwkRGyVrc4=
go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI=
go.uber.org/zap v1.23.0 h1:OjGQ5KQDEUawVHxNwQgPpiypGHOxo2mNZsOqTak4fFY=
go.uber.org/zap v1.23.0/go.mod h1:D+nX8jyLsMHMYrln8A0rJjFt/T/9/bGgIhAqxv5URuY=
golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
@ -1087,7 +1096,6 @@ golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRu
golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 h1:VLliZ0d+/avPrXXH+OakdXhpJuEoBZuwh1m2j7U6Iug=
golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE=
golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o=
@ -1398,7 +1406,6 @@ golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.8 h1:P1HhGGuLW4aAclzjtmJdf0mJOjVUZUzOTqkAkWL+l6w=
golang.org/x/tools v0.1.8/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU= golang.org/x/tools v0.1.8/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=

View file

@ -7,16 +7,16 @@ import (
"strings" "strings"
"time" "time"
sessionv2 "github.com/TrueCloudLab/frostfs-api-go/v2/session"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
"github.com/TrueCloudLab/frostfs-rest-gw/metrics"
"github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/TrueCloudLab/frostfs-sdk-go/user"
"github.com/go-openapi/errors" "github.com/go-openapi/errors"
"github.com/google/uuid" "github.com/google/uuid"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/crypto/keys"
sessionv2 "github.com/nspcc-dev/neofs-api-go/v2/session"
"github.com/nspcc-dev/neofs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
"github.com/nspcc-dev/neofs-rest-gw/internal/util"
"github.com/nspcc-dev/neofs-rest-gw/metrics"
"github.com/nspcc-dev/neofs-sdk-go/pool"
"github.com/nspcc-dev/neofs-sdk-go/user"
"go.uber.org/zap" "go.uber.org/zap"
) )
@ -92,7 +92,7 @@ func New(prm *PrmAPI) *API {
} }
} }
func (a *API) Configure(api *operations.NeofsRestGwAPI) http.Handler { func (a *API) Configure(api *operations.FrostfsRestGwAPI) http.Handler {
api.ServeError = errors.ServeError api.ServeError = errors.ServeError
api.UseSwaggerUI() api.UseSwaggerUI()

View file

@ -5,18 +5,18 @@ import (
"encoding/base64" "encoding/base64"
"fmt" "fmt"
"github.com/TrueCloudLab/frostfs-api-go/v2/acl"
"github.com/TrueCloudLab/frostfs-api-go/v2/refs"
sessionv2 "github.com/TrueCloudLab/frostfs-api-go/v2/session"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
neofsecdsa "github.com/TrueCloudLab/frostfs-sdk-go/crypto/ecdsa"
"github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/TrueCloudLab/frostfs-sdk-go/user"
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/google/uuid" "github.com/google/uuid"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/crypto/keys"
"github.com/nspcc-dev/neofs-api-go/v2/acl"
"github.com/nspcc-dev/neofs-api-go/v2/refs"
sessionv2 "github.com/nspcc-dev/neofs-api-go/v2/session"
"github.com/nspcc-dev/neofs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
"github.com/nspcc-dev/neofs-rest-gw/internal/util"
neofsecdsa "github.com/nspcc-dev/neofs-sdk-go/crypto/ecdsa"
"github.com/nspcc-dev/neofs-sdk-go/pool"
"github.com/nspcc-dev/neofs-sdk-go/user"
) )
const defaultTokenExpDuration = 100 // in epoch const defaultTokenExpDuration = 100 // in epoch

View file

@ -7,12 +7,12 @@ import (
"math" "math"
"testing" "testing"
"github.com/TrueCloudLab/frostfs-api-go/v2/acl"
crypto "github.com/TrueCloudLab/frostfs-crypto"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
"github.com/TrueCloudLab/frostfs-sdk-go/user"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/crypto/keys"
"github.com/nspcc-dev/neofs-api-go/v2/acl"
crypto "github.com/nspcc-dev/neofs-crypto"
"github.com/nspcc-dev/neofs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-rest-gw/internal/util"
"github.com/nspcc-dev/neofs-sdk-go/user"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )

View file

@ -3,12 +3,12 @@ package handlers
import ( import (
"strconv" "strconv"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
"github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/TrueCloudLab/frostfs-sdk-go/user"
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
"github.com/nspcc-dev/neofs-rest-gw/internal/util"
"github.com/nspcc-dev/neofs-sdk-go/pool"
"github.com/nspcc-dev/neofs-sdk-go/user"
) )
// Balance handler that get balance from NeoFS. // Balance handler that get balance from NeoFS.

View file

@ -3,7 +3,7 @@ package handlers
import ( import (
"testing" "testing"
sessionv2 "github.com/nspcc-dev/neofs-api-go/v2/session" sessionv2 "github.com/TrueCloudLab/frostfs-api-go/v2/session"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )

View file

@ -9,22 +9,22 @@ import (
"strings" "strings"
"time" "time"
containerv2 "github.com/TrueCloudLab/frostfs-api-go/v2/container"
"github.com/TrueCloudLab/frostfs-api-go/v2/refs"
sessionv2 "github.com/TrueCloudLab/frostfs-api-go/v2/session"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
"github.com/TrueCloudLab/frostfs-sdk-go/container"
"github.com/TrueCloudLab/frostfs-sdk-go/container/acl"
cid "github.com/TrueCloudLab/frostfs-sdk-go/container/id"
"github.com/TrueCloudLab/frostfs-sdk-go/netmap"
"github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/TrueCloudLab/frostfs-sdk-go/session"
"github.com/TrueCloudLab/frostfs-sdk-go/user"
"github.com/TrueCloudLab/frostfs-sdk-go/version"
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/crypto/keys"
containerv2 "github.com/nspcc-dev/neofs-api-go/v2/container"
"github.com/nspcc-dev/neofs-api-go/v2/refs"
sessionv2 "github.com/nspcc-dev/neofs-api-go/v2/session"
"github.com/nspcc-dev/neofs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
"github.com/nspcc-dev/neofs-rest-gw/internal/util"
"github.com/nspcc-dev/neofs-sdk-go/container"
"github.com/nspcc-dev/neofs-sdk-go/container/acl"
cid "github.com/nspcc-dev/neofs-sdk-go/container/id"
"github.com/nspcc-dev/neofs-sdk-go/netmap"
"github.com/nspcc-dev/neofs-sdk-go/pool"
"github.com/nspcc-dev/neofs-sdk-go/session"
"github.com/nspcc-dev/neofs-sdk-go/user"
"github.com/nspcc-dev/neofs-sdk-go/version"
"go.uber.org/zap" "go.uber.org/zap"
) )

View file

@ -9,18 +9,18 @@ import (
"io" "io"
"strings" "strings"
"github.com/TrueCloudLab/frostfs-api-go/v2/acl"
"github.com/TrueCloudLab/frostfs-api-go/v2/refs"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
"github.com/TrueCloudLab/frostfs-sdk-go/bearer"
cid "github.com/TrueCloudLab/frostfs-sdk-go/container/id"
"github.com/TrueCloudLab/frostfs-sdk-go/object"
oid "github.com/TrueCloudLab/frostfs-sdk-go/object/id"
"github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/crypto/keys"
"github.com/nspcc-dev/neofs-api-go/v2/acl"
"github.com/nspcc-dev/neofs-api-go/v2/refs"
"github.com/nspcc-dev/neofs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
"github.com/nspcc-dev/neofs-rest-gw/internal/util"
"github.com/nspcc-dev/neofs-sdk-go/bearer"
cid "github.com/nspcc-dev/neofs-sdk-go/container/id"
"github.com/nspcc-dev/neofs-sdk-go/object"
oid "github.com/nspcc-dev/neofs-sdk-go/object/id"
"github.com/nspcc-dev/neofs-sdk-go/pool"
"go.uber.org/zap" "go.uber.org/zap"
) )

View file

@ -3,8 +3,8 @@ package handlers
import ( import (
"testing" "testing"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations" "github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/nspcc-dev/neofs-rest-gw/internal/util" "github.com/TrueCloudLab/frostfs-rest-gw/internal/util"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )

View file

@ -1,8 +1,8 @@
package handlers package handlers
import ( import (
"github.com/TrueCloudLab/frostfs-rest-gw/gen/restapi/operations"
"github.com/go-openapi/runtime/middleware" "github.com/go-openapi/runtime/middleware"
"github.com/nspcc-dev/neofs-rest-gw/gen/restapi/operations"
) )
const ( const (

View file

@ -9,12 +9,12 @@ import (
"strings" "strings"
"time" "time"
objectv2 "github.com/nspcc-dev/neofs-api-go/v2/object" objectv2 "github.com/TrueCloudLab/frostfs-api-go/v2/object"
sessionv2 "github.com/nspcc-dev/neofs-api-go/v2/session" sessionv2 "github.com/TrueCloudLab/frostfs-api-go/v2/session"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-sdk-go/container/acl" "github.com/TrueCloudLab/frostfs-sdk-go/container/acl"
"github.com/nspcc-dev/neofs-sdk-go/object" "github.com/TrueCloudLab/frostfs-sdk-go/object"
"github.com/nspcc-dev/neofs-sdk-go/pool" "github.com/TrueCloudLab/frostfs-sdk-go/pool"
) )
// PrmAttributes groups parameters to form attributes from request headers. // PrmAttributes groups parameters to form attributes from request headers.

View file

@ -6,7 +6,7 @@ import (
"testing" "testing"
"time" "time"
objectv2 "github.com/nspcc-dev/neofs-api-go/v2/object" objectv2 "github.com/TrueCloudLab/frostfs-api-go/v2/object"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )

View file

@ -5,13 +5,13 @@ import (
"errors" "errors"
"fmt" "fmt"
"github.com/nspcc-dev/neofs-rest-gw/gen/models" "github.com/TrueCloudLab/frostfs-rest-gw/gen/models"
"github.com/nspcc-dev/neofs-sdk-go/bearer" "github.com/TrueCloudLab/frostfs-sdk-go/bearer"
apistatus "github.com/nspcc-dev/neofs-sdk-go/client/status" apistatus "github.com/TrueCloudLab/frostfs-sdk-go/client/status"
cid "github.com/nspcc-dev/neofs-sdk-go/container/id" cid "github.com/TrueCloudLab/frostfs-sdk-go/container/id"
"github.com/nspcc-dev/neofs-sdk-go/eacl" "github.com/TrueCloudLab/frostfs-sdk-go/eacl"
"github.com/nspcc-dev/neofs-sdk-go/object" "github.com/TrueCloudLab/frostfs-sdk-go/object"
"github.com/nspcc-dev/neofs-sdk-go/session" "github.com/TrueCloudLab/frostfs-sdk-go/session"
) )
// ToNativeAction converts models.Action to appropriate eacl.Action. // ToNativeAction converts models.Action to appropriate eacl.Action.

View file

@ -6,7 +6,7 @@ import (
"fmt" "fmt"
"testing" "testing"
apistatus "github.com/nspcc-dev/neofs-sdk-go/client/status" apistatus "github.com/TrueCloudLab/frostfs-sdk-go/client/status"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )

View file

@ -3,7 +3,7 @@ package metrics
import ( import (
"net/http" "net/http"
"github.com/nspcc-dev/neofs-sdk-go/pool" "github.com/TrueCloudLab/frostfs-sdk-go/pool"
"github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/client_golang/prometheus/promhttp" "github.com/prometheus/client_golang/prometheus/promhttp"
"go.uber.org/zap" "go.uber.org/zap"