forked from TrueCloudLab/frostfs-sdk-go
[#222] client: Fix docs of resolving the failure statuses
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
cec2373b50
commit
6994eb0e55
9 changed files with 36 additions and 24 deletions
32
README.md
32
README.md
|
@ -40,21 +40,33 @@ to perform certain actions on behalf of the user.
|
||||||
### client
|
### client
|
||||||
Contains client for working with NeoFS.
|
Contains client for working with NeoFS.
|
||||||
```go
|
```go
|
||||||
c, _ := client.New(
|
var prmInit client.PrmInit
|
||||||
client.WithAddress("localhost:40005"), // endpoint address
|
prmInit.SetDefaultPrivateKey(key) // private key for request signing
|
||||||
client.WithDefaultPrivateKey(key), // private key for request signing
|
prmInit.ResolveNeoFSFailures() // enable erroneous status parsing
|
||||||
client.WithNeoFSErrorHandling(), // enable erroneous status parsing
|
|
||||||
client.WithTLSConfig(&tls.Config{})) // custom TLS configuration
|
|
||||||
|
|
||||||
ctx, cancel := context.WithTimeout(context.Background(), 5 * time.Second)
|
var c client.Client
|
||||||
defer cancel()
|
c.Init(prmInit)
|
||||||
|
|
||||||
res, err := c.BalanceGet(ctx, owner)
|
var prmDial client.PrmDial
|
||||||
|
prmDial.SetServerURI("grpcs://localhost:40005") // endpoint address
|
||||||
|
|
||||||
|
err := c.Dial(prmDial)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Printf("Balance for %s: %s\n", owner, res.Amount())
|
ctx, cancel := context.WithTimeout(context.Background(), 5 * time.Second)
|
||||||
|
defer cancel()
|
||||||
|
|
||||||
|
var prm client.PrmBalanceGet
|
||||||
|
prm.SetAccount(acc)
|
||||||
|
|
||||||
|
res, err := c.BalanceGet(ctx, prm)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Printf("Balance for %s: %v\n", acc, res.Amount())
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Response status
|
#### Response status
|
||||||
|
@ -66,7 +78,7 @@ these details to the user as well as retry an operation, possibly with different
|
||||||
Status wire-format is extendable and each node can report any set of details it wants.
|
Status wire-format is extendable and each node can report any set of details it wants.
|
||||||
The set of reserved status codes can be found in
|
The set of reserved status codes can be found in
|
||||||
[NeoFS API](https://github.com/nspcc-dev/neofs-api/blob/master/status/types.proto). There is also
|
[NeoFS API](https://github.com/nspcc-dev/neofs-api/blob/master/status/types.proto). There is also
|
||||||
a `client.WithNeoFSErrorHandling()` to seamlessly convert erroneous statuses into Go error type.
|
a `client.PrmInit.ResolveNeoFSFailures()` to seamlessly convert erroneous statuses into Go error type.
|
||||||
|
|
||||||
### policy
|
### policy
|
||||||
Contains helpers allowing conversion of placing policy from/to JSON representation
|
Contains helpers allowing conversion of placing policy from/to JSON representation
|
||||||
|
|
|
@ -48,7 +48,7 @@ func (x ResBalanceGet) Amount() *accounting.Decimal {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`,
|
// Any client's internal or transport errors are returned as `error`,
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
|
@ -74,7 +74,7 @@ func (x *ResContainerPut) setID(id *cid.ID) {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -208,7 +208,7 @@ func (x *ResContainerGet) setContainer(cnr container.Container) {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -317,7 +317,7 @@ func (x *ResContainerList) setContainers(ids []cid.ID) {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -419,7 +419,7 @@ type ResContainerDelete struct {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -545,7 +545,7 @@ func (x *ResContainerEACL) setTable(table *eacl.Table) {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -651,7 +651,7 @@ type ResContainerSetEACL struct {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -756,7 +756,7 @@ type ResAnnounceSpace struct {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
|
@ -53,7 +53,7 @@ func (x *ResEndpointInfo) setNodeInfo(info *netmap.NodeInfo) {
|
||||||
// Method can be used as a health check to see if node is alive and responds to requests.
|
// Method can be used as a health check to see if node is alive and responds to requests.
|
||||||
//
|
//
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -150,7 +150,7 @@ func (x *ResNetworkInfo) setInfo(info *netmap.NetworkInfo) {
|
||||||
// NetworkInfo requests information about the NeoFS network of which the remote server is a part.
|
// NetworkInfo requests information about the NeoFS network of which the remote server is a part.
|
||||||
//
|
//
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
|
@ -117,7 +117,7 @@ func (x ResObjectDelete) ReadTombstoneID(dst *oid.ID) bool {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`,
|
// Any client's internal or transport errors are returned as `error`,
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
|
@ -432,7 +432,7 @@ func (x *ResObjectHead) ReadHeader(dst *object.Object) bool {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`,
|
// Any client's internal or transport errors are returned as `error`,
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
|
@ -140,7 +140,7 @@ func (x ResObjectHash) Checksums() [][]byte {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`,
|
// Any client's internal or transport errors are returned as `error`,
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
|
@ -41,7 +41,7 @@ type ResAnnounceLocalTrust struct {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
@ -142,7 +142,7 @@ type ResAnnounceIntermediateTrust struct {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
|
@ -68,7 +68,7 @@ func (x ResSessionCreate) PublicKey() []byte {
|
||||||
//
|
//
|
||||||
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
// Exactly one return value is non-nil. By default, server status is returned in res structure.
|
||||||
// Any client's internal or transport errors are returned as `error`.
|
// Any client's internal or transport errors are returned as `error`.
|
||||||
// If WithNeoFSErrorParsing option has been provided, unsuccessful
|
// If PrmInit.ResolveNeoFSFailures has been called, unsuccessful
|
||||||
// NeoFS status codes are returned as `error`, otherwise, are included
|
// NeoFS status codes are returned as `error`, otherwise, are included
|
||||||
// in the returned result structure.
|
// in the returned result structure.
|
||||||
//
|
//
|
||||||
|
|
Loading…
Reference in a new issue