forked from TrueCloudLab/frostfs-api-go
41307a5e00
Document that `XHeader.ToV2` method return `nil` when called on `nil`. Document that `NewXHeaderFromV2` function return `nil` when called on `nil`. Write corresponding unit tests. Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
51 lines
1.1 KiB
Go
51 lines
1.1 KiB
Go
package pkg
|
|
|
|
import (
|
|
"github.com/nspcc-dev/neofs-api-go/v2/session"
|
|
)
|
|
|
|
// XHeader represents v2-compatible XHeader.
|
|
type XHeader session.XHeader
|
|
|
|
// NewXHeaderFromV2 wraps v2 XHeader message to XHeader.
|
|
//
|
|
// Nil session.XHeader converts to nil.
|
|
func NewXHeaderFromV2(v *session.XHeader) *XHeader {
|
|
return (*XHeader)(v)
|
|
}
|
|
|
|
// NewXHeader creates, initializes and returns blank XHeader instance.
|
|
func NewXHeader() *XHeader {
|
|
return NewXHeaderFromV2(new(session.XHeader))
|
|
}
|
|
|
|
// ToV2 converts XHeader to v2 XHeader message.
|
|
//
|
|
// Nil XHeader converts to nil.
|
|
func (x *XHeader) ToV2() *session.XHeader {
|
|
return (*session.XHeader)(x)
|
|
}
|
|
|
|
// Key returns key to X-Header.
|
|
func (x *XHeader) Key() string {
|
|
return (*session.XHeader)(x).
|
|
GetKey()
|
|
}
|
|
|
|
// SetKey sets key to X-Header.
|
|
func (x *XHeader) SetKey(k string) {
|
|
(*session.XHeader)(x).
|
|
SetKey(k)
|
|
}
|
|
|
|
// Value returns value of X-Header.
|
|
func (x *XHeader) Value() string {
|
|
return (*session.XHeader)(x).
|
|
GetValue()
|
|
}
|
|
|
|
// SetValue sets value of X-Header.
|
|
func (x *XHeader) SetValue(k string) {
|
|
(*session.XHeader)(x).
|
|
SetValue(k)
|
|
}
|