Documentation ¶
Overview ¶
Package digest provides api features.
Index ¶
- Constants
- Variables
- func CacheKey(key string, s ...string) string
- func CacheKeyFromRequest(r *http.Request) string
- func CacheKeyPath(r *http.Request) string
- func DefaultItemsLimiter(string) int64
- func DigestBlock(ctx context.Context, st *Database, blk base.BlockMap, ops []base.Operation, ...) error
- func HTTP2HandleError(w http.ResponseWriter, err error)
- func HTTP2NotSupported(w http.ResponseWriter, err error)
- func HTTP2ProblemWithError(w http.ResponseWriter, err error, status int)
- func HTTP2Stream(enc encoder.Encoder, w http.ResponseWriter, bufsize int, status int) (*jsoniter.Stream, func())
- func HTTP2WriteCache(w http.ResponseWriter, key string, expire time.Duration)
- func HTTP2WriteHal(enc encoder.Encoder, w http.ResponseWriter, hal Hal, status int)
- func HTTP2WriteHalBytes(enc encoder.Encoder, w http.ResponseWriter, b []byte, status int)
- func HTTP2WritePoblem(w http.ResponseWriter, pr Problem, status int)
- func IsAccountState(st base.State) (currency.Account, bool, error)
- func IsBalanceState(st base.State) (currency.Amount, bool, error)
- func LoadBalance(decoder func(interface{}) error, encs *encoder.Encoders) (base.State, error)
- func LoadCurrency(decoder func(interface{}) error, encs *encoder.Encoders) (base.State, error)
- func LoadFromCache(cache Cache, key string, w http.ResponseWriter) error
- func LoadManifest(decoder func(interface{}) error, encs *encoder.Encoders) (base.Manifest, error)
- func LoadOperationHash(decoder func(interface{}) error) (util.Hash, error)
- func MakeCacheKey(key string) string
- func Marshal(v interface{}) ([]byte, error)
- func ScanCRLF(data []byte, atEOF bool) (int, []byte, error)
- func Unmarshal(b []byte, v interface{}) error
- func WriteFromCache(b []byte, w http.ResponseWriter) error
- type AccountDoc
- type AccountValue
- func (va AccountValue) Account() currency.Account
- func (va AccountValue) Balance() []currency.Amount
- func (va *AccountValue) DecodeBSON(b []byte, enc *bsonenc.Encoder) error
- func (va *AccountValue) DecodeJSON(b []byte, enc *jsonenc.Encoder) error
- func (va AccountValue) Height() base.Height
- func (va AccountValue) MarshalBSON() ([]byte, error)
- func (va AccountValue) MarshalJSON() ([]byte, error)
- func (va AccountValue) SetBalance(balance []currency.Amount) AccountValue
- func (va AccountValue) SetHeight(height base.Height) AccountValue
- type AccountValueBSONUnmarshaler
- type AccountValueJSONMarshaler
- type AccountValueJSONUnmarshaler
- type BalanceDoc
- type BaseHal
- func (hal BaseHal) AddExtras(key string, value interface{}) Hal
- func (hal BaseHal) AddLink(rel string, link HalLink) Hal
- func (hal BaseHal) Extras() map[string]interface{}
- func (hal BaseHal) Interface() interface{}
- func (hal BaseHal) Links() map[string]HalLink
- func (hal BaseHal) MarshalJSON() ([]byte, error)
- func (hal BaseHal) RawInterface() []byte
- func (hal BaseHal) Self() HalLink
- func (hal BaseHal) SetInterface(i interface{}) Hal
- func (hal BaseHal) SetSelf(u HalLink) Hal
- func (hal *BaseHal) UnmarshalJSON(b []byte) error
- type BaseHalJSONMarshaler
- type BaseHalJSONUnpacker
- type BlockSession
- type Cache
- type CacheResponseWriter
- func (cr *CacheResponseWriter) Cache() error
- func (cr *CacheResponseWriter) Expire() time.Duration
- func (cr *CacheResponseWriter) Key() string
- func (cr *CacheResponseWriter) OK() bool
- func (cr *CacheResponseWriter) SetExpire(expire time.Duration) *CacheResponseWriter
- func (cr *CacheResponseWriter) SetKey(key string) *CacheResponseWriter
- func (cr *CacheResponseWriter) SkipCache() *CacheResponseWriter
- func (cr *CacheResponseWriter) Write(b []byte) (int, error)
- func (cr *CacheResponseWriter) WriteHeader(status int)
- type CachedHTTPHandler
- type CurrencyDoc
- type Database
- func (st *Database) Account(a base.Address) (AccountValue, bool, error)
- func (st *Database) AccountsByPublickey(pub base.Publickey, loadBalance bool, offsetHeight base.Height, ...) error
- func (st *Database) Clean() error
- func (st *Database) CleanByHeight(ctx context.Context, height base.Height) error
- func (st *Database) Close() error
- func (st *Database) Initialize() error
- func (st *Database) LastBlock() base.Height
- func (st *Database) ManifestByHash(hash mitumutil.Hash) (base.Manifest, error)
- func (st *Database) ManifestByHeight(height base.Height) (base.Manifest, error)
- func (st *Database) Manifests(load bool, reverse bool, offset base.Height, limit int64, ...) error
- func (st *Database) New() (*Database, error)
- func (st *Database) Operation(h mitumutil.Hash, load bool) (OperationValue, bool, error)
- func (st *Database) Operations(filter bson.M, load bool, reverse bool, limit int64, ...) error
- func (st *Database) OperationsByAddress(address base.Address, load, reverse bool, offset string, limit int64, ...) error
- func (st *Database) Readonly() bool
- func (st *Database) SetLastBlock(height base.Height) error
- type DigestError
- type Digester
- type DummyCache
- type HTTP2Server
- type Hal
- type HalLink
- func (hl HalLink) Href() string
- func (hl HalLink) MarshalJSON() ([]byte, error)
- func (hl HalLink) Properties() map[string]interface{}
- func (hl HalLink) SetProperty(key string, value interface{}) HalLink
- func (hl HalLink) SetTemplated() HalLink
- func (hl HalLink) URL() (*url.URL, error)
- func (hl *HalLink) UnmarshalJSON(b []byte) error
- type HalLinkJSONUnpacker
- type Handlers
- func (hd *Handlers) Cache() Cache
- func (hd *Handlers) Handler() http.Handler
- func (hd *Handlers) Initialize() error
- func (hd *Handlers) Router() *mux.Router
- func (hd *Handlers) SetLimiter(f func(string) int64) *Handlers
- func (hd *Handlers) SetNodeInfoHandler(handler NodeInfoHandler) *Handlers
- func (hd *Handlers) SetSend(f func(interface{}) (base.Operation, error)) *Handlers
- type LocalMemCache
- type ManifestDoc
- type ManifestValue
- type Memcached
- type NodeInfoHandler
- type OperationDoc
- type OperationValue
- func (va OperationValue) ConfirmedAt() time.Time
- func (va *OperationValue) DecodeBSON(b []byte, enc *bsonenc.Encoder) error
- func (va *OperationValue) DecodeJSON(b []byte, enc *jsonenc.Encoder) error
- func (va OperationValue) Height() base.Height
- func (OperationValue) Hint() hint.Hint
- func (va OperationValue) InState() bool
- func (va OperationValue) Index() uint64
- func (va OperationValue) MarshalBSON() ([]byte, error)
- func (va OperationValue) MarshalJSON() ([]byte, error)
- func (va OperationValue) Operation() base.Operation
- func (va OperationValue) Reason() base.OperationProcessReasonError
- type OperationValueBSONUnmarshaler
- type OperationValueJSONMarshaler
- type OperationValueJSONUnmarshaler
- type Problem
Constants ¶
const ( ProblemMimetype = "application/problem+json; charset=utf-8" ProblemNamespace = "https://github.com/ProtoconNet/mitum-currency/v2/problems" DefaultProblemType = "others" )
Variables ¶
var ( DefaultCacheExpire = time.Hour SkipCacheError = mitumutil.NewError("skip cache") )
var ( HTTP2EncoderHintHeader = http.CanonicalHeaderKey("x-mitum-encoder-hint") HALMimetype = "application/hal+json; charset=utf-8" )
var ( HandlerPathNodeInfo = `/` HandlerPathCurrencies = `/currency` HandlerPathCurrency = `/currency/{currencyid:.*}` HandlerPathManifests = `/block/manifests` HandlerPathOperations = `/block/operations` HandlerPathOperation = `/block/operation/{hash:(?i)[0-9a-z][0-9a-z]+}` HandlerPathBlockByHeight = `/block/{height:[0-9]+}` HandlerPathBlockByHash = `/block/{hash:(?i)[0-9a-z][0-9a-z]+}` HandlerPathOperationsByHeight = `/block/{height:[0-9]+}/operations` HandlerPathManifestByHeight = `/block/{height:[0-9]+}/manifest` HandlerPathManifestByHash = `/block/{hash:(?i)[0-9a-z][0-9a-z]+}/manifest` HandlerPathAccount = `/account/{address:(?i)` + base.REStringAddressString + `}` // revive:disable-line:line-length-limit HandlerPathAccountOperations = `/account/{address:(?i)` + base.REStringAddressString + `}/operations` // revive:disable-line:line-length-limit HandlerPathAccounts = `/accounts` HandlerPathOperationBuildFactTemplate = `/builder/operation/fact/template/{fact:[\w][\w\-]*}` HandlerPathOperationBuildFact = `/builder/operation/fact` HandlerPathOperationBuildSign = `/builder/operation/sign` HandlerPathOperationBuild = `/builder/operation` HandlerPathSend = `/builder/send` )
var (
AccountValueHint = hint.MustNewHint("mitum-currency-account-value-v0.0.1")
)
var AllCollections = []string{
defaultColNameAccount,
defaultColNameBalance,
defaultColNameCurrency,
defaultColNameOperation,
defaultColNameBlock,
}
var (
BaseHalHint = hint.MustNewHint("mitum-currency-hal-v0.0.1")
)
var DigestStorageLastBlockKey = "digest_last_block"
var GlobalItemsLimit int64 = 10
var HALJSONConfigDefault = jsoniter.Config{ EscapeHTML: false, }.Froze()
var JSON = jsoniter.Config{ EscapeHTML: true, SortMapKeys: false, ValidateJsonRawMessage: false, }.Froze()
var (
ManifestValueHint = hint.MustNewHint("mitum-currency-manifest-value-v0.0.1")
)
var (
OperationValueHint = hint.MustNewHint("mitum-currency-operation-value-v0.0.1")
)
var (
ProblemHint = hint.MustNewHint("mitum-currency-problem-v0.0.1")
)
var RateLimitHandlerMap = map[string]string{ "node-info": HandlerPathNodeInfo, "currencies": HandlerPathCurrencies, "currency": HandlerPathCurrency, "block-manifests": HandlerPathManifests, "block-operations": HandlerPathOperations, "block-operation": HandlerPathOperation, "block-by-height": HandlerPathBlockByHeight, "block-by-hash": HandlerPathBlockByHash, "block-operations-by-height": HandlerPathOperationsByHeight, "block-manifest-by-height": HandlerPathManifestByHeight, "block-manifest-by-hash": HandlerPathManifestByHash, "account": HandlerPathAccount, "account-operations": HandlerPathAccountOperations, "accounts": HandlerPathAccounts, "builder-operation-fact-template": HandlerPathOperationBuildFactTemplate, "builder-operation-fact": HandlerPathOperationBuildFact, "builder-operation-sign": HandlerPathOperationBuildSign, "builder-operation": HandlerPathOperationBuild, "builder-send": HandlerPathSend, }
var (
UnknownProblem = NewProblem(DefaultProblemType, "unknown problem occurred")
)
Functions ¶
func CacheKeyFromRequest ¶
func CacheKeyPath ¶
func DefaultItemsLimiter ¶
func DigestBlock ¶
func HTTP2HandleError ¶
func HTTP2HandleError(w http.ResponseWriter, err error)
func HTTP2NotSupported ¶
func HTTP2NotSupported(w http.ResponseWriter, err error)
func HTTP2ProblemWithError ¶
func HTTP2ProblemWithError(w http.ResponseWriter, err error, status int)
func HTTP2Stream ¶
func HTTP2WriteCache ¶
func HTTP2WriteCache(w http.ResponseWriter, key string, expire time.Duration)
func HTTP2WriteHal ¶
func HTTP2WriteHalBytes ¶
func HTTP2WritePoblem ¶
func HTTP2WritePoblem(w http.ResponseWriter, pr Problem, status int)
func LoadBalance ¶
func LoadCurrency ¶
func LoadFromCache ¶
func LoadFromCache(cache Cache, key string, w http.ResponseWriter) error
func LoadManifest ¶
func MakeCacheKey ¶
func WriteFromCache ¶
func WriteFromCache(b []byte, w http.ResponseWriter) error
Types ¶
type AccountDoc ¶
type AccountDoc struct { mongodbstorage.BaseDoc // contains filtered or unexported fields }
func NewAccountDoc ¶
func NewAccountDoc(rs AccountValue, enc encoder.Encoder) (AccountDoc, error)
func (AccountDoc) MarshalBSON ¶
func (doc AccountDoc) MarshalBSON() ([]byte, error)
type AccountValue ¶
type AccountValue struct { hint.BaseHinter // contains filtered or unexported fields }
func LoadAccountValue ¶
func LoadAccountValue(decoder func(interface{}) error, encs *encoder.Encoders) (AccountValue, error)
func NewAccountValue ¶
func NewAccountValue(st base.State) (AccountValue, error)
func (AccountValue) Account ¶
func (va AccountValue) Account() currency.Account
func (AccountValue) Balance ¶
func (va AccountValue) Balance() []currency.Amount
func (*AccountValue) DecodeBSON ¶
func (va *AccountValue) DecodeBSON(b []byte, enc *bsonenc.Encoder) error
func (*AccountValue) DecodeJSON ¶
func (va *AccountValue) DecodeJSON(b []byte, enc *jsonenc.Encoder) error
func (AccountValue) Height ¶
func (va AccountValue) Height() base.Height
func (AccountValue) MarshalBSON ¶
func (va AccountValue) MarshalBSON() ([]byte, error)
func (AccountValue) MarshalJSON ¶
func (va AccountValue) MarshalJSON() ([]byte, error)
func (AccountValue) SetBalance ¶
func (va AccountValue) SetBalance(balance []currency.Amount) AccountValue
func (AccountValue) SetHeight ¶
func (va AccountValue) SetHeight(height base.Height) AccountValue
type AccountValueJSONMarshaler ¶
type AccountValueJSONMarshaler struct { hint.BaseHinter currency.AccountJSONMarshaler Balance []currency.Amount `json:"balance,omitempty"` Height base.Height `json:"height"` }
type BalanceDoc ¶
type BalanceDoc struct { mongodbstorage.BaseDoc // contains filtered or unexported fields }
func NewBalanceDoc ¶
NewBalanceDoc gets the State of Amount
func (BalanceDoc) MarshalBSON ¶
func (doc BalanceDoc) MarshalBSON() ([]byte, error)
type BaseHal ¶
type BaseHal struct { hint.BaseHinter // contains filtered or unexported fields }
func NewBaseHal ¶
func (BaseHal) MarshalJSON ¶
func (BaseHal) RawInterface ¶
func (BaseHal) SetInterface ¶
func (*BaseHal) UnmarshalJSON ¶
type BaseHalJSONMarshaler ¶
type BaseHalJSONMarshaler struct { hint.BaseHinter Embedded interface{} `json:"_embedded,omitempty"` Links map[string]HalLink `json:"_links,omitempty"` Extra map[string]interface{} `json:"_extra,omitempty"` }
type BaseHalJSONUnpacker ¶
type BaseHalJSONUnpacker struct { Embedded json.RawMessage `json:"_embedded,omitempty"` Links map[string]HalLink `json:"_links,omitempty"` Extra map[string]interface{} `json:"_extra,omitempty"` }
type BlockSession ¶
func NewBlockSession ¶
func (*BlockSession) Close ¶
func (bs *BlockSession) Close() error
func (*BlockSession) Prepare ¶
func (bs *BlockSession) Prepare() error
type Cache ¶
func NewCacheFromURI ¶
type CacheResponseWriter ¶
type CacheResponseWriter struct { http.ResponseWriter // contains filtered or unexported fields }
func NewCacheResponseWriter ¶
func NewCacheResponseWriter(cache Cache, w http.ResponseWriter, r *http.Request) *CacheResponseWriter
func (*CacheResponseWriter) Cache ¶
func (cr *CacheResponseWriter) Cache() error
func (*CacheResponseWriter) Expire ¶
func (cr *CacheResponseWriter) Expire() time.Duration
func (*CacheResponseWriter) Key ¶
func (cr *CacheResponseWriter) Key() string
func (*CacheResponseWriter) OK ¶
func (cr *CacheResponseWriter) OK() bool
func (*CacheResponseWriter) SetExpire ¶
func (cr *CacheResponseWriter) SetExpire(expire time.Duration) *CacheResponseWriter
func (*CacheResponseWriter) SetKey ¶
func (cr *CacheResponseWriter) SetKey(key string) *CacheResponseWriter
func (*CacheResponseWriter) SkipCache ¶
func (cr *CacheResponseWriter) SkipCache() *CacheResponseWriter
func (*CacheResponseWriter) WriteHeader ¶
func (cr *CacheResponseWriter) WriteHeader(status int)
type CachedHTTPHandler ¶
func NewCachedHTTPHandler ¶
func NewCachedHTTPHandler(cache Cache, f func(http.ResponseWriter, *http.Request)) CachedHTTPHandler
func (CachedHTTPHandler) ServeHTTP ¶
func (ch CachedHTTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type CurrencyDoc ¶
type CurrencyDoc struct { mongodbstorage.BaseDoc // contains filtered or unexported fields }
func NewCurrencyDoc ¶
NewBalanceDoc gets the State of Amount
func (CurrencyDoc) MarshalBSON ¶
func (doc CurrencyDoc) MarshalBSON() ([]byte, error)
type Database ¶
func NewDatabase ¶
func NewDatabase(mitum *isaacdatabase.Center, st *mongodbstorage.Database) (*Database, error)
func NewReadonlyDatabase ¶
func NewReadonlyDatabase(mitum *isaacdatabase.Center, st *mongodbstorage.Database) (*Database, error)
func (*Database) AccountsByPublickey ¶
func (st *Database) AccountsByPublickey( pub base.Publickey, loadBalance bool, offsetHeight base.Height, offsetAddress string, limit int64, callback func(AccountValue) (bool, error), ) error
AccountsByPublickey finds Accounts, which are related with the given Publickey. * offset: returns from next of offset, usually it is "<height>,<address>".
func (*Database) CleanByHeight ¶
func (*Database) Initialize ¶
func (*Database) ManifestByHash ¶
func (*Database) ManifestByHeight ¶
func (*Database) Manifests ¶
func (st *Database) Manifests( load bool, reverse bool, offset base.Height, limit int64, callback func(base.Height, base.Manifest) (bool, error), ) error
Manifests returns block.Manifests by it's order, height.
func (*Database) Operation ¶
Operation returns operation.Operation. If load is false, just returns nil Operation.
func (*Database) Operations ¶
func (st *Database) Operations( filter bson.M, load bool, reverse bool, limit int64, callback func(mitumutil.Hash, OperationValue) (bool, error), ) error
Operations returns operation.Operations by it's order, height and index.
func (*Database) OperationsByAddress ¶
func (st *Database) OperationsByAddress( address base.Address, load, reverse bool, offset string, limit int64, callback func(mitumutil.Hash, OperationValue) (bool, error), ) error
OperationsByAddress finds the operation.Operations, which are related with the given Address. The returned valuehash.Hash is the operation.Operation.Fact().Hash(). * load:if true, load operation.Operation and returns it. If not, just hash will be returned * reverse: order by height; if true, higher height will be returned first. * offset: returns from next of offset, usually it is combination of "<height>,<fact>".
type DigestError ¶
type DigestError struct {
// contains filtered or unexported fields
}
func NewDigestError ¶
func NewDigestError(err error, height base.Height) DigestError
func (DigestError) Error ¶
func (de DigestError) Error() string
func (DigestError) Height ¶
func (de DigestError) Height() base.Height
func (DigestError) IsError ¶
func (de DigestError) IsError() bool
type Digester ¶
type DummyCache ¶
type DummyCache struct{}
type HTTP2Server ¶
type HTTP2Server struct { sync.RWMutex *logging.Logging *mitumutil.ContextDaemon // contains filtered or unexported fields }
func NewHTTP2Server ¶
func NewHTTP2Server(bind, host string, certs []tls.Certificate) (*HTTP2Server, error)
func (*HTTP2Server) Initialize ¶
func (sv *HTTP2Server) Initialize() error
func (*HTTP2Server) Router ¶
func (sv *HTTP2Server) Router() *mux.Router
func (*HTTP2Server) SetRouter ¶
func (sv *HTTP2Server) SetRouter(router *mux.Router)
type HalLink ¶
type HalLink struct {
// contains filtered or unexported fields
}
func NewHalLink ¶
func (HalLink) MarshalJSON ¶
func (HalLink) Properties ¶
func (HalLink) SetProperty ¶
func (HalLink) SetTemplated ¶
func (*HalLink) UnmarshalJSON ¶
type HalLinkJSONUnpacker ¶
type Handlers ¶
func NewHandlers ¶
func (*Handlers) Initialize ¶
func (*Handlers) SetNodeInfoHandler ¶
func (hd *Handlers) SetNodeInfoHandler(handler NodeInfoHandler) *Handlers
type LocalMemCache ¶
type LocalMemCache struct {
// contains filtered or unexported fields
}
func NewLocalMemCache ¶
func NewLocalMemCache(size int, expire time.Duration) *LocalMemCache
type ManifestDoc ¶
type ManifestDoc struct { mongodbstorage.BaseDoc // contains filtered or unexported fields }
func NewManifestDoc ¶
func (ManifestDoc) MarshalBSON ¶
func (doc ManifestDoc) MarshalBSON() ([]byte, error)
type ManifestValue ¶
type ManifestValue struct { hint.BaseHinter // contains filtered or unexported fields }
func NewManifestValue ¶
func (ManifestValue) ConfirmedAt ¶
func (va ManifestValue) ConfirmedAt() time.Time
func (ManifestValue) Height ¶
func (va ManifestValue) Height() base.Height
func (ManifestValue) Hint ¶
func (ManifestValue) Hint() hint.Hint
func (ManifestValue) Manifest ¶
func (va ManifestValue) Manifest() base.Manifest
type Memcached ¶
type Memcached struct {
// contains filtered or unexported fields
}
func NewMemcached ¶
type NodeInfoHandler ¶
type NodeInfoHandler func() (isaacnetwork.NodeInfo, error)
type OperationDoc ¶
type OperationDoc struct { mongodbstorage.BaseDoc // contains filtered or unexported fields }
func NewOperationDoc ¶
func (OperationDoc) MarshalBSON ¶
func (doc OperationDoc) MarshalBSON() ([]byte, error)
type OperationValue ¶
type OperationValue struct { hint.BaseHinter // contains filtered or unexported fields }
func LoadOperation ¶
func LoadOperation(decoder func(interface{}) error, encs *encoder.Encoders) (OperationValue, error)
func NewOperationValue ¶
func (OperationValue) ConfirmedAt ¶
func (va OperationValue) ConfirmedAt() time.Time
func (*OperationValue) DecodeBSON ¶
func (va *OperationValue) DecodeBSON(b []byte, enc *bsonenc.Encoder) error
func (*OperationValue) DecodeJSON ¶
func (va *OperationValue) DecodeJSON(b []byte, enc *jsonenc.Encoder) error
func (OperationValue) Height ¶
func (va OperationValue) Height() base.Height
func (OperationValue) Hint ¶
func (OperationValue) Hint() hint.Hint
func (OperationValue) InState ¶
func (va OperationValue) InState() bool
func (OperationValue) Index ¶
func (va OperationValue) Index() uint64
Index indicates the index number of Operation in OperationTree of block.
func (OperationValue) MarshalBSON ¶
func (va OperationValue) MarshalBSON() ([]byte, error)
func (OperationValue) MarshalJSON ¶
func (va OperationValue) MarshalJSON() ([]byte, error)
func (OperationValue) Operation ¶
func (va OperationValue) Operation() base.Operation
func (OperationValue) Reason ¶
func (va OperationValue) Reason() base.OperationProcessReasonError
type OperationValueJSONMarshaler ¶
type OperationValueJSONMarshaler struct { hint.BaseHinter Hash util.Hash `json:"hash"` Operation base.Operation `json:"operation"` Height base.Height `json:"height"` ConfirmedAt localtime.Time `json:"confirmed_at"` Reason base.OperationProcessReasonError `json:"reason"` InState bool `json:"in_state"` Index uint64 `json:"index"` }
type OperationValueJSONUnmarshaler ¶
type OperationValueJSONUnmarshaler struct { Operation json.RawMessage `json:"operation"` Height base.Height `json:"height"` ConfirmedAt localtime.Time `json:"confirmed_at"` InState bool `json:"in_state"` Reason json.RawMessage `json:"reason"` Index uint64 `json:"index"` }
type Problem ¶
type Problem struct {
// contains filtered or unexported fields
}
Problem implements "Problem Details for HTTP APIs"<https://tools.ietf.org/html/rfc7807>.
func NewProblem ¶
func NewProblemFromError ¶
Source Files ¶
- account_value.go
- account_value_bson.go
- account_value_encode.go
- account_value_json.go
- block_session.go
- cache.go
- database.go
- decode.go
- digest.go
- doc.go
- doc_account.go
- doc_currency.go
- doc_manifest.go
- doc_operation.go
- hal.go
- hal_json.go
- handler.go
- handler_account.go
- handler_block.go
- handler_currency.go
- handler_manifest.go
- handler_node_info.go
- handler_operation.go
- handler_send.go
- index.go
- manifest_value.go
- manifest_value_bson.go
- operation_value.go
- operation_value_bson.go
- operation_value_json.go
- problem.go
- server.go
- util.go