diff --git a/.script/protoc-java.sh b/.script/protoc-java.sh index 356243b..2e5371c 100644 --- a/.script/protoc-java.sh +++ b/.script/protoc-java.sh @@ -13,7 +13,7 @@ mkdir -p build PLUGIN_EXE=protoc-gen-grpc-java-$VERSION-$PLATFORM.exe OUT=build/protoc-gen-grpc-java echo Downloading $PLUGIN_EXE to $OUT... -curl https://search.maven.org/remotecontent?filepath=io/grpc/protoc-gen-grpc-java/$VERSION/$PLUGIN_EXE \ +curl -C - https://search.maven.org/remotecontent?filepath=io/grpc/protoc-gen-grpc-java/$VERSION/$PLUGIN_EXE \ -o $OUT echo Setting plugin as executable... diff --git a/.script/protoc-js.sh b/.script/protoc-js.sh index 63a7bbf..5cb3b4b 100644 --- a/.script/protoc-js.sh +++ b/.script/protoc-js.sh @@ -13,7 +13,7 @@ mkdir -p build OUT=build/protoc-gen-grpc-web PLUGIN_EXE=protoc-gen-grpc-web-$VERSION-$PLATFORM echo Downloading $PLUGIN_EXE to $OUT... -curl -L https://github.com/grpc/grpc-web/releases/download/$VERSION/$PLUGIN_EXE \ +curl -C - -L https://github.com/grpc/grpc-web/releases/download/$VERSION/$PLUGIN_EXE \ -o $OUT echo Setting plugin as executable... diff --git a/Makefile b/Makefile index 4450130..2dee23e 100644 --- a/Makefile +++ b/Makefile @@ -43,16 +43,16 @@ fmt: # install supplementary tooling .PHONY: install install: - go get -u github.com/gogo/protobuf/protoc-gen-gogoslick - go get -u github.com/gogo/protobuf/protoc-gen-gogofaster - go get -u github.com/gogo/protobuf/protoc-gen-gogofast - go get -u github.com/gogo/protobuf/protoc-gen-gogo - go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway - go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger - go get -u github.com/mwitkow/go-proto-validators/protoc-gen-govalidators - go get -u github.com/gogo/protobuf/proto - go get -u github.com/gogo/protobuf/gogoproto - go get -u github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc + go get github.com/gogo/protobuf/protoc-gen-gogoslick + go get github.com/gogo/protobuf/protoc-gen-gogofaster + go get github.com/gogo/protobuf/protoc-gen-gogofast + go get github.com/gogo/protobuf/protoc-gen-gogo + go get github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway + go get github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger + go get github.com/mwitkow/go-proto-validators/protoc-gen-govalidators + go get github.com/gogo/protobuf/proto + go get github.com/gogo/protobuf/gogoproto + go get github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc npm install -g ts-protoc-gen npm install -g grpc npm install -g @grpc/proto-loader diff --git a/doc/PROTO.md b/doc/PROTO.md index 1e093fb..ae648a6 100644 --- a/doc/PROTO.md +++ b/doc/PROTO.md @@ -14,32 +14,27 @@ - [REFREQOPTS](#pb.REFREQOPTS) - [REFREQTYPE](#pb.REFREQTYPE) - - [AdminAPI](#pb.AdminAPI) - - [file.proto](#file.proto) - [Blob](#pb.Blob) - [DownloadRequest](#pb.DownloadRequest) - [DownloadResponse](#pb.DownloadResponse) + - [RemoveRequest](#pb.RemoveRequest) + - [RemoveRequest.RefIDsEntry](#pb.RemoveRequest.RefIDsEntry) + - [RemoveResponse](#pb.RemoveResponse) - [UploadOptions](#pb.UploadOptions) - [UploadRequest](#pb.UploadRequest) - - - [FileAPI](#pb.FileAPI) - - [namesys.proto](#namesys.proto) - [NameSysPublishRequest](#pb.NameSysPublishRequest) - [NameSysResolveRequest](#pb.NameSysResolveRequest) - [NameSysResolveResult](#pb.NameSysResolveResult) - - - [NameSysAPI](#pb.NameSysAPI) - - [node.proto](#node.proto) - [Block](#pb.Block) - [BlockstoreRequest](#pb.BlockstoreRequest) @@ -77,10 +72,8 @@ - [KSREQTYPE](#pb.KSREQTYPE) - [P2PREQTYPE](#pb.P2PREQTYPE) - - [NodeAPI](#pb.NodeAPI) - - [pubsub.proto](#pubsub.proto) - [PubSubMessage](#pb.PubSubMessage) - [PubSubPeer](#pb.PubSubPeer) @@ -89,10 +82,8 @@ - [PSREQTYPE](#pb.PSREQTYPE) - - [PubSubAPI](#pb.PubSubAPI) - - [replication.proto](#replication.proto) - [AddrInfo](#pb.AddrInfo) - [Replication](#pb.Replication) @@ -102,29 +93,20 @@ - [Subscription](#pb.Subscription) - [SubscriptionUpdate](#pb.SubscriptionUpdate) - - - [replicator](#pb.replicator) - - [status.proto](#status.proto) - [StatusResponse](#pb.StatusResponse) - [VersionResponse](#pb.VersionResponse) - [APISTATUS](#pb.APISTATUS) - - [StatusAPI](#pb.StatusAPI) - - [util.proto](#util.proto) - [Empty](#pb.Empty) - [PutResponse](#pb.PutResponse) - - - - - [Scalar Value Types](#scalar-value-types) @@ -287,7 +269,7 @@ Blob is a chunk of binary data | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | content | [bytes](#bytes) | | content is the actual binary data contained in this message | -| rangeStart | [uint64](#uint64) | | Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Range. If both is zero, the blobs streams contents of the file from start to finish. The unit of range is alway in bytes. Currently, DownloadResponse support blob range. | +| rangeStart | [uint64](#uint64) | | Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Range. If both is zero, the blobs streams contents of the file from start to finish. The unit of range is always in bytes. Currently, DownloadResponse support blob range. | | rangeEnd | [uint64](#uint64) | | | @@ -307,7 +289,7 @@ there may be some undefined behavior | ----- | ---- | ----- | ----------- | | hash | [string](#string) | | hash is the ipfs hash/cid (content identifier) of the data to download | | chunkSize | [int32](#int32) | | chunkSize specifies the size of chunks to be sent to the client it allows us to efficiently control incoming data amounts which is useful on machines with low-memory | -| rangeStart | [uint64](#uint64) | | Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range. If both is none zero, only data within range is requested. The unit of range is alway in bytes. If used, please check the returned range values in blobs to make sure this feature is supported. | +| rangeStart | [uint64](#uint64) | | Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range. If both is none zero, only data within range is requested. The unit of range is always in bytes. If used, please check the returned range values in blobs to make sure this feature is supported. | | rangeEnd | [uint64](#uint64) | | | @@ -331,6 +313,52 @@ which allows the gRPC server to stream blobs to the client + + +### RemoveRequest +UploadRequest is used to decrease the reference count on UnixFS objects + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refIDs | [RemoveRequest.RefIDsEntry](#pb.RemoveRequest.RefIDsEntry) | repeated | refIDs is a map of reference IDs to hash/cid of objects to remove those reference counts | + + + + + + + + +### RemoveRequest.RefIDsEntry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| key | [string](#string) | | | +| value | [string](#string) | | | + + + + + + + + +### RemoveResponse +RemoveResponse contains the response to a remove request + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| count | [uint64](#uint64) | | The number of removal operations performed. A missing count is because the refID to hash pair was already removed or was never added | + + + + + + ### UploadOptions @@ -339,9 +367,12 @@ UploadOptions allows controlling the parameters of a file upload | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| multiHash | [string](#string) | | specifes the multihash function to use | +| multiHash | [string](#string) | | specifies the multihash function to use | | layout | [string](#string) | | specifies the dag layout (balanced, tricklet) | | chunker | [string](#string) | | specifies the chunker type (rabin, default, etc...) | +| refID | [string](#string) | | optional reference ID to tag the file with. If set, the same reference ID must be used for deletion | +| progressive | [bool](#bool) | | if refID is set, allows progressive upload | +| replace | [bool](#bool) | | if refID is set, remove the any existing uploads with same refID | @@ -357,7 +388,7 @@ UploadRequest is used to upload data as a UnixFS object | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | blob | [Blob](#pb.Blob) | | blob is a single chunk of data | -| options | [UploadOptions](#pb.UploadOptions) | | options allows setting the optoins for this upload | +| options | [UploadOptions](#pb.UploadOptions) | | options allows setting the options for this upload, only valid in the first message of a stream | @@ -377,8 +408,9 @@ FileAPI provides a gRPC api to upload/download files as UnixFS objects | Method Name | Request Type | Response Type | Description | | ----------- | ------------ | ------------- | ------------| -| UploadFile | [UploadRequest](#pb.UploadRequest) stream | [PutResponse](#pb.PutResponse) | UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs add) | +| UploadFile | [UploadRequest](#pb.UploadRequest) stream | [PutResponse](#pb.PutResponse) | UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs pin add) | | DownloadFile | [DownloadRequest](#pb.DownloadRequest) | [DownloadResponse](#pb.DownloadResponse) stream | DownloadFile allows downloading a UnixFS object (equivalent to ipfs get) | +| RemoveFile | [RemoveRequest](#pb.RemoveRequest) | [RemoveResponse](#pb.RemoveResponse) | RemoveFile allows removing a UnixFS object or decrease it's reference counter (equivalent to ipfs pin rm) | @@ -481,7 +513,7 @@ NameSysAPI provides a generic name resolution API | ----- | ---- | ----- | ----------- | | cid | [string](#string) | | cid is the identifier of the block | | data | [bytes](#bytes) | | data is the actual contents of the block | -| size | [int64](#int64) | | size of the block, only filled out by BS_GET_STATS since if we just want stats, we dont want to retrieve all the data. | +| size | [int64](#int64) | | size of the block, only filled out by BS_GET_STATS since if we just want stats, we don't want to retrieve all the data. | @@ -502,6 +534,9 @@ BlockstoreRequest is a message used to control blockstores | data | [bytes](#bytes) | repeated | the data we are putting sent by: BS_PUT, BS_PUT_MANY | | cidVersion | [string](#string) | | the cid version to use when constructing blocks, default is v1 sent by: BS_PUT, BS_PUT_MANY | | hashFunc | [string](#string) | | the hash function to use when constructing blocks, default is sha2-256 sent by: BS_PUT, BS_PUT_MANY | +| refID | [string](#string) | | reference ID to mark the blocks of this operation with when sent by BS_PUT, BS_PUT_MANY: only put if the id is not marked on block, otherwise noop when sent by BS_GET, BS_GET_MANY: only get if the id is marked on block when sent by BS_DELETE: only delete if the id is marked on block | +| progressive | [bool](#bool) | | if refID is set, allows progressive upload | +| replace | [bool](#bool) | | if refID is set, remove the any existing blocks with same refID | @@ -511,7 +546,7 @@ BlockstoreRequest is a message used to control blockstores ### BlockstoreResponse -BlockstoreResponse is a response to a BlockstoreqRequest +BlockstoreResponse is a response to a BlockstoreRequest | Field | Type | Label | Description | @@ -625,8 +660,11 @@ Used to submit a request to Dag or DagStream RPCs | serializationFormat | [string](#string) | | the serialization format (raw, cbor, protobuf, etc...) sent by: DAG_PUT | | hashFunc | [string](#string) | | the hash function to to use (sha2-256, sha3-512, etc...) sent by: DAG_PUT, DAG_NEW_NODE, DAG_ADD_LINKS | | cidVersion | [int64](#int64) | | the cid version to use (0, 1) sent by: DAG_PUT, DAG_NEW_NODE | -| hash | [string](#string) | | the hash of the object we are processing sent by: DAG_GET, DAG_NEW_NODe, DAG_ADD_LINKS, DAG_GET_LINKS | +| hash | [string](#string) | | the hash of the object we are processing sent by: DAG_GET, DAG_NEW_NODe, DAG_ADD_LINKS, DAG_GET_LINKS, DAG_REMOVE | | links | [DagRequest.LinksEntry](#pb.DagRequest.LinksEntry) | repeated | indicates links and their names. key = name, value = link hash sent by: DAG_NEW_NODE, DAG_ADD_LINKS | +| refID | [string](#string) | | optional reference ID to mark the cid/hash with sent by: DAG_PUT, DAG_REMOVE | +| progressive | [bool](#bool) | | if refID is set, allows progressive upload | +| replace | [bool](#bool) | | if refID is set, remove the any existing DAGs with same refID | @@ -662,6 +700,7 @@ Used in response to a Dag or DagStream RPC | rawData | [bytes](#bytes) | | the actual data contained by the IPLD object sent by: DAG_GET | | links | [IPLDLink](#pb.IPLDLink) | repeated | the links contained within an IPLD node object sent by: DAG_GET_LINKS | | nodeStats | [DagResponse.NodeStatsEntry](#pb.DagResponse.NodeStatsEntry) | repeated | maps ipld cids to a ipld.NodeStat object equivalent sent by: DAG_STAT | +| count | [uint64](#uint64) | | The number of removal operations performed. sent by: DAG_REMOVE | @@ -871,6 +910,8 @@ P2PResponse is a response message sent in response to a P2PRequest message | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | cids | [string](#string) | repeated | cids to persist locally | +| refID | [string](#string) | | optional reference ID to mark the cids with | +| progressive | [bool](#bool) | | if refID is set, allows progressive upload | @@ -986,6 +1027,7 @@ DAGREQTYPE indicates the particular DagAPI request being performed | DAG_ADD_LINKS | 3 | DAG_ADD_LINKS is used to add links to an IPLD node object | | DAG_GET_LINKS | 4 | DAG_GET_LINKS is used to retrieve all links contained in an IPLD node object | | DAG_STAT | 5 | DAG_STAT is used to retrieve ipld.NodeStats information | +| DAG_REMOVE | 6 | DAG_REMOVE is the inverse of DAG_PUT | @@ -1158,7 +1200,7 @@ PSREQTYPE indicates the particular PubSubAPI request being performed | PS_GET_TOPICS | 0 | PS_GET_TOPICS is used to return a list of subscribed pubsub topics | | PS_LIST_PEERS | 1 | PS_LIST_PEERS is used to return a list of peers subscribed to topics we are subscribed to | | PS_SUBSCRIBE | 2 | PS_SUBSCRIBE is used to establish a persistent subscription to a pubsub topic | -| PS_PUBLISH | 3 | PS_PUBLISH is used to publisbh a message to a pubsub topic | +| PS_PUBLISH | 3 | PS_PUBLISH is used to publish a message to a pubsub topic | diff --git a/go.mod b/go.mod index 35b0391..1657636 100644 --- a/go.mod +++ b/go.mod @@ -3,26 +3,60 @@ module github.com/RTradeLtd/TxPB/v3 go 1.13 require ( - github.com/RTradeLtd/go-libp2p-tls v0.2.3 + github.com/Masterminds/goutils v1.1.0 // indirect + github.com/Masterminds/semver v1.5.0 // indirect + github.com/Masterminds/sprig v2.22.0+incompatible // indirect + github.com/RTradeLtd/go-libp2p-tls v0.2.4 + github.com/btcsuite/btcd v0.21.0-beta // indirect + github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect + github.com/envoyproxy/protoc-gen-validate v0.4.1 // indirect github.com/gogo/protobuf v1.3.1 - github.com/golang/protobuf v1.3.5 // indirect - github.com/google/go-cmp v0.3.1 // indirect + github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e // indirect + github.com/google/go-cmp v0.5.2 // indirect + github.com/google/gopacket v1.1.18 // indirect + github.com/google/uuid v1.1.2 // indirect + github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00 // indirect + github.com/grpc-ecosystem/grpc-gateway v1.14.6 + github.com/huandu/xstrings v1.3.2 // indirect + github.com/imdario/mergo v0.3.11 // indirect + github.com/ipfs/go-bitswap v0.2.20 // indirect github.com/ipfs/go-block-format v0.0.2 - github.com/ipfs/go-cid v0.0.5 - github.com/ipfs/go-datastore v0.4.4 // indirect + github.com/ipfs/go-blockservice v0.1.3 // indirect + github.com/ipfs/go-cid v0.0.7 + github.com/ipfs/go-datastore v0.4.5 // indirect + github.com/ipfs/go-ipfs-blockstore v1.0.1 // indirect + github.com/ipfs/go-ipld-cbor v0.0.4 // indirect github.com/ipfs/go-ipld-format v0.2.0 - github.com/ipfs/go-merkledag v0.3.1 - github.com/libp2p/go-libp2p-core v0.5.1 - github.com/multiformats/go-multiaddr v0.2.1 - github.com/multiformats/go-multiaddr-net v0.1.4 + github.com/ipfs/go-merkledag v0.3.2 + github.com/kr/text v0.2.0 // indirect + github.com/libp2p/go-libp2p v0.11.0 // indirect + github.com/libp2p/go-libp2p-core v0.6.1 + github.com/libp2p/go-libp2p-record v0.1.3 // indirect + github.com/libp2p/go-sockaddr v0.1.0 // indirect + github.com/mitchellh/copystructure v1.0.0 // indirect + github.com/mitchellh/reflectwalk v1.0.1 // indirect + github.com/multiformats/go-multiaddr v0.3.1 + github.com/multiformats/go-multiaddr-net v0.2.0 + github.com/mwitkow/go-proto-validators v0.3.2 + github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e // indirect + github.com/onsi/ginkgo v1.14.1 // indirect + github.com/onsi/gomega v1.10.2 // indirect github.com/pkg/errors v0.9.1 - go.uber.org/zap v1.14.1 - golang.org/x/crypto v0.0.0-20200406173513-056763e48d71 // indirect - golang.org/x/lint v0.0.0-20200302205851-738671d3881b // indirect - golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e // indirect - golang.org/x/sys v0.0.0-20200409092240-59c9f1ba88fa // indirect - golang.org/x/tools v0.0.0-20200413015812-1f08ef6002a8 // indirect - google.golang.org/genproto v0.0.0-20200413115906-b5235f65be36 // indirect - google.golang.org/grpc v1.28.1 - gopkg.in/yaml.v2 v2.2.8 // indirect + github.com/polydawn/refmt v0.0.0-20190807091052-3d65705ee9f1 // indirect + github.com/pseudomuto/protoc-gen-doc v1.3.2 + github.com/smartystreets/assertions v1.2.0 // indirect + github.com/smartystreets/goconvey v1.6.4 // indirect + github.com/warpfork/go-wish v0.0.0-20200122115046-b9ea61034e4a // indirect + github.com/whyrusleeping/cbor-gen v0.0.0-20200826160007-0b9f6c5fb163 // indirect + go.uber.org/goleak v1.1.10 // indirect + go.uber.org/zap v1.16.0 + golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a // indirect + golang.org/x/net v0.0.0-20200925080053-05aa5d4ee321 // indirect + golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d // indirect + golang.org/x/tools v0.0.0-20200925191224-5d1fdd8fa346 // indirect + google.golang.org/genproto v0.0.0-20200925023002-c2d885f95484 // indirect + google.golang.org/grpc v1.29.1 + gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b // indirect + gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776 // indirect + honnef.co/go/tools v0.0.1-2020.1.5 // indirect ) diff --git a/go.sum b/go.sum index 5611d46..3a72104 100644 --- a/go.sum +++ b/go.sum @@ -1,109 +1,215 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8= +github.com/AndreasBriese/bbloom v0.0.0-20190306092124-e2d15f34fcf9/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8= github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/Kubuxu/go-os-helper v0.0.1/go.mod h1:N8B+I7vPCT80IcP58r50u4+gEEcsZETFUpAzWW2ep1Y= -github.com/RTradeLtd/go-libp2p-tls v0.2.3 h1:oZzA2TcJyl6jQNcrMPi14tV42Dq/8cAkCAofNUjVhnU= -github.com/RTradeLtd/go-libp2p-tls v0.2.3/go.mod h1:p6uSB3K4uk01KLyk58pBRfVZhUGXYSchPhY+O3zx2MQ= +github.com/Masterminds/goutils v1.1.0/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= +github.com/Masterminds/semver v1.4.2/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/Masterminds/sprig v2.15.0+incompatible/go.mod h1:y6hNFY5UBTIWBxnzTeuNhlNS5hqE0NB0E6fgfo2Br3o= +github.com/Masterminds/sprig v2.22.0+incompatible/go.mod h1:y6hNFY5UBTIWBxnzTeuNhlNS5hqE0NB0E6fgfo2Br3o= +github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/RTradeLtd/go-libp2p-tls v0.2.4 h1:SKjLKu9b5j6Nixu0gchAWS97yV4XHaqHilq7ZFPJzjM= +github.com/RTradeLtd/go-libp2p-tls v0.2.4/go.mod h1:9CS6TsLjrFTkcTFmUIkMWpHVat+XeoLxOF11AfINwDY= github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII= +github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/aokoli/goutils v1.0.1/go.mod h1:SijmP0QR8LtwsmDs8Yii5Z/S4trXFGFC2oO5g9DP+DQ= +github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= github.com/btcsuite/btcd v0.0.0-20190213025234-306aecffea32/go.mod h1:DrZx5ec/dmnfpw9KyYoQyYo7d0KEvTkk/5M/vbZjAr8= github.com/btcsuite/btcd v0.0.0-20190523000118-16327141da8c/go.mod h1:3J08xEfcugPacsc34/LKRU2yO7YmuT8yt28J8k2+rrI= +github.com/btcsuite/btcd v0.0.0-20190605094302-a0d1e3e36d50/go.mod h1:3J08xEfcugPacsc34/LKRU2yO7YmuT8yt28J8k2+rrI= +github.com/btcsuite/btcd v0.0.0-20190824003749-130ea5bddde3/go.mod h1:3J08xEfcugPacsc34/LKRU2yO7YmuT8yt28J8k2+rrI= github.com/btcsuite/btcd v0.20.1-beta h1:Ik4hyJqN8Jfyv3S4AGBOmyouMsYE3EdYODkMbQjwPGw= github.com/btcsuite/btcd v0.20.1-beta/go.mod h1:wVuoA8VJLEcwgqHBwHmzLRazpKxTv13Px/pDuV7OomQ= +github.com/btcsuite/btcd v0.21.0-beta h1:At9hIZdJW0s9E/fAz28nrz6AmcNlSVucCH796ZteX1M= +github.com/btcsuite/btcd v0.21.0-beta/go.mod h1:ZSWyehm27aAuS9bvkATT+Xte3hjHZ+MRgMY/8NJ7K94= github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA= github.com/btcsuite/btcutil v0.0.0-20190207003914-4c204d697803/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg= github.com/btcsuite/btcutil v0.0.0-20190425235716-9e5f4b9a998d/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg= +github.com/btcsuite/btcutil v1.0.2/go.mod h1:j9HUFwoQRsZL3V4n+qG+CUnEGHOarIxfC3Le2Yhbcts= github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg= github.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVaaLLH7j4eDXPRvw78tMflu7Ie2bzYOH4Y8rRKBY= +github.com/btcsuite/goleveldb v1.0.0/go.mod h1:QiK9vBlgftBg6rWQIj6wFzbPfRjiykIEhBH4obrXJ/I= github.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc= +github.com/btcsuite/snappy-go v1.0.0/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc= github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY= github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= +github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= github.com/coreos/go-semver v0.3.0 h1:wkHLiw0WNATZnSG7epLsujiMCgPAc9xhjJ4tgnAxmfM= github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/cskr/pubsub v1.0.2 h1:vlOzMhl6PFn60gRlTQQsIfVwaPB/B/8MziK8FhEPt/0= github.com/cskr/pubsub v1.0.2/go.mod h1:/8MzYXk/NJAz782G8RPkFzXTZVu63VotefPnR9TIRis= +github.com/davecgh/go-spew v0.0.0-20161028175848-04cdfd42973b/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davidlazar/go-crypto v0.0.0-20170701192655-dcfb0a7ac018 h1:6xT9KW8zLC5IlbaIF5Q7JNieBoACT7iW0YTxQHR0in0= +github.com/davidlazar/go-crypto v0.0.0-20170701192655-dcfb0a7ac018/go.mod h1:rQYf4tfk5sSwFsnDg3qYaBxSjsD9S8+59vW0dKUgme4= +github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c h1:pFUpOrbxDR6AkioZ1ySsx5yxlDQZ8stG2b88gTPxgJU= +github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c/go.mod h1:6UhI8N9EjYm1c2odKpFpAYeR8dsBeM7PtzQhRgxRr9U= +github.com/decred/dcrd/lru v1.0.0/go.mod h1:mxKOwFd7lFjN2GZYsiz/ecgqR6kkYAl+0pz0tEMk218= github.com/dgraph-io/badger v1.5.5-0.20190226225317-8115aed38f8f/go.mod h1:VZxzAIRPHRVNRKRo6AXrX9BJegn6il06VMTZVJYCIjQ= +github.com/dgraph-io/badger v1.6.0-rc1/go.mod h1:zwt7syl517jmP8s94KqSxTlM6IMsdhYy6psNgSztDR4= +github.com/dgraph-io/badger v1.6.0/go.mod h1:zwt7syl517jmP8s94KqSxTlM6IMsdhYy6psNgSztDR4= +github.com/dgraph-io/badger v1.6.1/go.mod h1:FRmFw3uxvcpa8zG3Rxs0th+hCLIuaQg8HlNV5bjgnuU= +github.com/dgraph-io/ristretto v0.0.2/go.mod h1:KPxhHT9ZxKefz+PCeOGsrHpl1qZ7i70dGTu2u+Ahh6E= github.com/dgryski/go-farm v0.0.0-20190104051053-3adb47b1fb0f/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= +github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= +github.com/envoyproxy/protoc-gen-validate v0.0.14/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/envoyproxy/protoc-gen-validate v0.1.0 h1:EQciDnbrYxy13PgWoY8AqoxGiPrpgBZ1R8UNe3ddc+A= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/envoyproxy/protoc-gen-validate v0.4.1 h1:7dLaJvASGRD7X49jSCSXXHwKPm0ZN9r9kJD+p+vS7dM= +github.com/envoyproxy/protoc-gen-validate v0.4.1/go.mod h1:E+IEazqdaWv3FrnGtZIu3b9fPFMK8AzeTTrk9SfVwWs= +github.com/flynn/noise v0.0.0-20180327030543-2492fe189ae6/go.mod h1:1i71OnUq3iUe1ma7Lr6yG6/rjvM3emb6yoL7xLFzcVQ= github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9 h1:hsms1Qyu0jgnwNXIxa+/V/PDsU6CfLf6CNO8H7IWoS4= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/go-check/check v0.0.0-20180628173108-788fd7840127/go.mod h1:9ES+weclKsC9YodN5RgxqK/VD9HM9JsCSh7rNhMZE98= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.1 h1:DqDEcV5aeaTmdFBePNpYsp3FlcVH/2ISVVM9Qf8PSls= github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6 h1:ZgQEtGgCBiWRM39fZuwSd1LwSqqSW0hOdXCYYDX0R3I= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e h1:1r7pUrabqp18hOBcwBwiTsbnFeTZHV9eER/QT5JVZxY= +github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/protobuf v1.1.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.0/go.mod h1:Qd/q+1AKNOZr9uGQzbzCmRO6sUih6GTPZv6a1/R87v0= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/protobuf v1.3.5 h1:F768QJ1E9tib+q5Sc8MkdJi1RxLTbRcTf8LJV56aRls= -github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= +github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= +github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= +github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= +github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= +github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= +github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= +github.com/golang/protobuf v1.4.2 h1:+Z5KGCizgyZCbGh1KZqA0fcLLkwbsjIzS4aV2v7wJX0= +github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0 h1:crn/baboCvb5fXaQ0IJ1SGTsTVrWpDsCWC8EGETZijY= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1 h1:Xye71clBPdm5HgqGwUkwhbynsUJZhDbS20FvLhQ2izg= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.4.0 h1:xsAVV57WRhGj6kEIi8ReJzQlHHqcBYCElAvkovg3B/4= +github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.0 h1:/QaMHBdZ26BB3SSst0Iwl10Epc+xhTquomWX0oZEB6w= +github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM= +github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/gopacket v1.1.17 h1:rMrlX2ZY2UbvT+sdz3+6J+pp2z+msCq9MxTU6ymxbBY= +github.com/google/gopacket v1.1.17/go.mod h1:UdDNZ1OO62aGYVnPhxT1U6aI7ukYtA/kB8vaU0diBUM= +github.com/google/gopacket v1.1.18/go.mod h1:UdDNZ1OO62aGYVnPhxT1U6aI7ukYtA/kB8vaU0diBUM= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v0.0.0-20161128191214-064e2069ce9c/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.1 h1:Gkbcsh/GbpXz7lPftLA3P6TYMwjCLYm83jiFQZF/3gY= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.2 h1:EVhdT+1Kseyi1/pUmXKaFxYsDNy9RQYkMWRH68J/W7Y= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 h1:EGx4pi6eqNxGaHF6qqu48+N2wcFQ5qg5FXgOdqsJ5d8= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00 h1:l5lAOZEym3oK3SQ2HBHWsJUfbNBiTXJDeW2QDxw9AQ0= +github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/grpc-ecosystem/grpc-gateway v1.14.6/go.mod h1:zdiPV4Yse/1gnckTHtghG4GkDEdKCRJduHpTxT3/jcw= github.com/gxed/hashland/keccakpg v0.0.1/go.mod h1:kRzw3HkwxFU1mpmPP8v1WyQzwdGfmKFJ6tItnhQ67kU= github.com/gxed/hashland/murmur3 v0.0.1/go.mod h1:KjXop02n4/ckmZSnY2+HKcLud/tcmvhST0bie/0lS48= +github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1 h1:0hERBMJE1eitiLkihrMvRVBYAkpHzc/J3QdDN+dAcgU= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= +github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= +github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/huandu/xstrings v1.0.0/go.mod h1:4qWG/gcEcfX4z/mBDHJ++3ReCw9ibxbsNJbcucJdbSo= +github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/huin/goupnp v1.0.0 h1:wg75sLpL6DZqwHQN6E1Cfk6mtfzS45z8OV+ic+DtHRo= github.com/huin/goupnp v1.0.0/go.mod h1:n9v9KO1tAxYH82qOn+UTIFQDmx5n1Zxd/ClZDMX7Bnc= github.com/huin/goutil v0.0.0-20170803182201-1ca381bf3150/go.mod h1:PpLOETDnJ0o3iZrZfqZzyLl6l7F3c6L1oWn7OICBi6o= +github.com/iancoleman/strcase v0.0.0-20180726023541-3605ed457bf7/go.mod h1:SK73tn/9oHe+/Y0h39VT4UCxmurVJkR5NA7kMEAOgSE= +github.com/imdario/mergo v0.3.4/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.11 h1:3tnifQM4i+fbajXKBHXWEH+KvNHqojZ778UH75j3bGA= +github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/ipfs/bbloom v0.0.1/go.mod h1:oqo8CVWsJFMOZqTglBG4wydCE4IQA/G2/SEofB0rjUI= github.com/ipfs/bbloom v0.0.4 h1:Gi+8EGJ2y5qiD5FbsbpX/TMNcJw8gSqr7eyjHa4Fhvs= github.com/ipfs/bbloom v0.0.4/go.mod h1:cS9YprKXpoZ9lT0n/Mw/a6/aFV6DTjTLYHeA+gyqMG0= github.com/ipfs/go-bitswap v0.1.0 h1:28YsHYw9ut6wootnImPXH0WpnU5Dbo3qm6cvQ6e6wYY= github.com/ipfs/go-bitswap v0.1.0/go.mod h1:FFJEf18E9izuCqUtHxbWEvq+reg7o4CW5wSAE1wsxj0= +github.com/ipfs/go-bitswap v0.1.8/go.mod h1:TOWoxllhccevbWFUR2N7B1MTSVVge1s6XSMiCSA4MzM= +github.com/ipfs/go-bitswap v0.2.20 h1:Zfi5jDUoqxDThORUznqdeL77DdGniAzlccNJ4vr+Itc= +github.com/ipfs/go-bitswap v0.2.20/go.mod h1:C7TwBgHnu89Q8sHsTJP7IhUqF9XYLe71P4tT5adgmYo= github.com/ipfs/go-block-format v0.0.1/go.mod h1:DK/YYcsSUIVAFNwo/KZCdIIbpN0ROH/baNLgayt4pFc= github.com/ipfs/go-block-format v0.0.2 h1:qPDvcP19izTjU8rgo6p7gTXZlkMkF5bz5G3fqIsSCPE= github.com/ipfs/go-block-format v0.0.2/go.mod h1:AWR46JfpcObNfg3ok2JHDUfdiHRgWhJgCQF+KIgOPJY= github.com/ipfs/go-blockservice v0.1.0 h1:dh2i7xjMbCtf0ZSMyQAF2qpV/pEEmM7yVpQ00+gik6U= github.com/ipfs/go-blockservice v0.1.0/go.mod h1:hzmMScl1kXHg3M2BjTymbVPjv627N7sYcvYaKbop39M= +github.com/ipfs/go-blockservice v0.1.3 h1:9XgsPMwwWJSC9uVr2pMDsW2qFTBSkxpGMhmna8mIjPM= +github.com/ipfs/go-blockservice v0.1.3/go.mod h1:OTZhFpkgY48kNzbgyvcexW9cHrpjBYIjSR0KoDOFOLU= github.com/ipfs/go-cid v0.0.1/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= github.com/ipfs/go-cid v0.0.2/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= github.com/ipfs/go-cid v0.0.3/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= +github.com/ipfs/go-cid v0.0.4/go.mod h1:4LLaPOQwmk5z9LBgQnpkivrx8BJjUyGwTXCd5Xfj6+M= github.com/ipfs/go-cid v0.0.5 h1:o0Ix8e/ql7Zb5UVUJEUfjsWCIY8t48++9lR8qi6oiJU= github.com/ipfs/go-cid v0.0.5/go.mod h1:plgt+Y5MnOey4vO4UlUazGqdbEXuFYitED67FexhXog= +github.com/ipfs/go-cid v0.0.6 h1:go0y+GcDOGeJIV01FeBsta4FHngoA4Wz7KMeLkXAhMs= +github.com/ipfs/go-cid v0.0.6/go.mod h1:6Ux9z5e+HpkQdckYoX1PG/6xqKspzlEIR5SDmgqgC/I= +github.com/ipfs/go-cid v0.0.7/go.mod h1:6Ux9z5e+HpkQdckYoX1PG/6xqKspzlEIR5SDmgqgC/I= github.com/ipfs/go-datastore v0.0.1/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= github.com/ipfs/go-datastore v0.0.5/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= github.com/ipfs/go-datastore v0.1.0/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= +github.com/ipfs/go-datastore v0.1.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= github.com/ipfs/go-datastore v0.3.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= +github.com/ipfs/go-datastore v0.4.0/go.mod h1:SX/xMIKoCszPqp+z9JhPYCmoOoXTvaa13XEbGtsFUhA= +github.com/ipfs/go-datastore v0.4.1/go.mod h1:SX/xMIKoCszPqp+z9JhPYCmoOoXTvaa13XEbGtsFUhA= +github.com/ipfs/go-datastore v0.4.2/go.mod h1:SX/xMIKoCszPqp+z9JhPYCmoOoXTvaa13XEbGtsFUhA= github.com/ipfs/go-datastore v0.4.4 h1:rjvQ9+muFaJ+QZ7dN5B1MSDNQ0JVZKkkES/rMZmA8X8= github.com/ipfs/go-datastore v0.4.4/go.mod h1:SX/xMIKoCszPqp+z9JhPYCmoOoXTvaa13XEbGtsFUhA= +github.com/ipfs/go-datastore v0.4.5 h1:cwOUcGMLdLPWgu3SlrCckCMznaGADbPqE0r8h768/Dg= +github.com/ipfs/go-datastore v0.4.5/go.mod h1:eXTcaaiN6uOlVCLS9GjJUJtlvJfM3xk23w3fyfrmmJs= github.com/ipfs/go-detect-race v0.0.1 h1:qX/xay2W3E4Q1U7d9lNs1sU9nvguX0a7319XbyQ6cOk= github.com/ipfs/go-detect-race v0.0.1/go.mod h1:8BNT7shDZPo99Q74BpGMK+4D8Mn4j46UU0LZ723meps= github.com/ipfs/go-ds-badger v0.0.2/go.mod h1:Y3QpeSFWQf6MopLTiZD+VT6IC1yZqaGmjvRcKeSGij8= +github.com/ipfs/go-ds-badger v0.0.5/go.mod h1:g5AuuCGmr7efyzQhLL8MzwqcauPojGPUaHzfGTzuE3s= +github.com/ipfs/go-ds-badger v0.2.1/go.mod h1:Tx7l3aTph3FMFrRS838dcSJh+jjA7cX9DrGVwx/NOwE= +github.com/ipfs/go-ds-badger v0.2.3/go.mod h1:pEYw0rgg3FIrywKKnL+Snr+w/LjJZVMTBRn4FS6UHUk= github.com/ipfs/go-ds-leveldb v0.0.1/go.mod h1:feO8V3kubwsEF22n0YRQCffeb79OOYIykR4L04tMOYc= +github.com/ipfs/go-ds-leveldb v0.4.1/go.mod h1:jpbku/YqBSsBc1qgME8BkWS4AxzF2cEu1Ii2r79Hh9s= +github.com/ipfs/go-ds-leveldb v0.4.2/go.mod h1:jpbku/YqBSsBc1qgME8BkWS4AxzF2cEu1Ii2r79Hh9s= github.com/ipfs/go-ipfs-blockstore v0.0.1/go.mod h1:d3WClOmRQKFnJ0Jz/jj/zmksX0ma1gROTlovZKBmN08= github.com/ipfs/go-ipfs-blockstore v0.1.0 h1:V1GZorHFUIB6YgTJQdq7mcaIpUfCM3fCyVi+MTo9O88= github.com/ipfs/go-ipfs-blockstore v0.1.0/go.mod h1:5aD0AvHPi7mZc6Ci1WCAhiBQu2IsfTduLl+422H6Rqw= +github.com/ipfs/go-ipfs-blockstore v0.1.4/go.mod h1:Jxm3XMVjh6R17WvxFEiyKBLUGr86HgIYJW/D/MwqeYQ= +github.com/ipfs/go-ipfs-blockstore v1.0.1/go.mod h1:MGNZlHNEnR4KGgPHM3/k8lBySIOK2Ve+0KjZubKlaOE= github.com/ipfs/go-ipfs-blocksutil v0.0.1 h1:Eh/H4pc1hsvhzsQoMEP3Bke/aW5P5rVM1IWFJMcGIPQ= github.com/ipfs/go-ipfs-blocksutil v0.0.1/go.mod h1:Yq4M86uIOmxmGPUHv/uI7uKqZNtLb449gwKqXjIsnRk= github.com/ipfs/go-ipfs-delay v0.0.0-20181109222059-70721b86a9a8/go.mod h1:8SP1YXK1M1kXuc4KJZINY3TQQ03J2rwBG9QfXmbRPrw= @@ -111,41 +217,67 @@ github.com/ipfs/go-ipfs-delay v0.0.1 h1:r/UXYyRcddO6thwOnhiznIAiSvxMECGgtv35Xs1I github.com/ipfs/go-ipfs-delay v0.0.1/go.mod h1:8SP1YXK1M1kXuc4KJZINY3TQQ03J2rwBG9QfXmbRPrw= github.com/ipfs/go-ipfs-ds-help v0.0.1 h1:QBg+Ts2zgeemK/dB0saiF/ykzRGgfoFMT90Rzo0OnVU= github.com/ipfs/go-ipfs-ds-help v0.0.1/go.mod h1:gtP9xRaZXqIQRh1HRpp595KbBEdgqWFxefeVKOV8sxo= +github.com/ipfs/go-ipfs-ds-help v0.1.1/go.mod h1:SbBafGJuGsPI/QL3j9Fc5YPLeAu+SzOkI0gFwAg+mOs= +github.com/ipfs/go-ipfs-ds-help v1.0.0 h1:bEQ8hMGs80h0sR8O4tfDgV6B01aaF9qeTrujrTLYV3g= +github.com/ipfs/go-ipfs-ds-help v1.0.0/go.mod h1:ujAbkeIgkKAWtxxNkoZHWLCyk5JpPoKnGyCcsoF6ueE= github.com/ipfs/go-ipfs-exchange-interface v0.0.1 h1:LJXIo9W7CAmugqI+uofioIpRb6rY30GUu7G6LUfpMvM= github.com/ipfs/go-ipfs-exchange-interface v0.0.1/go.mod h1:c8MwfHjtQjPoDyiy9cFquVtVHkO9b9Ob3FG91qJnWCM= github.com/ipfs/go-ipfs-exchange-offline v0.0.1 h1:P56jYKZF7lDDOLx5SotVh5KFxoY6C81I1NSHW1FxGew= github.com/ipfs/go-ipfs-exchange-offline v0.0.1/go.mod h1:WhHSFCVYX36H/anEKQboAzpUws3x7UeEGkzQc3iNkM0= github.com/ipfs/go-ipfs-pq v0.0.1 h1:zgUotX8dcAB/w/HidJh1zzc1yFq6Vm8J7T2F4itj/RU= github.com/ipfs/go-ipfs-pq v0.0.1/go.mod h1:LWIqQpqfRG3fNc5XsnIhz/wQ2XXGyugQwls7BgUmUfY= +github.com/ipfs/go-ipfs-pq v0.0.2 h1:e1vOOW6MuOwG2lqxcLA+wEn93i/9laCY8sXAw76jFOY= +github.com/ipfs/go-ipfs-pq v0.0.2/go.mod h1:LWIqQpqfRG3fNc5XsnIhz/wQ2XXGyugQwls7BgUmUfY= github.com/ipfs/go-ipfs-routing v0.1.0 h1:gAJTT1cEeeLj6/DlLX6t+NxD9fQe2ymTO6qWRDI/HQQ= github.com/ipfs/go-ipfs-routing v0.1.0/go.mod h1:hYoUkJLyAUKhF58tysKpids8RNDPO42BVMgK5dNsoqY= github.com/ipfs/go-ipfs-util v0.0.1 h1:Wz9bL2wB2YBJqggkA4dD7oSmqB4cAnpNbGrlHJulv50= github.com/ipfs/go-ipfs-util v0.0.1/go.mod h1:spsl5z8KUnrve+73pOhSVZND1SIxPW5RyBCNzQxlJBc= +github.com/ipfs/go-ipfs-util v0.0.2 h1:59Sswnk1MFaiq+VcaknX7aYEyGyGDAA73ilhEK2POp8= +github.com/ipfs/go-ipfs-util v0.0.2/go.mod h1:CbPtkWJzjLdEcezDns2XYaehFVNXG9zrdrtMecczcsQ= github.com/ipfs/go-ipld-cbor v0.0.3 h1:ENsxvybwkmke7Z/QJOmeJfoguj6GH3Y0YOaGrfy9Q0I= github.com/ipfs/go-ipld-cbor v0.0.3/go.mod h1:wTBtrQZA3SoFKMVkp6cn6HMRteIB1VsmHA0AQFOn7Nc= +github.com/ipfs/go-ipld-cbor v0.0.4 h1:Aw3KPOKXjvrm6VjwJvFf1F1ekR/BH3jdof3Bk7OTiSA= +github.com/ipfs/go-ipld-cbor v0.0.4/go.mod h1:BkCduEx3XBCO6t2Sfo5BaHzuok7hbhdMm9Oh8B2Ftq4= github.com/ipfs/go-ipld-format v0.0.1/go.mod h1:kyJtbkDALmFHv3QR6et67i35QzO3S0dCDnkOJhcZkms= github.com/ipfs/go-ipld-format v0.0.2/go.mod h1:4B6+FM2u9OJ9zCV+kSbgFAZlOrv1Hqbf0INGQgiKf9k= github.com/ipfs/go-ipld-format v0.2.0 h1:xGlJKkArkmBvowr+GMCX0FEZtkro71K1AwiKnL37mwA= github.com/ipfs/go-ipld-format v0.2.0/go.mod h1:3l3C1uKoadTPbeNfrDi+xMInYKlx2Cvg1BuydPSdzQs= github.com/ipfs/go-log v0.0.1 h1:9XTUN/rW64BCG1YhPK9Hoy3q8nr4gOmHHBpgFdfw6Lc= github.com/ipfs/go-log v0.0.1/go.mod h1:kL1d2/hzSpI0thNYjiKfjanbVNU+IIGA/WnNESY9leM= -github.com/ipfs/go-merkledag v0.3.1 h1:3UqWINBEr3/N+r6OwgFXAddDP/8zpQX/8J7IGVOCqRQ= -github.com/ipfs/go-merkledag v0.3.1/go.mod h1:fvkZNNZixVW6cKSZ/JfLlON5OlgTXNdRLz0p6QG/I2M= +github.com/ipfs/go-log v1.0.2/go.mod h1:1MNjMxe0u6xvJZgeqbJ8vdo2TKaGwZ1a0Bpza+sr2Sk= +github.com/ipfs/go-log v1.0.3/go.mod h1:OsLySYkwIbiSUR/yBTdv1qPtcE4FW3WPWk/ewz9Ru+A= +github.com/ipfs/go-log v1.0.4 h1:6nLQdX4W8P9yZZFH7mO+X/PzjN8Laozm/lMJ6esdgzY= +github.com/ipfs/go-log v1.0.4/go.mod h1:oDCg2FkjogeFOhqqb+N39l2RpTNPL6F/StPkB3kPgcs= +github.com/ipfs/go-log/v2 v2.0.2/go.mod h1:O7P1lJt27vWHhOwQmcFEvlmo49ry2VY2+JfBWFaa9+0= +github.com/ipfs/go-log/v2 v2.0.3/go.mod h1:O7P1lJt27vWHhOwQmcFEvlmo49ry2VY2+JfBWFaa9+0= +github.com/ipfs/go-log/v2 v2.0.5 h1:fL4YI+1g5V/b1Yxr1qAiXTMg1H8z9vx/VmJxBuQMHvU= +github.com/ipfs/go-log/v2 v2.0.5/go.mod h1:eZs4Xt4ZUJQFM3DlanGhy7TkwwawCZcSByscwkWG+dw= +github.com/ipfs/go-log/v2 v2.1.1 h1:G4TtqN+V9y9HY9TA6BwbCVyyBZ2B9MbCjR2MtGx8FR0= +github.com/ipfs/go-log/v2 v2.1.1/go.mod h1:2v2nsGfZsvvAJz13SyFzf9ObaqwHiHxsPLEHntrv9KM= +github.com/ipfs/go-merkledag v0.3.2 h1:MRqj40QkrWkvPswXs4EfSslhZ4RVPRbxwX11js0t1xY= +github.com/ipfs/go-merkledag v0.3.2/go.mod h1:fvkZNNZixVW6cKSZ/JfLlON5OlgTXNdRLz0p6QG/I2M= github.com/ipfs/go-metrics-interface v0.0.1 h1:j+cpbjYvu4R8zbleSs36gvB7jR+wsL2fGD6n0jO4kdg= github.com/ipfs/go-metrics-interface v0.0.1/go.mod h1:6s6euYU4zowdslK0GKHmqaIZ3j/b/tL7HTWtJ4VPgWY= github.com/ipfs/go-peertaskqueue v0.1.0 h1:bpRbgv76eT4avutNPDFZuCPOQus6qTgurEYxfulgZW4= github.com/ipfs/go-peertaskqueue v0.1.0/go.mod h1:Jmk3IyCcfl1W3jTW3YpghSwSEC6IJ3Vzz/jUmWw8Z0U= +github.com/ipfs/go-peertaskqueue v0.1.1/go.mod h1:Jmk3IyCcfl1W3jTW3YpghSwSEC6IJ3Vzz/jUmWw8Z0U= +github.com/ipfs/go-peertaskqueue v0.2.0 h1:2cSr7exUGKYyDeUyQ7P/nHPs9P7Ht/B+ROrpN1EJOjc= +github.com/ipfs/go-peertaskqueue v0.2.0/go.mod h1:5/eNrBEbtSKWCG+kQK8K8fGNixoYUnr+P7jivavs9lY= github.com/ipfs/go-verifcid v0.0.1 h1:m2HI7zIuR5TFyQ1b79Da5N9dnnCP1vcu2QqawmWlK2E= github.com/ipfs/go-verifcid v0.0.1/go.mod h1:5Hrva5KBeIog4A+UpqlaIU+DEstipcJYQQZc0g37pY0= github.com/jackpal/gateway v1.0.5 h1:qzXWUJfuMdlLMtt0a3Dgt+xkWQiA5itDEITVJtuSwMc= github.com/jackpal/gateway v1.0.5/go.mod h1:lTpwd4ACLXmpyiCTRtfiNyVnUmqT9RivzCDQetPfnjA= github.com/jackpal/go-nat-pmp v1.0.1 h1:i0LektDkO1QlrTm/cSuP+PyBCDnYvjPLGl4LdWEMiaA= github.com/jackpal/go-nat-pmp v1.0.1/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= +github.com/jackpal/go-nat-pmp v1.0.2 h1:KzKSgb7qkJvOUTqYl9/Hg/me3pWgBmERKrTGD7BdWus= +github.com/jackpal/go-nat-pmp v1.0.2/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= github.com/jbenet/go-cienv v0.0.0-20150120210510-1bb1476777ec/go.mod h1:rGaEvXB4uRSZMmzKNLoXvTu1sfx+1kv/DojUlPrSZGs= github.com/jbenet/go-cienv v0.1.0 h1:Vc/s0QbQtoxX8MwwSLWWh+xNNZvM3Lw7NsTcHrvvhMc= github.com/jbenet/go-cienv v0.1.0/go.mod h1:TqNnHUmJgXau0nCzC7kXWeotg3J9W34CUv5Djy1+FlA= github.com/jbenet/go-temp-err-catcher v0.0.0-20150120210811-aac704a3f4f2 h1:vhC1OXXiT9R2pczegwz6moDvuRpggaroAXhPIseh57A= github.com/jbenet/go-temp-err-catcher v0.0.0-20150120210811-aac704a3f4f2/go.mod h1:8GXXJV31xl8whumTzdZsTt3RnUIiPqzkyf7mxToRCMs= +github.com/jbenet/go-temp-err-catcher v0.1.0 h1:zpb3ZH6wIE8Shj2sKS+khgRvf7T7RABoLk/+KKHggpk= +github.com/jbenet/go-temp-err-catcher v0.1.0/go.mod h1:0kJRvmDZXNMIiJirNPEYfhpPwbGVtZVWC34vc5WLsDk= github.com/jbenet/goprocess v0.0.0-20160826012719-b497e2f366b8/go.mod h1:Ly/wlsjFq/qrU3Rar62tu1gASgGw6chQbSh/XgIIXCY= github.com/jbenet/goprocess v0.1.3 h1:YKyIEECS/XvcfHtBzxtjBBbWK+MbvA6dG8ASiqwvr10= github.com/jbenet/goprocess v0.1.3/go.mod h1:5yspPrukOVuOLORacaBi858NqyClJPQxYZlqdZVfqY4= @@ -156,6 +288,8 @@ github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJS github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ= github.com/jtolds/gls v4.2.1+incompatible h1:fSuqC+Gmlu6l/ZYAoZzx2pyucC8Xza35fpRVWLVmUEE= github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo= +github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/kami-zh/go-capturer v0.0.0-20171211120116-e492ea43421d/go.mod h1:P2viExyCEfeWGU259JnaQ34Inuec4R38JCyBx2edgD0= github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= @@ -164,89 +298,230 @@ github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6 github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/koron/go-ssdp v0.0.0-20180514024734-4a0ed625a78b h1:wxtKgYHEncAU00muMD06dzLiahtGM1eouRNOzVV7tdQ= github.com/koron/go-ssdp v0.0.0-20180514024734-4a0ed625a78b/go.mod h1:5Ky9EC2xfoUKUor0Hjgi2BJhCSXJfMOFlmyYrVKGQMk= +github.com/koron/go-ssdp v0.0.0-20191105050749-2e1c40ed0b5d h1:68u9r4wEvL3gYg2jvAOgROwZ3H+Y3hIDk4tbbmIjcYQ= +github.com/koron/go-ssdp v0.0.0-20191105050749-2e1c40ed0b5d/go.mod h1:5Ky9EC2xfoUKUor0Hjgi2BJhCSXJfMOFlmyYrVKGQMk= +github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.0 h1:s5hAObm+yFO5uHYt5dYjxi2rXrsnmRpJx4OYvIWUaQs= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/libp2p/go-addr-util v0.0.1 h1:TpTQm9cXVRVSKsYbgQ7GKc3KbbHVTnbostgGaDEP+88= github.com/libp2p/go-addr-util v0.0.1/go.mod h1:4ac6O7n9rIAKB1dnd+s8IbbMXkt+oBpzX4/+RACcnlQ= +github.com/libp2p/go-addr-util v0.0.2 h1:7cWK5cdA5x72jX0g8iLrQWm5TRJZ6CzGdPEhWj7plWU= +github.com/libp2p/go-addr-util v0.0.2/go.mod h1:Ecd6Fb3yIuLzq4bD7VcywcVSBtefcAwnUISBM3WG15E= github.com/libp2p/go-buffer-pool v0.0.1/go.mod h1:xtyIz9PMobb13WaxR6Zo1Pd1zXJKYg0a8KiIvDp3TzQ= github.com/libp2p/go-buffer-pool v0.0.2 h1:QNK2iAFa8gjAe1SPz6mHSMuCcjs+X1wlHzeOSqcmlfs= github.com/libp2p/go-buffer-pool v0.0.2/go.mod h1:MvaB6xw5vOrDl8rYZGLFdKAuk/hRoRZd1Vi32+RXyFM= github.com/libp2p/go-conn-security-multistream v0.1.0 h1:aqGmto+ttL/uJgX0JtQI0tD21CIEy5eYd1Hlp0juHY0= github.com/libp2p/go-conn-security-multistream v0.1.0/go.mod h1:aw6eD7LOsHEX7+2hJkDxw1MteijaVcI+/eP2/x3J1xc= +github.com/libp2p/go-conn-security-multistream v0.2.0 h1:uNiDjS58vrvJTg9jO6bySd1rMKejieG7v45ekqHbZ1M= +github.com/libp2p/go-conn-security-multistream v0.2.0/go.mod h1:hZN4MjlNetKD3Rq5Jb/P5ohUnFLNzEAR4DLSzpn2QLU= +github.com/libp2p/go-eventbus v0.1.0 h1:mlawomSAjjkk97QnYiEmHsLu7E136+2oCWSHRUvMfzQ= +github.com/libp2p/go-eventbus v0.1.0/go.mod h1:vROgu5cs5T7cv7POWlWxBaVLxfSegC5UGQf8A2eEmx4= +github.com/libp2p/go-eventbus v0.2.1 h1:VanAdErQnpTioN2TowqNcOijf6YwhuODe4pPKSDpxGc= +github.com/libp2p/go-eventbus v0.2.1/go.mod h1:jc2S4SoEVPP48H9Wpzm5aiGwUCBMfGhVhhBjyhhCJs8= github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZxBdp967ls1g+k8= github.com/libp2p/go-flow-metrics v0.0.3 h1:8tAs/hSdNvUiLgtlSy3mxwxWP4I9y/jlkPFT7epKdeM= github.com/libp2p/go-flow-metrics v0.0.3/go.mod h1:HeoSNUrOJVK1jEpDqVEiUOIXqhbnS27omG0uWU5slZs= github.com/libp2p/go-libp2p v0.1.0 h1:8VXadcPNni74ODoZ+7326LMAppFYmz1fRQOUuT5iZvQ= github.com/libp2p/go-libp2p v0.1.0/go.mod h1:6D/2OBauqLUoqcADOJpn9WbKqvaM07tDw68qHM0BxUM= +github.com/libp2p/go-libp2p v0.1.1/go.mod h1:I00BRo1UuUSdpuc8Q2mN7yDF/oTUTRAX6JWpTiK9Rp8= +github.com/libp2p/go-libp2p v0.6.1/go.mod h1:CTFnWXogryAHjXAKEbOf1OWY+VeAP3lDMZkfEI5sT54= +github.com/libp2p/go-libp2p v0.7.0/go.mod h1:hZJf8txWeCduQRDC/WSqBGMxaTHCOYHt2xSU1ivxn0k= +github.com/libp2p/go-libp2p v0.7.4/go.mod h1:oXsBlTLF1q7pxr+9w6lqzS1ILpyHsaBPniVO7zIHGMw= +github.com/libp2p/go-libp2p v0.8.1/go.mod h1:QRNH9pwdbEBpx5DTJYg+qxcVaDMAz3Ee/qDKwXujH5o= +github.com/libp2p/go-libp2p v0.8.3/go.mod h1:EsH1A+8yoWK+L4iKcbPYu6MPluZ+CHWI9El8cTaefiM= +github.com/libp2p/go-libp2p v0.11.0 h1:jb5mqdqYEBAybTEhD8io43Cz5LzVKuWxOK7znSN69jE= +github.com/libp2p/go-libp2p v0.11.0/go.mod h1:3/ogJDXsbbepEfqtZKBR/DedzxJXCeK17t2Z9RE9bEE= github.com/libp2p/go-libp2p-autonat v0.1.0/go.mod h1:1tLf2yXxiE/oKGtDwPYWTSYG3PtvYlJmg7NeVtPRqH8= +github.com/libp2p/go-libp2p-autonat v0.1.1/go.mod h1:OXqkeGOY2xJVWKAGV2inNF5aKN/djNA3fdpCWloIudE= +github.com/libp2p/go-libp2p-autonat v0.2.0/go.mod h1:DX+9teU4pEEoZUqR1PiMlqliONQdNbfzE1C718tcViI= +github.com/libp2p/go-libp2p-autonat v0.2.1/go.mod h1:MWtAhV5Ko1l6QBsHQNSuM6b1sRkXrpk0/LqCr+vCVxI= +github.com/libp2p/go-libp2p-autonat v0.2.2/go.mod h1:HsM62HkqZmHR2k1xgX34WuWDzk/nBwNHoeyyT4IWV6A= +github.com/libp2p/go-libp2p-autonat v0.3.2 h1:OhDSwVVaq7liTaRIsFFYvsaPp0pn2yi0WazejZ4DUmo= +github.com/libp2p/go-libp2p-autonat v0.3.2/go.mod h1:0OzOi1/cVc7UcxfOddemYD5vzEqi4fwRbnZcJGLi68U= github.com/libp2p/go-libp2p-blankhost v0.1.1 h1:X919sCh+KLqJcNRApj43xCSiQRYqOSI88Fdf55ngf78= github.com/libp2p/go-libp2p-blankhost v0.1.1/go.mod h1:pf2fvdLJPsC1FsVrNP3DUUvMzUts2dsLLBEpo1vW1ro= +github.com/libp2p/go-libp2p-blankhost v0.1.4 h1:I96SWjR4rK9irDHcHq3XHN6hawCRTPUADzkJacgZLvk= +github.com/libp2p/go-libp2p-blankhost v0.1.4/go.mod h1:oJF0saYsAXQCSfDq254GMNmLNz6ZTHTOvtF4ZydUvwU= +github.com/libp2p/go-libp2p-blankhost v0.2.0/go.mod h1:eduNKXGTioTuQAUcZ5epXi9vMl+t4d8ugUBRQ4SqaNQ= github.com/libp2p/go-libp2p-circuit v0.1.0/go.mod h1:Ahq4cY3V9VJcHcn1SBXjr78AbFkZeIRmfunbA7pmFh8= +github.com/libp2p/go-libp2p-circuit v0.1.4/go.mod h1:CY67BrEjKNDhdTk8UgBX1Y/H5c3xkAcs3gnksxY7osU= +github.com/libp2p/go-libp2p-circuit v0.2.1/go.mod h1:BXPwYDN5A8z4OEY9sOfr2DUQMLQvKt/6oku45YUmjIo= +github.com/libp2p/go-libp2p-circuit v0.2.2/go.mod h1:nkG3iE01tR3FoQ2nMm06IUrCpCyJp1Eo4A1xYdpjfs4= +github.com/libp2p/go-libp2p-circuit v0.3.1/go.mod h1:8RMIlivu1+RxhebipJwFDA45DasLx+kkrp4IlJj53F4= github.com/libp2p/go-libp2p-core v0.0.1/go.mod h1:g/VxnTZ/1ygHxH3dKok7Vno1VfpvGcGip57wjTU4fco= github.com/libp2p/go-libp2p-core v0.0.2/go.mod h1:9dAcntw/n46XycV4RnlBq3BpgrmyUi9LuoTNdPrbUco= -github.com/libp2p/go-libp2p-core v0.5.0 h1:FBQ1fpq2Fo/ClyjojVJ5AKXlKhvNc/B6U0O+7AN1ffE= +github.com/libp2p/go-libp2p-core v0.0.3/go.mod h1:j+YQMNz9WNSkNezXOsahp9kwZBKBvxLpKD316QWSJXE= +github.com/libp2p/go-libp2p-core v0.0.4/go.mod h1:jyuCQP356gzfCFtRKyvAbNkyeuxb7OlyhWZ3nls5d2I= +github.com/libp2p/go-libp2p-core v0.2.0/go.mod h1:X0eyB0Gy93v0DZtSYbEM7RnMChm9Uv3j7yRXjO77xSI= +github.com/libp2p/go-libp2p-core v0.2.2/go.mod h1:8fcwTbsG2B+lTgRJ1ICZtiM5GWCWZVoVrLaDRvIRng0= +github.com/libp2p/go-libp2p-core v0.2.4/go.mod h1:STh4fdfa5vDYr0/SzYYeqnt+E6KfEV5VxfIrm0bcI0g= +github.com/libp2p/go-libp2p-core v0.3.0/go.mod h1:ACp3DmS3/N64c2jDzcV429ukDpicbL6+TrrxANBjPGw= +github.com/libp2p/go-libp2p-core v0.3.1/go.mod h1:thvWy0hvaSBhnVBaW37BvzgVV68OUhgJJLAa6almrII= +github.com/libp2p/go-libp2p-core v0.4.0/go.mod h1:49XGI+kc38oGVwqSBhDEwytaAxgZasHhFfQKibzTls0= github.com/libp2p/go-libp2p-core v0.5.0/go.mod h1:49XGI+kc38oGVwqSBhDEwytaAxgZasHhFfQKibzTls0= -github.com/libp2p/go-libp2p-core v0.5.1 h1:6Cu7WljPQtGY2krBlMoD8L/zH3tMUsCbqNFH7cZwCoI= github.com/libp2p/go-libp2p-core v0.5.1/go.mod h1:uN7L2D4EvPCvzSH5SrhR72UWbnSGpt5/a35Sm4upn4Y= +github.com/libp2p/go-libp2p-core v0.5.2/go.mod h1:uN7L2D4EvPCvzSH5SrhR72UWbnSGpt5/a35Sm4upn4Y= +github.com/libp2p/go-libp2p-core v0.5.3/go.mod h1:uN7L2D4EvPCvzSH5SrhR72UWbnSGpt5/a35Sm4upn4Y= +github.com/libp2p/go-libp2p-core v0.5.4/go.mod h1:uN7L2D4EvPCvzSH5SrhR72UWbnSGpt5/a35Sm4upn4Y= +github.com/libp2p/go-libp2p-core v0.5.5/go.mod h1:vj3awlOr9+GMZJFH9s4mpt9RHHgGqeHCopzbYKZdRjM= +github.com/libp2p/go-libp2p-core v0.5.6/go.mod h1:txwbVEhHEXikXn9gfC7/UDDw7rkxuX0bJvM49Ykaswo= +github.com/libp2p/go-libp2p-core v0.5.7/go.mod h1:txwbVEhHEXikXn9gfC7/UDDw7rkxuX0bJvM49Ykaswo= +github.com/libp2p/go-libp2p-core v0.6.0 h1:u03qofNYTBN+yVg08PuAKylZogVf0xcTEeM8skGf+ak= +github.com/libp2p/go-libp2p-core v0.6.0/go.mod h1:txwbVEhHEXikXn9gfC7/UDDw7rkxuX0bJvM49Ykaswo= +github.com/libp2p/go-libp2p-core v0.6.1/go.mod h1:FfewUH/YpvWbEB+ZY9AQRQ4TAD8sJBt/G1rVvhz5XT8= github.com/libp2p/go-libp2p-crypto v0.1.0 h1:k9MFy+o2zGDNGsaoZl0MA3iZ75qXxr9OOoAZF+sD5OQ= github.com/libp2p/go-libp2p-crypto v0.1.0/go.mod h1:sPUokVISZiy+nNuTTH/TY+leRSxnFj/2GLjtOTW90hI= github.com/libp2p/go-libp2p-discovery v0.1.0/go.mod h1:4F/x+aldVHjHDHuX85x1zWoFTGElt8HnoDzwkFZm29g= +github.com/libp2p/go-libp2p-discovery v0.2.0/go.mod h1:s4VGaxYMbw4+4+tsoQTqh7wfxg97AEdo4GYBt6BadWg= +github.com/libp2p/go-libp2p-discovery v0.3.0/go.mod h1:o03drFnz9BVAZdzC/QUQ+NeQOu38Fu7LJGEOK2gQltw= +github.com/libp2p/go-libp2p-discovery v0.4.0 h1:dK78UhopBk48mlHtRCzbdLm3q/81g77FahEBTjcqQT8= +github.com/libp2p/go-libp2p-discovery v0.4.0/go.mod h1:bZ0aJSrFc/eX2llP0ryhb1kpgkPyTo23SJ5b7UQCMh4= +github.com/libp2p/go-libp2p-discovery v0.5.0/go.mod h1:+srtPIU9gDaBNu//UHvcdliKBIcr4SfDcm0/PfPJLug= github.com/libp2p/go-libp2p-loggables v0.1.0 h1:h3w8QFfCt2UJl/0/NW4K829HX/0S4KD31PQ7m8UXXO8= github.com/libp2p/go-libp2p-loggables v0.1.0/go.mod h1:EyumB2Y6PrYjr55Q3/tiJ/o3xoDasoRYM7nOzEpoa90= github.com/libp2p/go-libp2p-mplex v0.2.0/go.mod h1:Ejl9IyjvXJ0T9iqUTE1jpYATQ9NM3g+OtR+EMMODbKo= github.com/libp2p/go-libp2p-mplex v0.2.1 h1:E1xaJBQnbSiTHGI1gaBKmKhu1TUKkErKJnE8iGvirYI= github.com/libp2p/go-libp2p-mplex v0.2.1/go.mod h1:SC99Rxs8Vuzrf/6WhmH41kNn13TiYdAWNYHrwImKLnE= +github.com/libp2p/go-libp2p-mplex v0.2.2/go.mod h1:74S9eum0tVQdAfFiKxAyKzNdSuLqw5oadDq7+L/FELo= +github.com/libp2p/go-libp2p-mplex v0.2.3 h1:2zijwaJvpdesST2MXpI5w9wWFRgYtMcpRX7rrw0jmOo= +github.com/libp2p/go-libp2p-mplex v0.2.3/go.mod h1:CK3p2+9qH9x+7ER/gWWDYJ3QW5ZxWDkm+dVvjfuG3ek= +github.com/libp2p/go-libp2p-mplex v0.2.4/go.mod h1:mI7iOezdWFOisvUwaYd3IDrJ4oVmgoXK8H331ui39CE= github.com/libp2p/go-libp2p-nat v0.0.4 h1:+KXK324yaY701On8a0aGjTnw8467kW3ExKcqW2wwmyw= github.com/libp2p/go-libp2p-nat v0.0.4/go.mod h1:N9Js/zVtAXqaeT99cXgTV9e75KpnWCvVOiGzlcHmBbY= +github.com/libp2p/go-libp2p-nat v0.0.5/go.mod h1:1qubaE5bTZMJE+E/uu2URroMbzdubFz1ChgiN79yKPE= +github.com/libp2p/go-libp2p-nat v0.0.6 h1:wMWis3kYynCbHoyKLPBEMu4YRLltbm8Mk08HGSfvTkU= +github.com/libp2p/go-libp2p-nat v0.0.6/go.mod h1:iV59LVhB3IkFvS6S6sauVTSOrNEANnINbI/fkaLimiw= github.com/libp2p/go-libp2p-netutil v0.1.0 h1:zscYDNVEcGxyUpMd0JReUZTrpMfia8PmLKcKF72EAMQ= github.com/libp2p/go-libp2p-netutil v0.1.0/go.mod h1:3Qv/aDqtMLTUyQeundkKsA+YCThNdbQD54k3TqjpbFU= +github.com/libp2p/go-libp2p-noise v0.1.1/go.mod h1:QDFLdKX7nluB7DEnlVPbz7xlLHdwHFA9HiohJRr3vwM= github.com/libp2p/go-libp2p-peer v0.2.0 h1:EQ8kMjaCUwt/Y5uLgjT8iY2qg0mGUT0N1zUjer50DsY= github.com/libp2p/go-libp2p-peer v0.2.0/go.mod h1:RCffaCvUyW2CJmG2gAWVqwePwW7JMgxjsHm7+J5kjWY= github.com/libp2p/go-libp2p-peerstore v0.1.0 h1:MKh7pRNPHSh1fLPj8u/M/s/napdmeNpoi9BRy9lPN0E= github.com/libp2p/go-libp2p-peerstore v0.1.0/go.mod h1:2CeHkQsr8svp4fZ+Oi9ykN1HBb6u0MOvdJ7YIsmcwtY= +github.com/libp2p/go-libp2p-peerstore v0.1.3/go.mod h1:BJ9sHlm59/80oSkpWgr1MyY1ciXAXV397W6h1GH/uKI= +github.com/libp2p/go-libp2p-peerstore v0.2.0/go.mod h1:N2l3eVIeAitSg3Pi2ipSrJYnqhVnMNQZo9nkSCuAbnQ= +github.com/libp2p/go-libp2p-peerstore v0.2.1/go.mod h1:NQxhNjWxf1d4w6PihR8btWIRjwRLBr4TYKfNgrUkOPA= +github.com/libp2p/go-libp2p-peerstore v0.2.2/go.mod h1:NQxhNjWxf1d4w6PihR8btWIRjwRLBr4TYKfNgrUkOPA= +github.com/libp2p/go-libp2p-peerstore v0.2.3/go.mod h1:K8ljLdFn590GMttg/luh4caB/3g0vKuY01psze0upRw= +github.com/libp2p/go-libp2p-peerstore v0.2.6 h1:2ACefBX23iMdJU9Ke+dcXt3w86MIryes9v7In4+Qq3U= +github.com/libp2p/go-libp2p-peerstore v0.2.6/go.mod h1:ss/TWTgHZTMpsU/oKVVPQCGuDHItOpf2W8RxAi50P2s= +github.com/libp2p/go-libp2p-pnet v0.2.0 h1:J6htxttBipJujEjz1y0a5+eYoiPcFHhSYHH6na5f0/k= +github.com/libp2p/go-libp2p-pnet v0.2.0/go.mod h1:Qqvq6JH/oMZGwqs3N1Fqhv8NVhrdYcO0BW4wssv21LA= github.com/libp2p/go-libp2p-record v0.1.0 h1:wHwBGbFzymoIl69BpgwIu0O6ta3TXGcMPvHUAcodzRc= github.com/libp2p/go-libp2p-record v0.1.0/go.mod h1:ujNc8iuE5dlKWVy6wuL6dd58t0n7xI4hAIl8pE6wu5Q= +github.com/libp2p/go-libp2p-record v0.1.3 h1:R27hoScIhQf/A8XJZ8lYpnqh9LatJ5YbHs28kCIfql0= +github.com/libp2p/go-libp2p-record v0.1.3/go.mod h1:yNUff/adKIfPnYQXgp6FQmNu3gLJ6EMg7+/vv2+9pY4= github.com/libp2p/go-libp2p-secio v0.1.0 h1:NNP5KLxuP97sE5Bu3iuwOWyT/dKEGMN5zSLMWdB7GTQ= github.com/libp2p/go-libp2p-secio v0.1.0/go.mod h1:tMJo2w7h3+wN4pgU2LSYeiKPrfqBgkOsdiKK77hE7c8= +github.com/libp2p/go-libp2p-secio v0.2.0/go.mod h1:2JdZepB8J5V9mBp79BmwsaPQhRPNN2NrnB2lKQcdy6g= +github.com/libp2p/go-libp2p-secio v0.2.1/go.mod h1:cWtZpILJqkqrSkiYcDBh5lA3wbT2Q+hz3rJQq3iftD8= +github.com/libp2p/go-libp2p-secio v0.2.2 h1:rLLPvShPQAcY6eNurKNZq3eZjPWfU9kXF2eI9jIYdrg= +github.com/libp2p/go-libp2p-secio v0.2.2/go.mod h1:wP3bS+m5AUnFA+OFO7Er03uO1mncHG0uVwGrwvjYlNY= github.com/libp2p/go-libp2p-swarm v0.1.0 h1:HrFk2p0awrGEgch9JXK/qp/hfjqQfgNxpLWnCiWPg5s= github.com/libp2p/go-libp2p-swarm v0.1.0/go.mod h1:wQVsCdjsuZoc730CgOvh5ox6K8evllckjebkdiY5ta4= +github.com/libp2p/go-libp2p-swarm v0.2.2/go.mod h1:fvmtQ0T1nErXym1/aa1uJEyN7JzaTNyBcHImCxRpPKU= +github.com/libp2p/go-libp2p-swarm v0.2.3/go.mod h1:P2VO/EpxRyDxtChXz/VPVXyTnszHvokHKRhfkEgFKNM= +github.com/libp2p/go-libp2p-swarm v0.2.8/go.mod h1:JQKMGSth4SMqonruY0a8yjlPVIkb0mdNSwckW7OYziM= github.com/libp2p/go-libp2p-testing v0.0.2/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= github.com/libp2p/go-libp2p-testing v0.0.3 h1:bdij4bKaaND7tCsaXVjRfYkMpvoOeKj9AVQGJllA6jM= github.com/libp2p/go-libp2p-testing v0.0.3/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= +github.com/libp2p/go-libp2p-testing v0.0.4/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= +github.com/libp2p/go-libp2p-testing v0.1.0/go.mod h1:xaZWMJrPUM5GlDBxCeGUi7kI4eqnjVyavGroI2nxEM0= +github.com/libp2p/go-libp2p-testing v0.1.1 h1:U03z3HnGI7Ni8Xx6ONVZvUFOAzWYmolWf5W5jAOPNmU= +github.com/libp2p/go-libp2p-testing v0.1.1/go.mod h1:xaZWMJrPUM5GlDBxCeGUi7kI4eqnjVyavGroI2nxEM0= +github.com/libp2p/go-libp2p-tls v0.1.3 h1:twKMhMu44jQO+HgQK9X8NHO5HkeJu2QbhLzLJpa8oNM= +github.com/libp2p/go-libp2p-tls v0.1.3/go.mod h1:wZfuewxOndz5RTnCAxFliGjvYSDA40sKitV4c50uI1M= github.com/libp2p/go-libp2p-transport-upgrader v0.1.1 h1:PZMS9lhjK9VytzMCW3tWHAXtKXmlURSc3ZdvwEcKCzw= github.com/libp2p/go-libp2p-transport-upgrader v0.1.1/go.mod h1:IEtA6or8JUbsV07qPW4r01GnTenLW4oi3lOPbUMGJJA= +github.com/libp2p/go-libp2p-transport-upgrader v0.2.0/go.mod h1:mQcrHj4asu6ArfSoMuyojOdjx73Q47cYD7s5+gZOlns= +github.com/libp2p/go-libp2p-transport-upgrader v0.3.0 h1:q3ULhsknEQ34eVDhv4YwKS8iet69ffs9+Fir6a7weN4= +github.com/libp2p/go-libp2p-transport-upgrader v0.3.0/go.mod h1:i+SKzbRnvXdVbU3D1dwydnTmKRPXiAR/fyvi1dXuL4o= github.com/libp2p/go-libp2p-yamux v0.2.0 h1:TSPZ5cMMz/wdoYsye/wU1TE4G3LDGMoeEN0xgnCKU/I= github.com/libp2p/go-libp2p-yamux v0.2.0/go.mod h1:Db2gU+XfLpm6E4rG5uGCFX6uXA8MEXOxFcRoXUODaK8= +github.com/libp2p/go-libp2p-yamux v0.2.1/go.mod h1:1FBXiHDk1VyRM1C0aez2bCfHQ4vMZKkAQzZbkSQt5fI= +github.com/libp2p/go-libp2p-yamux v0.2.2/go.mod h1:lIohaR0pT6mOt0AZ0L2dFze9hds9Req3OfS+B+dv4qw= +github.com/libp2p/go-libp2p-yamux v0.2.5/go.mod h1:Zpgj6arbyQrmZ3wxSZxfBmbdnWtbZ48OpsfmQVTErwA= +github.com/libp2p/go-libp2p-yamux v0.2.7/go.mod h1:X28ENrBMU/nm4I3Nx4sZ4dgjZ6VhLEn0XhIoZ5viCwU= +github.com/libp2p/go-libp2p-yamux v0.2.8 h1:0s3ELSLu2O7hWKfX1YjzudBKCP0kZ+m9e2+0veXzkn4= +github.com/libp2p/go-libp2p-yamux v0.2.8/go.mod h1:/t6tDqeuZf0INZMTgd0WxIRbtK2EzI2h7HbFm9eAKI4= github.com/libp2p/go-maddr-filter v0.0.4 h1:hx8HIuuwk34KePddrp2mM5ivgPkZ09JH4AvsALRbFUs= github.com/libp2p/go-maddr-filter v0.0.4/go.mod h1:6eT12kSQMA9x2pvFQa+xesMKUBlj9VImZbj3B9FBH/Q= +github.com/libp2p/go-maddr-filter v0.0.5/go.mod h1:Jk+36PMfIqCJhAnaASRH83bdAvfDRp/w6ENFaC9bG+M= +github.com/libp2p/go-maddr-filter v0.1.0/go.mod h1:VzZhTXkMucEGGEOSKddrwGiOv0tUhgnKqNEmIAz/bPU= github.com/libp2p/go-mplex v0.0.3/go.mod h1:pK5yMLmOoBR1pNCqDlA2GQrdAVTMkqFalaTWe7l4Yd0= github.com/libp2p/go-mplex v0.1.0 h1:/nBTy5+1yRyY82YaO6HXQRnO5IAGsXTjEJaR3LdTPc0= github.com/libp2p/go-mplex v0.1.0/go.mod h1:SXgmdki2kwCUlCCbfGLEgHjC4pFqhTp0ZoV6aiKgxDU= +github.com/libp2p/go-mplex v0.1.1/go.mod h1:Xgz2RDCi3co0LeZfgjm4OgUF15+sVR8SRcu3SFXI1lk= +github.com/libp2p/go-mplex v0.1.2 h1:qOg1s+WdGLlpkrczDqmhYzyk3vCfsQ8+RxRTQjOZWwI= +github.com/libp2p/go-mplex v0.1.2/go.mod h1:Xgz2RDCi3co0LeZfgjm4OgUF15+sVR8SRcu3SFXI1lk= github.com/libp2p/go-msgio v0.0.2 h1:ivPvEKHxmVkTClHzg6RXTYHqaJQ0V9cDbq+6lKb3UV0= github.com/libp2p/go-msgio v0.0.2/go.mod h1:63lBBgOTDKQL6EWazRMCwXsEeEeK9O2Cd+0+6OOuipQ= github.com/libp2p/go-msgio v0.0.4 h1:agEFehY3zWJFUHK6SEMR7UYmk2z6kC3oeCM7ybLhguA= github.com/libp2p/go-msgio v0.0.4/go.mod h1:63lBBgOTDKQL6EWazRMCwXsEeEeK9O2Cd+0+6OOuipQ= +github.com/libp2p/go-msgio v0.0.6/go.mod h1:4ecVB6d9f4BDSL5fqvPiC4A3KivjWn+Venn/1ALLMWA= github.com/libp2p/go-nat v0.0.3 h1:l6fKV+p0Xa354EqQOQP+d8CivdLM4kl5GxC1hSc/UeI= github.com/libp2p/go-nat v0.0.3/go.mod h1:88nUEt0k0JD45Bk93NIwDqjlhiOwOoV36GchpcVc1yI= -github.com/libp2p/go-openssl v0.0.4 h1:d27YZvLoTyMhIN4njrkr8zMDOM4lfpHIp6A+TK9fovg= +github.com/libp2p/go-nat v0.0.4/go.mod h1:Nmw50VAvKuk38jUBcmNh6p9lUJLoODbJRvYAa/+KSDo= +github.com/libp2p/go-nat v0.0.5 h1:qxnwkco8RLKqVh1NmjQ+tJ8p8khNLFxuElYG/TwqW4Q= +github.com/libp2p/go-nat v0.0.5/go.mod h1:B7NxsVNPZmRLvMOwiEO1scOSyjA56zxYAGv1yQgRkEU= +github.com/libp2p/go-netroute v0.1.2 h1:UHhB35chwgvcRI392znJA3RCBtZ3MpE3ahNCN5MR4Xg= +github.com/libp2p/go-netroute v0.1.2/go.mod h1:jZLDV+1PE8y5XxBySEBgbuVAXbhtuHSdmLPL2n9MKbk= +github.com/libp2p/go-netroute v0.1.3/go.mod h1:jZLDV+1PE8y5XxBySEBgbuVAXbhtuHSdmLPL2n9MKbk= +github.com/libp2p/go-openssl v0.0.2/go.mod h1:v8Zw2ijCSWBQi8Pq5GAixw6DbFfa9u6VIYDXnvOXkc0= +github.com/libp2p/go-openssl v0.0.3/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc= github.com/libp2p/go-openssl v0.0.4/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc= +github.com/libp2p/go-openssl v0.0.5/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc= +github.com/libp2p/go-openssl v0.0.6 h1:BFqTHVDt6V60Y7xU9f89FwljvFl/CEqZYO1vlfa2DCE= +github.com/libp2p/go-openssl v0.0.6/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc= +github.com/libp2p/go-openssl v0.0.7/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc= github.com/libp2p/go-reuseport v0.0.1 h1:7PhkfH73VXfPJYKQ6JwS5I/eVcoyYi9IMNGc6FWpFLw= github.com/libp2p/go-reuseport v0.0.1/go.mod h1:jn6RmB1ufnQwl0Q1f+YxAj8isJgDCQzaaxIFYDhcYEA= +github.com/libp2p/go-reuseport v0.0.2/go.mod h1:SPD+5RwGC7rcnzngoYC86GjPzjSywuQyMVAheVBD9nQ= github.com/libp2p/go-reuseport-transport v0.0.2 h1:WglMwyXyBu61CMkjCCtnmqNqnjib0GIEjMiHTwR/KN4= github.com/libp2p/go-reuseport-transport v0.0.2/go.mod h1:YkbSDrvjUVDL6b8XqriyA20obEtsW9BLkuOUyQAOCbs= +github.com/libp2p/go-reuseport-transport v0.0.3 h1:zzOeXnTooCkRvoH+bSXEfXhn76+LAiwoneM0gnXjF2M= +github.com/libp2p/go-reuseport-transport v0.0.3/go.mod h1:Spv+MPft1exxARzP2Sruj2Wb5JSyHNncjf1Oi2dEbzM= +github.com/libp2p/go-reuseport-transport v0.0.4/go.mod h1:trPa7r/7TJK/d+0hdBLOCGvpQQVOU74OXbNCIMkufGw= +github.com/libp2p/go-sockaddr v0.0.2 h1:tCuXfpA9rq7llM/v834RKc/Xvovy/AqM9kHvTV/jY/Q= +github.com/libp2p/go-sockaddr v0.0.2/go.mod h1:syPvOmNs24S3dFVGJA1/mrqdeijPxLV2Le3BRLKd68k= +github.com/libp2p/go-sockaddr v0.1.0 h1:Y4s3/jNoryVRKEBrkJ576F17CPOaMIzUeCsg7dlTDj0= +github.com/libp2p/go-sockaddr v0.1.0/go.mod h1:syPvOmNs24S3dFVGJA1/mrqdeijPxLV2Le3BRLKd68k= github.com/libp2p/go-stream-muxer v0.0.1/go.mod h1:bAo8x7YkSpadMTbtTaxGVHWUQsR/l5MEaHbKaliuT14= github.com/libp2p/go-stream-muxer-multistream v0.2.0 h1:714bRJ4Zy9mdhyTLJ+ZKiROmAFwUHpeRidG+q7LTQOg= github.com/libp2p/go-stream-muxer-multistream v0.2.0/go.mod h1:j9eyPol/LLRqT+GPLSxvimPhNph4sfYfMoDPd7HkzIc= +github.com/libp2p/go-stream-muxer-multistream v0.3.0 h1:TqnSHPJEIqDEO7h1wZZ0p3DXdvDSiLHQidKKUGZtiOY= +github.com/libp2p/go-stream-muxer-multistream v0.3.0/go.mod h1:yDh8abSIzmZtqtOt64gFJUXEryejzNb0lisTt+fAMJA= github.com/libp2p/go-tcp-transport v0.1.0 h1:IGhowvEqyMFknOar4FWCKSWE0zL36UFKQtiRQD60/8o= github.com/libp2p/go-tcp-transport v0.1.0/go.mod h1:oJ8I5VXryj493DEJ7OsBieu8fcg2nHGctwtInJVpipc= +github.com/libp2p/go-tcp-transport v0.1.1/go.mod h1:3HzGvLbx6etZjnFlERyakbaYPdfjg2pWP97dFZworkY= +github.com/libp2p/go-tcp-transport v0.2.0 h1:YoThc549fzmNJIh7XjHVtMIFaEDRtIrtWciG5LyYAPo= +github.com/libp2p/go-tcp-transport v0.2.0/go.mod h1:vX2U0CnWimU4h0SGSEsg++AzvBcroCGYw28kh94oLe0= +github.com/libp2p/go-tcp-transport v0.2.1 h1:ExZiVQV+h+qL16fzCWtd1HSzPsqWottJ8KXwWaVi8Ns= +github.com/libp2p/go-tcp-transport v0.2.1/go.mod h1:zskiJ70MEfWz2MKxvFB/Pv+tPIB1PpPUrHIWQ8aFw7M= github.com/libp2p/go-testutil v0.1.0 h1:4QhjaWGO89udplblLVpgGDOQjzFlRavZOjuEnz2rLMc= github.com/libp2p/go-testutil v0.1.0/go.mod h1:81b2n5HypcVyrCg/MJx4Wgfp/VHojytjVe/gLzZ2Ehc= github.com/libp2p/go-ws-transport v0.1.0/go.mod h1:rjw1MG1LU9YDC6gzmwObkPd/Sqwhw7yT74kj3raBFuo= +github.com/libp2p/go-ws-transport v0.2.0/go.mod h1:9BHJz/4Q5A9ludYWKoGCFC5gUElzlHoKzu0yY9p/klM= +github.com/libp2p/go-ws-transport v0.3.0/go.mod h1:bpgTJmRZAvVHrgHybCVyqoBmyLQ1fiZuEaBYusP5zsk= +github.com/libp2p/go-ws-transport v0.3.1 h1:ZX5rWB8nhRRJVaPO6tmkGI/Xx8XNboYX20PW5hXIscw= +github.com/libp2p/go-ws-transport v0.3.1/go.mod h1:bpgTJmRZAvVHrgHybCVyqoBmyLQ1fiZuEaBYusP5zsk= github.com/libp2p/go-yamux v1.2.2 h1:s6J6o7+ajoQMjHe7BEnq+EynOj5D2EoG8CuQgL3F2vg= github.com/libp2p/go-yamux v1.2.2/go.mod h1:FGTiPvoV/3DVdgWpX+tM0OW3tsM+W5bSE3gZwqQTcow= +github.com/libp2p/go-yamux v1.2.3/go.mod h1:FGTiPvoV/3DVdgWpX+tM0OW3tsM+W5bSE3gZwqQTcow= +github.com/libp2p/go-yamux v1.3.0/go.mod h1:FGTiPvoV/3DVdgWpX+tM0OW3tsM+W5bSE3gZwqQTcow= +github.com/libp2p/go-yamux v1.3.3/go.mod h1:FGTiPvoV/3DVdgWpX+tM0OW3tsM+W5bSE3gZwqQTcow= +github.com/libp2p/go-yamux v1.3.5/go.mod h1:FGTiPvoV/3DVdgWpX+tM0OW3tsM+W5bSE3gZwqQTcow= +github.com/libp2p/go-yamux v1.3.7 h1:v40A1eSPJDIZwz2AvrV3cxpTZEGDP11QJbukmEhYyQI= +github.com/libp2p/go-yamux v1.3.7/go.mod h1:fr7aVgmdNGJK+N1g+b6DW6VxzbRCjCOejR/hkmpooHE= +github.com/lyft/protoc-gen-star v0.5.1/go.mod h1:9toiA3cC7z5uVbODF7kEQ91Xn7XNFkVUl+SrEe+ZORU= +github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/mailru/easyjson v0.0.0-20180823135443-60711f1a8329/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= @@ -258,6 +533,8 @@ github.com/mattn/go-isatty v0.0.8 h1:HLtExJ+uU2HOZ+wI0Tt5DtUDrx8yhUqDcp7fYERX4CE github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b/go.mod h1:01TrycV0kFyexm33Z7vhZRXopbI8J3TDReVlkTgMUxE= github.com/miekg/dns v1.1.12/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/miekg/dns v1.1.28/go.mod h1:KNUDUusw/aVsxyTYZM1oqvCicbwhgbNgztCETuNZ7xM= +github.com/miekg/dns v1.1.31/go.mod h1:KNUDUusw/aVsxyTYZM1oqvCicbwhgbNgztCETuNZ7xM= github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1 h1:lYpkrQH5ajf0OXOcUbGjvZxxijuBwbbmlSxLiuofa+g= github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1/go.mod h1:pD8RvIylQ358TN4wwqatJ8rNavkEINozVn9DtGI3dfQ= github.com/minio/sha256-simd v0.0.0-20190131020904-2d45a736cd16/go.mod h1:2FMWW+8GMoPweT6+pI63m9YE3Lmw4J71hV56Chs1E/U= @@ -266,121 +543,237 @@ github.com/minio/sha256-simd v0.1.0/go.mod h1:2FMWW+8GMoPweT6+pI63m9YE3Lmw4J71hV github.com/minio/sha256-simd v0.1.1-0.20190913151208-6de447530771/go.mod h1:B5e1o+1/KgNmWrSQK08Y6Z1Vb5pwIktudl0J58iy0KM= github.com/minio/sha256-simd v0.1.1 h1:5QHSlgo3nt5yKOJrC7W8w7X+NFl8cMPZm96iu8kKUJU= github.com/minio/sha256-simd v0.1.1/go.mod h1:B5e1o+1/KgNmWrSQK08Y6Z1Vb5pwIktudl0J58iy0KM= +github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= +github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= +github.com/mitchellh/reflectwalk v1.0.1/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mr-tron/base58 v1.1.0/go.mod h1:xcD2VGqlgYjBdcBLw+TuYLr8afG+Hj8g2eTVqeSzSU8= github.com/mr-tron/base58 v1.1.1/go.mod h1:xcD2VGqlgYjBdcBLw+TuYLr8afG+Hj8g2eTVqeSzSU8= github.com/mr-tron/base58 v1.1.2/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= github.com/mr-tron/base58 v1.1.3 h1:v+sk57XuaCKGXpWtVBX8YJzO7hMGx4Aajh4TQbdEFdc= github.com/mr-tron/base58 v1.1.3/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= +github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= +github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= github.com/multiformats/go-base32 v0.0.3 h1:tw5+NhuwaOjJCC5Pp82QuXbrmLzWg7uxlMFp8Nq/kkI= github.com/multiformats/go-base32 v0.0.3/go.mod h1:pLiuGC8y0QR3Ue4Zug5UzK9LjgbkL8NSQj0zQ5Nz/AA= +github.com/multiformats/go-base36 v0.1.0 h1:JR6TyF7JjGd3m6FbLU2cOxhC0Li8z8dLNGQ89tUg4F4= +github.com/multiformats/go-base36 v0.1.0/go.mod h1:kFGE83c6s80PklsHO9sRn2NCoffoRdUUOENyW/Vv6sM= github.com/multiformats/go-multiaddr v0.0.1/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= github.com/multiformats/go-multiaddr v0.0.2/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= github.com/multiformats/go-multiaddr v0.0.4/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= +github.com/multiformats/go-multiaddr v0.1.0/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= +github.com/multiformats/go-multiaddr v0.1.1/go.mod h1:aMKBKNEYmzmDmxfX88/vz+J5IU55txyt0p4aiWVohjo= +github.com/multiformats/go-multiaddr v0.2.0/go.mod h1:0nO36NvPpyV4QzvTLi/lafl2y95ncPj0vFwVF6k6wJ4= github.com/multiformats/go-multiaddr v0.2.1 h1:SgG/cw5vqyB5QQe5FPe2TqggU9WtrA9X4nZw7LlVqOI= github.com/multiformats/go-multiaddr v0.2.1/go.mod h1:s/Apk6IyxfvMjDafnhJgJ3/46z7tZ04iMk5wP4QMGGE= +github.com/multiformats/go-multiaddr v0.2.2 h1:XZLDTszBIJe6m0zF6ITBrEcZR73OPUhCBBS9rYAuUzI= +github.com/multiformats/go-multiaddr v0.2.2/go.mod h1:NtfXiOtHvghW9KojvtySjH5y0u0xW5UouOmQQrn6a3Y= +github.com/multiformats/go-multiaddr v0.3.0/go.mod h1:dF9kph9wfJ+3VLAaeBqo9Of8x4fJxp6ggJGteB8HQTI= +github.com/multiformats/go-multiaddr v0.3.1 h1:1bxa+W7j9wZKTZREySx1vPMs2TqrYWjVZ7zE6/XLG1I= +github.com/multiformats/go-multiaddr v0.3.1/go.mod h1:uPbspcUPd5AfaP6ql3ujFY+QWzmBD8uLLL4bXW0XfGc= github.com/multiformats/go-multiaddr-dns v0.0.1/go.mod h1:9kWcqw/Pj6FwxAwW38n/9403szc57zJPs45fmnznu3Q= github.com/multiformats/go-multiaddr-dns v0.0.2 h1:/Bbsgsy3R6e3jf2qBahzNHzww6usYaZ0NhNH3sqdFS8= github.com/multiformats/go-multiaddr-dns v0.0.2/go.mod h1:9kWcqw/Pj6FwxAwW38n/9403szc57zJPs45fmnznu3Q= +github.com/multiformats/go-multiaddr-dns v0.2.0 h1:YWJoIDwLePniH7OU5hBnDZV6SWuvJqJ0YtN6pLeH9zA= +github.com/multiformats/go-multiaddr-dns v0.2.0/go.mod h1:TJ5pr5bBO7Y1B18djPuRsVkduhQH2YqYSbxWJzYGdK0= github.com/multiformats/go-multiaddr-fmt v0.0.1 h1:5YjeOIzbX8OTKVaN72aOzGIYW7PnrZrnkDyOfAWRSMA= github.com/multiformats/go-multiaddr-fmt v0.0.1/go.mod h1:aBYjqL4T/7j4Qx+R73XSv/8JsgnRFlf0w2KGLCmXl3Q= +github.com/multiformats/go-multiaddr-fmt v0.1.0 h1:WLEFClPycPkp4fnIzoFoV9FVd49/eQsuaL3/CWe167E= +github.com/multiformats/go-multiaddr-fmt v0.1.0/go.mod h1:hGtDIW4PU4BqJ50gW2quDuPVjyWNZxToGUh/HwTZYJo= github.com/multiformats/go-multiaddr-net v0.0.1/go.mod h1:nw6HSxNmCIQH27XPGBuX+d1tnvM7ihcFwHMSstNAVUU= -github.com/multiformats/go-multiaddr-net v0.1.4 h1:g6gwydsfADqFvrHoMkS0n9Ok9CG6F7ytOH/bJDkhIOY= +github.com/multiformats/go-multiaddr-net v0.1.0/go.mod h1:5JNbcfBOP4dnhoZOv10JJVkJO0pCCEf8mTnipAo2UZQ= +github.com/multiformats/go-multiaddr-net v0.1.1/go.mod h1:5JNbcfBOP4dnhoZOv10JJVkJO0pCCEf8mTnipAo2UZQ= +github.com/multiformats/go-multiaddr-net v0.1.2/go.mod h1:QsWt3XK/3hwvNxZJp92iMQKME1qHfpYmyIjFVsSOY6Y= +github.com/multiformats/go-multiaddr-net v0.1.3/go.mod h1:ilNnaM9HbmVFqsb/qcNysjCu4PVONlrBZpHIrw/qQuA= github.com/multiformats/go-multiaddr-net v0.1.4/go.mod h1:ilNnaM9HbmVFqsb/qcNysjCu4PVONlrBZpHIrw/qQuA= +github.com/multiformats/go-multiaddr-net v0.1.5 h1:QoRKvu0xHN1FCFJcMQLbG/yQE2z441L5urvG3+qyz7g= +github.com/multiformats/go-multiaddr-net v0.1.5/go.mod h1:ilNnaM9HbmVFqsb/qcNysjCu4PVONlrBZpHIrw/qQuA= +github.com/multiformats/go-multiaddr-net v0.2.0 h1:MSXRGN0mFymt6B1yo/6BPnIRpLPEnKgQNvVfCX5VDJk= +github.com/multiformats/go-multiaddr-net v0.2.0/go.mod h1:gGdH3UXny6U3cKKYCvpXI5rnK7YaOIEOPVDI9tsJbEA= github.com/multiformats/go-multibase v0.0.1 h1:PN9/v21eLywrFWdFNsFKaU04kLJzuYzmrJR+ubhT9qA= github.com/multiformats/go-multibase v0.0.1/go.mod h1:bja2MqRZ3ggyXtZSEDKpl0uO/gviWFaSteVbWT51qgs= +github.com/multiformats/go-multibase v0.0.3 h1:l/B6bJDQjvQ5G52jw4QGSYeOTZoAwIO77RblWplfIqk= +github.com/multiformats/go-multibase v0.0.3/go.mod h1:5+1R4eQrT3PkYZ24C3W2Ue2tPwIdYQD509ZjSb5y9Oc= github.com/multiformats/go-multihash v0.0.1/go.mod h1:w/5tugSrLEbWqlcgJabL3oHFKTwfvkofsjW2Qa1ct4U= github.com/multiformats/go-multihash v0.0.5/go.mod h1:lt/HCbqlQwlPBz7lv0sQCdtfcMtlJvakRUn/0Ual8po= +github.com/multiformats/go-multihash v0.0.8/go.mod h1:YSLudS+Pi8NHE7o6tb3D8vrpKa63epEDmG8nTduyAew= github.com/multiformats/go-multihash v0.0.10/go.mod h1:YSLudS+Pi8NHE7o6tb3D8vrpKa63epEDmG8nTduyAew= github.com/multiformats/go-multihash v0.0.13 h1:06x+mk/zj1FoMsgNejLpy6QTvJqlSt/BhLEy87zidlc= github.com/multiformats/go-multihash v0.0.13/go.mod h1:VdAWLKTwram9oKAatUcLxBNUjdtcVwxObEQBtRfuyjc= +github.com/multiformats/go-multihash v0.0.14/go.mod h1:VdAWLKTwram9oKAatUcLxBNUjdtcVwxObEQBtRfuyjc= github.com/multiformats/go-multistream v0.1.0 h1:UpO6jrsjqs46mqAK3n6wKRYFhugss9ArzbyUzU+4wkQ= github.com/multiformats/go-multistream v0.1.0/go.mod h1:fJTiDfXJVmItycydCnNx4+wSzZ5NwG2FEVAI30fiovg= +github.com/multiformats/go-multistream v0.1.1 h1:JlAdpIFhBhGRLxe9W6Om0w++Gd6KMWoFPZL/dEnm9nI= +github.com/multiformats/go-multistream v0.1.1/go.mod h1:KmHZ40hzVxiaiwlj3MEbYgK9JFk2/9UktWZAF54Du38= +github.com/multiformats/go-multistream v0.1.2/go.mod h1:5GZPQZbkWOLOn3J2y4Y99vVW7vOfsAflxARk3x14o6k= +github.com/multiformats/go-varint v0.0.1/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE= github.com/multiformats/go-varint v0.0.2/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE= github.com/multiformats/go-varint v0.0.5 h1:XVZwSo04Cs3j/jS0uAEPpT3JY6DzMcVLLoWOSnCxOjg= github.com/multiformats/go-varint v0.0.5/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE= +github.com/multiformats/go-varint v0.0.6/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE= +github.com/mwitkow/go-proto-validators v0.0.0-20180403085117-0950a7990007/go.mod h1:m2XC9Qq0AlmmVksL6FktJCdTYyLk7V3fKyp0sl1yWQo= +github.com/mwitkow/go-proto-validators v0.3.2 h1:qRlmpTzm2pstMKKzTdvwPCF5QfBNURSlAgN/R+qbKos= +github.com/mwitkow/go-proto-validators v0.3.2/go.mod h1:ej0Qp0qMgHN/KtDyUt+Q1/tA7a5VarXUOUxD+oeD30w= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/nxadm/tail v1.4.4 h1:DQuhQpB1tVlglWS2hLQ5OV6B5r8aGxSrPc5Qo6uTN78= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0 h1:WSHQ+IS43OoUrWtD1/bbclrwK8TTH5hzp+umCiuxHgs= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.12.0 h1:Iw5WCbBcaAAd0fpRb1c9r5YCylv4XDoCSigm1zLevwU= github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= +github.com/onsi/ginkgo v1.12.1 h1:mFwc4LvZ0xpSvDZ3E+k8Yte0hLOMxXUlP+yXtJqkYfQ= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.14.1 h1:jMU0WaQrP0a/YAEq8eJmJKjBoMs+pClEr1vDMlM/Do4= +github.com/onsi/ginkgo v1.14.1/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= +github.com/onsi/gomega v1.4.1/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.4.3 h1:RE1xgDvH7imwFD45h+u2SgIfERHlS2yNG4DObb5BSKU= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= github.com/onsi/gomega v1.9.0 h1:R1uwffexN6Pr340GtYRIdZmAiN4J+iw6WG4wog1DUXg= github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1 h1:o0+MgICZLuZ7xjH7Vx6zS/zcu93/BEp1VwkIW1mEXCE= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.10.2 h1:aY/nuoWlKJud2J6U0E3NWsjlg+0GtwXxgEqthRdzlcs= +github.com/onsi/gomega v1.10.2/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= github.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= github.com/opentracing/opentracing-go v1.1.0 h1:pWlfV3Bxv7k65HYwkikxat0+s3pV4bsqf19k25Ur8rU= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= +github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= +github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI= +github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polydawn/refmt v0.0.0-20190221155625-df39d6c2d992 h1:bzMe+2coZJYHnhGgVlcQKuRy4FSny4ds8dLQjw5P1XE= github.com/polydawn/refmt v0.0.0-20190221155625-df39d6c2d992/go.mod h1:uIp+gprXxxrWSjjklXD+mN4wed/tMfjMMmN/9+JsA9o= +github.com/polydawn/refmt v0.0.0-20190807091052-3d65705ee9f1 h1:CskT+S6Ay54OwxBGB0R3Rsx4Muto6UnEYTyKJbyRIAI= +github.com/polydawn/refmt v0.0.0-20190807091052-3d65705ee9f1/go.mod h1:uIp+gprXxxrWSjjklXD+mN4wed/tMfjMMmN/9+JsA9o= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/pseudomuto/protoc-gen-doc v1.3.2/go.mod h1:y5+P6n3iGrbKG+9O04V5ld71in3v/bX88wUwgt+U8EA= +github.com/pseudomuto/protokit v0.2.0/go.mod h1:2PdH30hxVHsup8KpBTOXTBeMVhJZVio3Q8ViKSAXT0Q= +github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d h1:zE9ykElWQ6/NYmHa3jpm/yHnI4xSofP+UP6SpjHcSeM= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/assertions v1.2.0 h1:42S6lae5dvLc7BrLu/0ugRtcFVjoJNMC/N3yZFZkDFs= +github.com/smartystreets/assertions v1.2.0/go.mod h1:tcbTF8ujkAEcZ8TElKY+i30BzYlVhC/LOxJk7iOWnoo= github.com/smartystreets/goconvey v0.0.0-20190222223459-a17d461953aa h1:E+gaaifzi2xF65PbDmuKI3PhLWY6G5opMLniFq8vmXA= github.com/smartystreets/goconvey v0.0.0-20190222223459-a17d461953aa/go.mod h1:2RVY1rIf+2J2o/IM9+vPq9RzmHDSseB7FoXiSNIUsoU= +github.com/smartystreets/goconvey v1.6.4 h1:fv0U8FUIMPNf1L9lnHLvLhgicrIVChEkdzIKYqbNC9s= +github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/smola/gocompat v0.2.0/go.mod h1:1B0MlxbmoZNo3h8guHp8HztB3BSYR5itql9qtVc0ypY= github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a/go.mod h1:7AyxJNCJ7SBZ1MfVQCWD6Uqo2oubI2Eq2y2eqf+A5r0= github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572 h1:RC6RW7j+1+HkWaX/Yh71Ee5ZHaHYt7ZP4sQgUrm6cDU= github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572/go.mod h1:w0SWMsp6j9O/dk4/ZpIhL+3CkG8ofA2vuv7k+ltqUMc= +github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI= github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= +github.com/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= +github.com/spf13/afero v1.3.4/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= +github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU= +github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= +github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/src-d/envconfig v1.0.0/go.mod h1:Q9YQZ7BKITldTBnoxsE5gOeB5y66RyPXeue/R4aaNBc= 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/testify v0.0.0-20170130113145-4d4bfba8f1d1/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.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= 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.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd0= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ= +github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0= github.com/warpfork/go-wish v0.0.0-20180510122957-5ad1f5abf436 h1:qOpVTI+BrstcjTZLm2Yz/3sOnqkzj3FQoh0g+E5s3Gc= github.com/warpfork/go-wish v0.0.0-20180510122957-5ad1f5abf436/go.mod h1:x6AKhvSSexNrVSrViXSHUEbICjmGXhtgABaHIySUSGw= +github.com/warpfork/go-wish v0.0.0-20200122115046-b9ea61034e4a h1:G++j5e0OC488te356JvdhaM8YS6nMsjLAYF7JxCv07w= +github.com/warpfork/go-wish v0.0.0-20200122115046-b9ea61034e4a/go.mod h1:x6AKhvSSexNrVSrViXSHUEbICjmGXhtgABaHIySUSGw= +github.com/whyrusleeping/cbor-gen v0.0.0-20200123233031-1cdf64d27158 h1:WXhVOwj2USAXB5oMDwRl3piOux2XMV9TANaYxXHdkoE= +github.com/whyrusleeping/cbor-gen v0.0.0-20200123233031-1cdf64d27158/go.mod h1:Xj/M2wWU+QdTdRbu/L/1dIZY8/Wb2K9pAhtroQuxJJI= +github.com/whyrusleeping/cbor-gen v0.0.0-20200826160007-0b9f6c5fb163 h1:TtcUeY2XZSriVWR1pXyfCBWIf/NGC2iUdNw1lofUjUU= +github.com/whyrusleeping/cbor-gen v0.0.0-20200826160007-0b9f6c5fb163/go.mod h1:fgkXqYy7bV2cFeIEOkVTZS/WjXARfBqSH6Q2qHL33hQ= github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1/go.mod h1:8UvriyWtv5Q5EOgjHaSseUEdkQfvwFv1I/In/O2M9gc= github.com/whyrusleeping/go-logging v0.0.0-20170515211332-0457bb6b88fc h1:9lDbC6Rz4bwmou+oE6Dt4Cb2BGMur5eR/GYptkKUVHo= github.com/whyrusleeping/go-logging v0.0.0-20170515211332-0457bb6b88fc/go.mod h1:bopw91TMyo8J3tvftk8xmU2kPmlrt4nScJQZU2hE5EM= +github.com/whyrusleeping/go-logging v0.0.1/go.mod h1:lDPYj54zutzG1XYfHAhcc7oNXEburHQBn+Iqd4yS4vE= github.com/whyrusleeping/go-notifier v0.0.0-20170827234753-097c5d47330f h1:M/lL30eFZTKnomXY6huvM6G0+gVquFNf6mxghaWlFUg= github.com/whyrusleeping/go-notifier v0.0.0-20170827234753-097c5d47330f/go.mod h1:cZNvX9cFybI01GriPRMXDtczuvUhgbcYr9iCGaNlRv8= github.com/whyrusleeping/mafmt v1.2.8 h1:TCghSl5kkwEE0j+sU/gudyhVMRlpBin8fMBBHg59EbA= github.com/whyrusleeping/mafmt v1.2.8/go.mod h1:faQJFPbLSxzD9xpA02ttW/tS9vZykNvXwGvqIpk20FA= github.com/whyrusleeping/mdns v0.0.0-20180901202407-ef14215e6b30/go.mod h1:j4l84WPFclQPj320J9gp0XwNKBb3U0zt5CBqjPp22G4= +github.com/whyrusleeping/mdns v0.0.0-20190826153040-b9b60ed33aa9/go.mod h1:j4l84WPFclQPj320J9gp0XwNKBb3U0zt5CBqjPp22G4= github.com/whyrusleeping/multiaddr-filter v0.0.0-20160516205228-e903e4adabd7 h1:E9S12nwJwEOXe2d6gT6qxdvqMnNq+VnSsKPgm2ZZNds= github.com/whyrusleeping/multiaddr-filter v0.0.0-20160516205228-e903e4adabd7/go.mod h1:X2c0RVCI1eSUFI8eLcY3c0423ykwiUdxLJtkDvruhjI= github.com/x-cray/logrus-prefixed-formatter v0.5.2/go.mod h1:2duySbKsL6M18s5GU7VPsoEPHyzalCE06qoARUCeBBE= +github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= +go.opencensus.io v0.22.1/go.mod h1:Ap50jQcDJrx6rB6VgeeFPtuPIf3wMRvRfrfYDO6+BmA= +go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3 h1:8sGtKOrtQqkN1bp2AtX+misvLIlOmsEsNd+9NIcPEm8= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.4 h1:LYy1Hy3MJdrCdMwwzxA/dRok4ejH+RwNGbuoD9fCjto= +go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.6.0 h1:Ezj3JGmsOnG1MoRWQkPBsKLe9DwWD9QeXzTRzzldNVk= go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/goleak v1.0.0 h1:qsup4IcBdlmsnGfqyLl4Ntn3C2XCCuKAE7DwHpScyUo= +go.uber.org/goleak v1.0.0/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.1.10 h1:z+mqJhf6ss6BSfSM671tgKyZBFPTTJM+HLxnhPC3wu0= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= go.uber.org/multierr v1.5.0 h1:KCa4XfM8CWFCpxXRGok+Q0SS/0XBhMDbHHGABQLvD2A= go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee h1:0mgffUl7nfd+FpvXMVz4IDEaUSmT1ysygQC7qYo7sG4= go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= -go.uber.org/zap v1.14.1 h1:nYDKopTbvAPq/NrUVZwT15y2lpROBiLLyoRTbXOYWOo= +go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.14.1/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= +go.uber.org/zap v1.15.0/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= +go.uber.org/zap v1.16.0 h1:uFRZXykJGK9lLY4HtgSw44DnIcAM+kRBP7x5m+NpAOM= +go.uber.org/zap v1.16.0/go.mod h1:MA8QOfq0BHJwdXa996Y4dYkAqRKB8/1K1QMMZVaNZjQ= golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20180501155221-613d6eafa307/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190225124518-7f87c0fbb88b/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190513172903-22d7a77e9e5f/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190530122614-20be4c3c3ed5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8 h1:1wopBVtVdWnn03fZelqdXTqk7U7zPQCb+T4rbU9ZEoU= golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190618222545-ea8f1a30c443/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20200311171314-f7b00557c8c4 h1:QmwruyY+bKbDDL0BaglrbZABEali68eoMFhTZpCjYVA= -golang.org/x/crypto v0.0.0-20200311171314-f7b00557c8c4/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200406173513-056763e48d71 h1:DOmugCavvUtnUD114C1Wh+UgTgQZ4pMLzXxi1pSt+/Y= -golang.org/x/crypto v0.0.0-20200406173513-056763e48d71/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200115085410-6d4e4cb37c7d/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200221231518-2aa609cf4a9d/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200423211502-4bdfaf469ed5/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200602180216-279210d13fed/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9 h1:vEg9joUBmeBcK9iSJftGNf3coIG4HqZElCPehJsfAYM= +golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a h1:vclmkQCjlDX5OydZ9wv8rBCcS0QyQY66Mpf/7BZbInM= +golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= @@ -393,50 +786,79 @@ golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKG golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0 h1:KU7oHjnv3XNWfa5COkzUifxZmxp1TyI7ImMXqFxLwvQ= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/net v0.0.0-20180719180050-a680a1efc54d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190227160552-c95aed5357e7/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a h1:oWX7TPOiFAMXLq8o0ikBYfCJVlRHBcsciT5bXOrH628= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190611141213-3f473d35a33a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859 h1:R/3boaszxrf1GEUWTVDzSKVwLmSJpwZ1yqXm8j0v2QI= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191002035440-2ec189313ef0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e h1:3G+cUijn7XD+S4eJFddp53Pv7+slrESplyjG25HgL+k= -golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20200925080053-05aa5d4ee321 h1:lleNcKRbcaC8MqgLwghIkzZ2JBQAb7QQ9MiwRt1BisA= +golang.org/x/net v0.0.0-20200925080053-05aa5d4ee321/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e h1:vcxGaoTs7kV8m5Np9uUNQin4BrLOthgV7252N8V+FwY= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a h1:WXEvlFVvvGxCJLG6REjsT03iWnKLEWinaScsxF2Vm2o= +golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a h1:1BGLXjeY4akVXGgbC9HugT3Jv3hCI0z56oJR5vAMgBU= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190219092855-153ac476189d/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190228124157-a34e9553db1e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190405154228-4b34438f7a67/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190524122548-abf6ff778158/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190526052359-791d8a0f4d09/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190610200419-93c9922d18ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb h1:fgwFCsaw9buMuxNd6+DQfAuSFqbNiQZpcgJQAgJsK6k= golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527 h1:uYVVQ9WP/Ds2ROhcaGPeIdVq0RIXVLwsHlnvJ+cT1So= -golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200409092240-59c9f1ba88fa h1:mQTN3ECqfsViCNBgq+A40vdwhkGykrrQlYe3mPj6BoU= -golang.org/x/sys v0.0.0-20200409092240-59c9f1ba88fa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1 h1:ogLJMz+qpzav7lGMh10LMvAkM/fAoGlaiiHYiFYdm80= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d h1:L/IKR6COd7ubZrs2oTnTi73IhgqJ71c9s80WsQnh0Es= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -444,43 +866,67 @@ golang.org/x/tools v0.0.0-20181130052023-1c3d964395ce/go.mod h1:n7NCudcB/nEzxVGm golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5 h1:hKsoRgsbwY1NafxrwTs+k64bikrLBkAgPir1TNCj3Zs= golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191216052735-49a3e744a425/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200413015812-1f08ef6002a8 h1:1TnYi6m8UoNpEKS1wxgR8GcHPe2YDgYoDjAedVuX+Q0= -golang.org/x/tools v0.0.0-20200413015812-1f08ef6002a8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200522201501-cb1345f3a375/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200925191224-5d1fdd8fa346 h1:hzJjkvxUIF3bSt+v8N5tBQNx/605vszZJ+3XsIamzZo= +golang.org/x/tools v0.0.0-20200925191224-5d1fdd8fa346/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7 h1:9zdDQZ7Thm29KFXgAX/+yaf3eVbP7djjWp/dXAppNCc= 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-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0 h1:/wp5JvzpHIxhs/dumFmF7BXTf3Z+dd4uXta4kVyO508= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20180831171423-11092d34479b/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20181107211654-5fc9ac540362/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 h1:gSJIx1SDwno+2ElGhA4+qG2zF97qiUzTM+rQ0klBOcE= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= -google.golang.org/genproto v0.0.0-20200413115906-b5235f65be36 h1:j7CmVRD4Kec0+f8VuBAc2Ak2MFfXm5Q2/RxuJLL+76E= -google.golang.org/genproto v0.0.0-20200413115906-b5235f65be36/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= +google.golang.org/genproto v0.0.0-20200925023002-c2d885f95484 h1:Rr9EZdYRq2WLckzJQVtN3ISKoP7dvgwi7jbglILNZ34= +google.golang.org/genproto v0.0.0-20200925023002-c2d885f95484/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.27.0 h1:rRYRFMVgRv6E0D70Skyfsr28tDXIuuPZyWGMPdMcnXg= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.28.1 h1:C1QC6KzgSiLyBabDi87BbjaGreoRgGUF5nOyvfrAZ1k= -google.golang.org/grpc v1.28.1/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60= +google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= +google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= +google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= +google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= +google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= +google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= +google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.0 h1:4MY060fB1DLGMB/7MBTLnwQUY6+F09GEiz6SsrNqyzM= +google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.24.0 h1:UhZDfRO8JRQru4/+LlLE0BRKGF8L+PICnvYZmx/fEGA= +google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= +google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b h1:QRR6H1YWRnHb4Y/HeNFCTJLFVxaq6wH4YuVdsUOr75U= +gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= @@ -491,11 +937,17 @@ gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWD gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776 h1:tQIYjPdBoyREyB9XMu+nnTclpTYkz2zFM+lzLJFO4gQ= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.1-2019.2.3 h1:3JgtbtFHMiCmsznwGVTUWbgGov+pVqnlf1dEJTNAXeM= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= +honnef.co/go/tools v0.0.1-2020.1.5/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= diff --git a/go/admin.pb.go b/go/admin.pb.go index 88b103e..e2b252f 100644 --- a/go/admin.pb.go +++ b/go/admin.pb.go @@ -6,14 +6,13 @@ package pb import ( context "context" fmt "fmt" - io "io" - math "math" - math_bits "math/bits" - proto "github.com/gogo/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" ) // Reference imports to suppress errors if they are not otherwise used. diff --git a/go/file.pb.go b/go/file.pb.go index 74b2e99..8bb1c1d 100644 --- a/go/file.pb.go +++ b/go/file.pb.go @@ -6,14 +6,13 @@ package pb import ( context "context" fmt "fmt" - io "io" - math "math" - math_bits "math/bits" - proto "github.com/gogo/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" ) // Reference imports to suppress errors if they are not otherwise used. @@ -31,7 +30,7 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package type UploadRequest struct { // blob is a single chunk of data Blob *Blob `protobuf:"bytes,1,opt,name=blob,proto3" json:"blob,omitempty"` - // options allows setting the optoins for this upload + // options allows setting the options for this upload, only valid in the first message of a stream Options *UploadOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` } @@ -84,12 +83,18 @@ func (m *UploadRequest) GetOptions() *UploadOptions { // UploadOptions allows controlling the parameters of a file upload type UploadOptions struct { - // specifes the multihash function to use + // specifies the multihash function to use MultiHash string `protobuf:"bytes,1,opt,name=multiHash,proto3" json:"multiHash,omitempty"` // specifies the dag layout (balanced, tricklet) Layout string `protobuf:"bytes,2,opt,name=layout,proto3" json:"layout,omitempty"` // specifies the chunker type (rabin, default, etc...) Chunker string `protobuf:"bytes,3,opt,name=chunker,proto3" json:"chunker,omitempty"` + // optional reference ID to tag the file with. If set, the same reference ID must be used for deletion + RefID string `protobuf:"bytes,4,opt,name=refID,proto3" json:"refID,omitempty"` + // if refID is set, allows progressive upload + Progressive bool `protobuf:"varint,5,opt,name=progressive,proto3" json:"progressive,omitempty"` + // if refID is set, remove the any existing uploads with same refID + Replace bool `protobuf:"varint,6,opt,name=replace,proto3" json:"replace,omitempty"` } func (m *UploadOptions) Reset() { *m = UploadOptions{} } @@ -146,6 +151,27 @@ func (m *UploadOptions) GetChunker() string { return "" } +func (m *UploadOptions) GetRefID() string { + if m != nil { + return m.RefID + } + return "" +} + +func (m *UploadOptions) GetProgressive() bool { + if m != nil { + return m.Progressive + } + return false +} + +func (m *UploadOptions) GetReplace() bool { + if m != nil { + return m.Replace + } + return false +} + // DownloadRequest is used to download a UnixFS object // although it can in theory be used with other type of objects // there may be some undefined behavior @@ -158,7 +184,7 @@ type DownloadRequest struct { ChunkSize int32 `protobuf:"varint,2,opt,name=chunkSize,proto3" json:"chunkSize,omitempty"` // Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range. // If both is none zero, only data within range is requested. - // The unit of range is alway in bytes. + // The unit of range is always in bytes. // If used, please check the returned range values in blobs to make sure this feature is supported. RangeStart uint64 `protobuf:"varint,3,opt,name=rangeStart,proto3" json:"rangeStart,omitempty"` RangeEnd uint64 `protobuf:"varint,4,opt,name=rangeEnd,proto3" json:"rangeEnd,omitempty"` @@ -278,7 +304,7 @@ type Blob struct { Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` // Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Range. // If both is zero, the blobs streams contents of the file from start to finish. - // The unit of range is alway in bytes. + // The unit of range is always in bytes. // Currently, DownloadResponse support blob range. RangeStart uint64 `protobuf:"varint,2,opt,name=rangeStart,proto3" json:"rangeStart,omitempty"` RangeEnd uint64 `protobuf:"varint,3,opt,name=rangeEnd,proto3" json:"rangeEnd,omitempty"` @@ -338,41 +364,147 @@ func (m *Blob) GetRangeEnd() uint64 { return 0 } +// UploadRequest is used to decrease the reference count on UnixFS objects +type RemoveRequest struct { + // refIDs is a map of reference IDs to hash/cid of objects to remove those reference counts + RefIDs map[string]string `protobuf:"bytes,1,rep,name=refIDs,proto3" json:"refIDs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *RemoveRequest) Reset() { *m = RemoveRequest{} } +func (m *RemoveRequest) String() string { return proto.CompactTextString(m) } +func (*RemoveRequest) ProtoMessage() {} +func (*RemoveRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_9188e3b7e55e1162, []int{5} +} +func (m *RemoveRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RemoveRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_RemoveRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *RemoveRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_RemoveRequest.Merge(m, src) +} +func (m *RemoveRequest) XXX_Size() int { + return m.Size() +} +func (m *RemoveRequest) XXX_DiscardUnknown() { + xxx_messageInfo_RemoveRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_RemoveRequest proto.InternalMessageInfo + +func (m *RemoveRequest) GetRefIDs() map[string]string { + if m != nil { + return m.RefIDs + } + return nil +} + +// RemoveResponse contains the response to a remove request +type RemoveResponse struct { + // The number of removal operations performed. + // A missing count is because the refID to hash pair was already removed or was never added + Count uint64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` +} + +func (m *RemoveResponse) Reset() { *m = RemoveResponse{} } +func (m *RemoveResponse) String() string { return proto.CompactTextString(m) } +func (*RemoveResponse) ProtoMessage() {} +func (*RemoveResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_9188e3b7e55e1162, []int{6} +} +func (m *RemoveResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RemoveResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_RemoveResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *RemoveResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_RemoveResponse.Merge(m, src) +} +func (m *RemoveResponse) XXX_Size() int { + return m.Size() +} +func (m *RemoveResponse) XXX_DiscardUnknown() { + xxx_messageInfo_RemoveResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_RemoveResponse proto.InternalMessageInfo + +func (m *RemoveResponse) GetCount() uint64 { + if m != nil { + return m.Count + } + return 0 +} + func init() { proto.RegisterType((*UploadRequest)(nil), "pb.UploadRequest") proto.RegisterType((*UploadOptions)(nil), "pb.UploadOptions") proto.RegisterType((*DownloadRequest)(nil), "pb.DownloadRequest") proto.RegisterType((*DownloadResponse)(nil), "pb.DownloadResponse") proto.RegisterType((*Blob)(nil), "pb.Blob") + proto.RegisterType((*RemoveRequest)(nil), "pb.RemoveRequest") + proto.RegisterMapType((map[string]string)(nil), "pb.RemoveRequest.RefIDsEntry") + proto.RegisterType((*RemoveResponse)(nil), "pb.RemoveResponse") } func init() { proto.RegisterFile("file.proto", fileDescriptor_9188e3b7e55e1162) } var fileDescriptor_9188e3b7e55e1162 = []byte{ - // 367 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x52, 0x4f, 0x4b, 0xfb, 0x40, - 0x10, 0x4d, 0xda, 0xfc, 0xfa, 0x67, 0x7e, 0x95, 0xea, 0x2a, 0x12, 0x42, 0x09, 0x92, 0x53, 0x41, - 0x28, 0xa5, 0x7a, 0xf5, 0x60, 0x51, 0xd1, 0x93, 0x65, 0x8b, 0x17, 0x11, 0x24, 0xb1, 0xab, 0x0d, - 0xae, 0xbb, 0x31, 0xd9, 0x20, 0x7a, 0xd0, 0xaf, 0xe0, 0xc7, 0xf2, 0xd8, 0xa3, 0x47, 0x69, 0xbf, - 0x88, 0x64, 0xd2, 0x35, 0x6d, 0x0f, 0xbd, 0xe5, 0xbd, 0x79, 0xf3, 0xe6, 0xcd, 0x64, 0x01, 0xee, - 0x43, 0xce, 0x3a, 0x51, 0x2c, 0x95, 0x24, 0xa5, 0x28, 0x70, 0x20, 0x55, 0x21, 0xcf, 0xb1, 0x77, - 0x0d, 0x1b, 0x57, 0x11, 0x97, 0xfe, 0x88, 0xb2, 0xe7, 0x94, 0x25, 0x8a, 0xb4, 0xc0, 0x0a, 0xb8, - 0x0c, 0x6c, 0x73, 0xcf, 0x6c, 0xff, 0xef, 0xd5, 0x3a, 0x51, 0xd0, 0xe9, 0x73, 0x19, 0x50, 0x64, - 0xc9, 0x3e, 0x54, 0x65, 0xa4, 0x42, 0x29, 0x12, 0xbb, 0x84, 0x82, 0xad, 0x4c, 0x90, 0x3b, 0x5c, - 0xe6, 0x05, 0xaa, 0x15, 0xde, 0xad, 0xf6, 0x9e, 0x57, 0x48, 0x0b, 0xea, 0x4f, 0x29, 0x57, 0xe1, - 0xb9, 0x9f, 0x8c, 0x71, 0x40, 0x9d, 0x16, 0x04, 0xd9, 0x85, 0x0a, 0xf7, 0x5f, 0x65, 0xaa, 0xd0, - 0xba, 0x4e, 0xe7, 0x88, 0xd8, 0x50, 0xbd, 0x1b, 0xa7, 0xe2, 0x91, 0xc5, 0x76, 0x19, 0x0b, 0x1a, - 0x7a, 0x1f, 0xd0, 0x3c, 0x91, 0x2f, 0x62, 0x31, 0x3e, 0x01, 0x6b, 0x5c, 0xb8, 0xe3, 0x77, 0x36, - 0x16, 0x3b, 0x86, 0xe1, 0x1b, 0x43, 0xef, 0x7f, 0xb4, 0x20, 0x88, 0x0b, 0x10, 0xfb, 0xe2, 0x81, - 0x0d, 0x95, 0x1f, 0x2b, 0x9c, 0x60, 0xd1, 0x05, 0x86, 0x38, 0x50, 0x43, 0x74, 0x2a, 0x46, 0xb6, - 0x85, 0xd5, 0x3f, 0xec, 0x75, 0x61, 0xb3, 0x08, 0x90, 0x44, 0x52, 0x24, 0x6c, 0xfd, 0x01, 0xbd, - 0x1b, 0xb0, 0x32, 0x84, 0x4b, 0x49, 0xa1, 0x98, 0x50, 0x28, 0x6c, 0x50, 0x0d, 0x57, 0xf2, 0x94, - 0xd6, 0xe6, 0x29, 0x2f, 0xe7, 0xe9, 0xbd, 0x43, 0xf5, 0x2c, 0xe4, 0xec, 0x78, 0x70, 0x41, 0x0e, - 0x01, 0xf2, 0xe3, 0x67, 0x04, 0x59, 0xf8, 0x4d, 0xf3, 0x4b, 0x39, 0xcd, 0x8c, 0x1a, 0xa4, 0x4a, - 0x07, 0xf7, 0x8c, 0xb6, 0x49, 0x8e, 0xa0, 0xa1, 0x17, 0xc2, 0xbe, 0xed, 0x4c, 0xb4, 0x72, 0x63, - 0x67, 0x67, 0x99, 0xd4, 0xed, 0x5d, 0xb3, 0x6f, 0x7f, 0x4d, 0x5d, 0x73, 0x32, 0x75, 0xcd, 0x9f, - 0xa9, 0x6b, 0x7e, 0xce, 0x5c, 0x63, 0x32, 0x73, 0x8d, 0xef, 0x99, 0x6b, 0x04, 0x15, 0x7c, 0x6e, - 0x07, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xf6, 0xd3, 0xab, 0x3f, 0x8c, 0x02, 0x00, 0x00, + // 515 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x53, 0xcf, 0x6e, 0xd3, 0x4e, + 0x18, 0xcc, 0x26, 0xce, 0xbf, 0x2f, 0xed, 0xaf, 0xfd, 0x2d, 0x11, 0xb2, 0xac, 0x62, 0x45, 0x3e, + 0xa0, 0x48, 0x48, 0x51, 0x15, 0xa8, 0x04, 0x48, 0x1c, 0xa8, 0x5a, 0x44, 0x4f, 0x54, 0x5b, 0x71, + 0x41, 0x5c, 0xec, 0x74, 0xdb, 0x58, 0xdd, 0x7a, 0xcd, 0x7a, 0x1d, 0x14, 0x2e, 0x88, 0x37, 0xe0, + 0x55, 0x38, 0xf0, 0x0e, 0x1c, 0x7b, 0xe4, 0x88, 0x92, 0x17, 0x41, 0xfb, 0xd9, 0x8b, 0x9d, 0x1c, + 0x7a, 0xf3, 0xcc, 0x37, 0x3b, 0x3b, 0x3b, 0xbb, 0x06, 0xb8, 0x8a, 0x05, 0x9f, 0xa4, 0x4a, 0x6a, + 0x49, 0x9b, 0x69, 0xe4, 0x41, 0xae, 0x63, 0x51, 0xe0, 0xe0, 0x03, 0xec, 0xbe, 0x4f, 0x85, 0x0c, + 0x2f, 0x19, 0xff, 0x94, 0xf3, 0x4c, 0xd3, 0x03, 0x70, 0x22, 0x21, 0x23, 0x97, 0x8c, 0xc8, 0x78, + 0x30, 0xed, 0x4d, 0xd2, 0x68, 0x72, 0x2c, 0x64, 0xc4, 0x90, 0xa5, 0x4f, 0xa0, 0x2b, 0x53, 0x1d, + 0xcb, 0x24, 0x73, 0x9b, 0x28, 0xf8, 0xdf, 0x08, 0x0a, 0x87, 0x77, 0xc5, 0x80, 0x59, 0x45, 0xf0, + 0x83, 0x58, 0xf3, 0x72, 0x44, 0x0f, 0xa0, 0x7f, 0x9b, 0x0b, 0x1d, 0xbf, 0x0d, 0xb3, 0x39, 0xee, + 0xd0, 0x67, 0x15, 0x41, 0x1f, 0x42, 0x47, 0x84, 0x4b, 0x99, 0x6b, 0xf4, 0xee, 0xb3, 0x12, 0x51, + 0x17, 0xba, 0xb3, 0x79, 0x9e, 0xdc, 0x70, 0xe5, 0xb6, 0x70, 0x60, 0x21, 0x1d, 0x42, 0x5b, 0xf1, + 0xab, 0xb3, 0x13, 0xd7, 0x41, 0xbe, 0x00, 0x74, 0x04, 0x83, 0x54, 0xc9, 0x6b, 0xc5, 0xb3, 0x2c, + 0x5e, 0x70, 0xb7, 0x3d, 0x22, 0xe3, 0x1e, 0xab, 0x53, 0xc6, 0x51, 0xf1, 0x54, 0x84, 0x33, 0xee, + 0x76, 0x70, 0x6a, 0x61, 0xf0, 0x15, 0xf6, 0x4e, 0xe4, 0xe7, 0xa4, 0xde, 0x08, 0x05, 0x67, 0x5e, + 0xe5, 0xc5, 0x6f, 0x73, 0x10, 0xcc, 0x70, 0x11, 0x7f, 0xe1, 0x98, 0xb6, 0xcd, 0x2a, 0x82, 0xfa, + 0x00, 0x2a, 0x4c, 0xae, 0xf9, 0x85, 0x0e, 0x95, 0xc6, 0xcc, 0x0e, 0xab, 0x31, 0xd4, 0x83, 0x1e, + 0xa2, 0xd3, 0xe4, 0x12, 0x93, 0x3b, 0xec, 0x1f, 0x0e, 0x0e, 0x61, 0xbf, 0x0a, 0x90, 0xa5, 0x32, + 0xc9, 0xf8, 0xfd, 0x77, 0x12, 0x7c, 0x04, 0xc7, 0x20, 0xac, 0x49, 0x26, 0x9a, 0x27, 0x1a, 0x85, + 0x3b, 0xcc, 0xc2, 0xad, 0x3c, 0xcd, 0x7b, 0xf3, 0xb4, 0xb6, 0xf2, 0x7c, 0x23, 0xb0, 0xcb, 0xf8, + 0xad, 0x5c, 0x70, 0xdb, 0xc7, 0x11, 0x74, 0xb0, 0xe7, 0xcc, 0x25, 0xa3, 0xd6, 0x78, 0x30, 0x7d, + 0x64, 0xf2, 0x6c, 0x48, 0x26, 0x0c, 0xe7, 0xa7, 0x89, 0x56, 0x4b, 0x56, 0x8a, 0xbd, 0x17, 0x30, + 0xa8, 0xd1, 0x74, 0x1f, 0x5a, 0x37, 0x7c, 0x59, 0x96, 0x6a, 0x3e, 0xcd, 0x65, 0x2e, 0x42, 0x91, + 0xf3, 0xf2, 0xf6, 0x0b, 0xf0, 0xb2, 0xf9, 0x9c, 0x04, 0x8f, 0xe1, 0x3f, 0xeb, 0x5f, 0x36, 0x32, + 0x84, 0xf6, 0x4c, 0xe6, 0xe5, 0x49, 0x1d, 0x56, 0x80, 0xe9, 0x4f, 0x02, 0xdd, 0x37, 0xb1, 0xe0, + 0xaf, 0xcf, 0xcf, 0xe8, 0x33, 0x80, 0xe2, 0xed, 0x19, 0x82, 0xd6, 0x9e, 0x69, 0x99, 0xd1, 0xdb, + 0x33, 0xd4, 0x79, 0xae, 0xad, 0x67, 0xd0, 0x18, 0x13, 0xfa, 0x0a, 0x76, 0x6c, 0xfb, 0xb8, 0xee, + 0x81, 0x11, 0x6d, 0x3d, 0x08, 0x6f, 0xb8, 0x49, 0xda, 0xe5, 0x87, 0x84, 0x1e, 0x01, 0x14, 0x41, + 0xab, 0x4d, 0x37, 0x8a, 0xf1, 0x68, 0x9d, 0xb2, 0x0b, 0x8f, 0xdd, 0x5f, 0x2b, 0x9f, 0xdc, 0xad, + 0x7c, 0xf2, 0x67, 0xe5, 0x93, 0xef, 0x6b, 0xbf, 0x71, 0xb7, 0xf6, 0x1b, 0xbf, 0xd7, 0x7e, 0x23, + 0xea, 0xe0, 0x5f, 0xfa, 0xf4, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x31, 0x98, 0x8c, 0x90, 0xc3, + 0x03, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -387,10 +519,12 @@ const _ = grpc.SupportPackageIsVersion4 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type FileAPIClient interface { - // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs add) + // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs pin add) UploadFile(ctx context.Context, opts ...grpc.CallOption) (FileAPI_UploadFileClient, error) // DownloadFile allows downloading a UnixFS object (equivalent to ipfs get) DownloadFile(ctx context.Context, in *DownloadRequest, opts ...grpc.CallOption) (FileAPI_DownloadFileClient, error) + // RemoveFile allows removing a UnixFS object or decrease it's reference counter (equivalent to ipfs pin rm) + RemoveFile(ctx context.Context, in *RemoveRequest, opts ...grpc.CallOption) (*RemoveResponse, error) } type fileAPIClient struct { @@ -467,12 +601,23 @@ func (x *fileAPIDownloadFileClient) Recv() (*DownloadResponse, error) { return m, nil } +func (c *fileAPIClient) RemoveFile(ctx context.Context, in *RemoveRequest, opts ...grpc.CallOption) (*RemoveResponse, error) { + out := new(RemoveResponse) + err := c.cc.Invoke(ctx, "/pb.FileAPI/RemoveFile", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // FileAPIServer is the server API for FileAPI service. type FileAPIServer interface { - // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs add) + // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs pin add) UploadFile(FileAPI_UploadFileServer) error // DownloadFile allows downloading a UnixFS object (equivalent to ipfs get) DownloadFile(*DownloadRequest, FileAPI_DownloadFileServer) error + // RemoveFile allows removing a UnixFS object or decrease it's reference counter (equivalent to ipfs pin rm) + RemoveFile(context.Context, *RemoveRequest) (*RemoveResponse, error) } // UnimplementedFileAPIServer can be embedded to have forward compatible implementations. @@ -485,6 +630,9 @@ func (*UnimplementedFileAPIServer) UploadFile(srv FileAPI_UploadFileServer) erro func (*UnimplementedFileAPIServer) DownloadFile(req *DownloadRequest, srv FileAPI_DownloadFileServer) error { return status.Errorf(codes.Unimplemented, "method DownloadFile not implemented") } +func (*UnimplementedFileAPIServer) RemoveFile(ctx context.Context, req *RemoveRequest) (*RemoveResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method RemoveFile not implemented") +} func RegisterFileAPIServer(s *grpc.Server, srv FileAPIServer) { s.RegisterService(&_FileAPI_serviceDesc, srv) @@ -537,10 +685,33 @@ func (x *fileAPIDownloadFileServer) Send(m *DownloadResponse) error { return x.ServerStream.SendMsg(m) } +func _FileAPI_RemoveFile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(RemoveRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FileAPIServer).RemoveFile(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.FileAPI/RemoveFile", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FileAPIServer).RemoveFile(ctx, req.(*RemoveRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _FileAPI_serviceDesc = grpc.ServiceDesc{ ServiceName: "pb.FileAPI", HandlerType: (*FileAPIServer)(nil), - Methods: []grpc.MethodDesc{}, + Methods: []grpc.MethodDesc{ + { + MethodName: "RemoveFile", + Handler: _FileAPI_RemoveFile_Handler, + }, + }, Streams: []grpc.StreamDesc{ { StreamName: "UploadFile", @@ -623,6 +794,33 @@ func (m *UploadOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Replace { + i-- + if m.Replace { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x30 + } + if m.Progressive { + i-- + if m.Progressive { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x28 + } + if len(m.RefID) > 0 { + i -= len(m.RefID) + copy(dAtA[i:], m.RefID) + i = encodeVarintFile(dAtA, i, uint64(len(m.RefID))) + i-- + dAtA[i] = 0x22 + } if len(m.Chunker) > 0 { i -= len(m.Chunker) copy(dAtA[i:], m.Chunker) @@ -767,6 +965,76 @@ func (m *Blob) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *RemoveRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RemoveRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RemoveRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.RefIDs) > 0 { + for k := range m.RefIDs { + v := m.RefIDs[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintFile(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintFile(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintFile(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *RemoveResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RemoveResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RemoveResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Count != 0 { + i = encodeVarintFile(dAtA, i, uint64(m.Count)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + func encodeVarintFile(dAtA []byte, offset int, v uint64) int { offset -= sovFile(v) base := offset @@ -813,6 +1081,16 @@ func (m *UploadOptions) Size() (n int) { if l > 0 { n += 1 + l + sovFile(uint64(l)) } + l = len(m.RefID) + if l > 0 { + n += 1 + l + sovFile(uint64(l)) + } + if m.Progressive { + n += 2 + } + if m.Replace { + n += 2 + } return n } @@ -870,6 +1148,35 @@ func (m *Blob) Size() (n int) { return n } +func (m *RemoveRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RefIDs) > 0 { + for k, v := range m.RefIDs { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovFile(uint64(len(k))) + 1 + len(v) + sovFile(uint64(len(v))) + n += mapEntrySize + 1 + sovFile(uint64(mapEntrySize)) + } + } + return n +} + +func (m *RemoveResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Count != 0 { + n += 1 + sovFile(uint64(m.Count)) + } + return n +} + func sovFile(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -1126,6 +1433,78 @@ func (m *UploadOptions) Unmarshal(dAtA []byte) error { } m.Chunker = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthFile + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthFile + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RefID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Progressive", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Progressive = bool(v != 0) + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Replace", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Replace = bool(v != 0) default: iNdEx = preIndex skippy, err := skipFile(dAtA[iNdEx:]) @@ -1506,6 +1885,258 @@ func (m *Blob) Unmarshal(dAtA []byte) error { } return nil } +func (m *RemoveRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RemoveRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RemoveRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefIDs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthFile + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthFile + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RefIDs == nil { + m.RefIDs = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthFile + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthFile + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthFile + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthFile + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipFile(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthFile + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.RefIDs[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipFile(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthFile + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthFile + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RemoveResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RemoveResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RemoveResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Count", wireType) + } + m.Count = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowFile + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Count |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipFile(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthFile + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthFile + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func skipFile(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/go/namesys.pb.go b/go/namesys.pb.go index 1c4cf3e..5931b93 100644 --- a/go/namesys.pb.go +++ b/go/namesys.pb.go @@ -6,14 +6,13 @@ package pb import ( context "context" fmt "fmt" - io "io" - math "math" - math_bits "math/bits" - proto "github.com/gogo/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" ) // Reference imports to suppress errors if they are not otherwise used. diff --git a/go/node.pb.go b/go/node.pb.go index 0400470..38d4977 100644 --- a/go/node.pb.go +++ b/go/node.pb.go @@ -6,14 +6,13 @@ package pb import ( context "context" fmt "fmt" - io "io" - math "math" - math_bits "math/bits" - proto "github.com/gogo/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" ) // Reference imports to suppress errors if they are not otherwise used. @@ -269,6 +268,8 @@ const ( DAGREQTYPE_DAG_GET_LINKS DAGREQTYPE = 4 // DAG_STAT is used to retrieve ipld.NodeStats information DAGREQTYPE_DAG_STAT DAGREQTYPE = 5 + // DAG_REMOVE is the inverse of DAG_PUT + DAGREQTYPE_DAG_REMOVE DAGREQTYPE = 6 ) var DAGREQTYPE_name = map[int32]string{ @@ -278,6 +279,7 @@ var DAGREQTYPE_name = map[int32]string{ 3: "DAG_ADD_LINKS", 4: "DAG_GET_LINKS", 5: "DAG_STAT", + 6: "DAG_REMOVE", } var DAGREQTYPE_value = map[string]int32{ @@ -287,6 +289,7 @@ var DAGREQTYPE_value = map[string]int32{ "DAG_ADD_LINKS": 3, "DAG_GET_LINKS": 4, "DAG_STAT": 5, + "DAG_REMOVE": 6, } func (x DAGREQTYPE) String() string { @@ -908,6 +911,15 @@ type BlockstoreRequest struct { // the hash function to use when constructing blocks, default is sha2-256 // sent by: BS_PUT, BS_PUT_MANY HashFunc string `protobuf:"bytes,7,opt,name=hashFunc,proto3" json:"hashFunc,omitempty"` + // reference ID to mark the blocks of this operation with + // when sent by BS_PUT, BS_PUT_MANY: only put if the id is not marked on block, otherwise noop + // when sent by BS_GET, BS_GET_MANY: only get if the id is marked on block + // when sent by BS_DELETE: only delete if the id is marked on block + RefID string `protobuf:"bytes,8,opt,name=refID,proto3" json:"refID,omitempty"` + // if refID is set, allows progressive upload + Progressive bool `protobuf:"varint,9,opt,name=progressive,proto3" json:"progressive,omitempty"` + // if refID is set, remove the any existing blocks with same refID + Replace bool `protobuf:"varint,10,opt,name=replace,proto3" json:"replace,omitempty"` } func (m *BlockstoreRequest) Reset() { *m = BlockstoreRequest{} } @@ -985,7 +997,28 @@ func (m *BlockstoreRequest) GetHashFunc() string { return "" } -// BlockstoreResponse is a response to a BlockstoreqRequest +func (m *BlockstoreRequest) GetRefID() string { + if m != nil { + return m.RefID + } + return "" +} + +func (m *BlockstoreRequest) GetProgressive() bool { + if m != nil { + return m.Progressive + } + return false +} + +func (m *BlockstoreRequest) GetReplace() bool { + if m != nil { + return m.Replace + } + return false +} + +// BlockstoreResponse is a response to a BlockstoreRequest type BlockstoreResponse struct { // indicates the particular request type being made RequestType BSREQTYPE `protobuf:"varint,1,opt,name=requestType,proto3,enum=pb.BSREQTYPE" json:"requestType,omitempty"` @@ -1054,7 +1087,7 @@ type Block struct { // data is the actual contents of the block Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` // size of the block, only filled out by BS_GET_STATS - // since if we just want stats, we dont want to + // since if we just want stats, we don't want to // retrieve all the data. Size_ int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"` } @@ -1134,11 +1167,18 @@ type DagRequest struct { // sent by: DAG_PUT, DAG_NEW_NODE CidVersion int64 `protobuf:"varint,6,opt,name=cidVersion,proto3" json:"cidVersion,omitempty"` // the hash of the object we are processing - // sent by: DAG_GET, DAG_NEW_NODe, DAG_ADD_LINKS, DAG_GET_LINKS + // sent by: DAG_GET, DAG_NEW_NODe, DAG_ADD_LINKS, DAG_GET_LINKS, DAG_REMOVE Hash string `protobuf:"bytes,7,opt,name=hash,proto3" json:"hash,omitempty"` // indicates links and their names. key = name, value = link hash // sent by: DAG_NEW_NODE, DAG_ADD_LINKS Links map[string]string `protobuf:"bytes,8,rep,name=links,proto3" json:"links,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // optional reference ID to mark the cid/hash with + // sent by: DAG_PUT, DAG_REMOVE + RefID string `protobuf:"bytes,9,opt,name=refID,proto3" json:"refID,omitempty"` + // if refID is set, allows progressive upload + Progressive bool `protobuf:"varint,10,opt,name=progressive,proto3" json:"progressive,omitempty"` + // if refID is set, remove the any existing DAGs with same refID + Replace bool `protobuf:"varint,11,opt,name=replace,proto3" json:"replace,omitempty"` } func (m *DagRequest) Reset() { *m = DagRequest{} } @@ -1230,6 +1270,27 @@ func (m *DagRequest) GetLinks() map[string]string { return nil } +func (m *DagRequest) GetRefID() string { + if m != nil { + return m.RefID + } + return "" +} + +func (m *DagRequest) GetProgressive() bool { + if m != nil { + return m.Progressive + } + return false +} + +func (m *DagRequest) GetReplace() bool { + if m != nil { + return m.Replace + } + return false +} + // Used in response to a Dag or DagStream RPC type DagResponse struct { // indicates the request being performed @@ -1247,6 +1308,9 @@ type DagResponse struct { // maps ipld cids to a ipld.NodeStat object equivalent // sent by: DAG_STAT NodeStats map[string]*IPLDStat `protobuf:"bytes,5,rep,name=nodeStats,proto3" json:"nodeStats,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // The number of removal operations performed. + // sent by: DAG_REMOVE + Count uint64 `protobuf:"varint,6,opt,name=count,proto3" json:"count,omitempty"` } func (m *DagResponse) Reset() { *m = DagResponse{} } @@ -1317,6 +1381,13 @@ func (m *DagResponse) GetNodeStats() map[string]*IPLDStat { return nil } +func (m *DagResponse) GetCount() uint64 { + if m != nil { + return m.Count + } + return 0 +} + // IPLDStat is statistics about an individual dag node // it is a protocol buffer wrapper around ipld.NodeStat type IPLDStat struct { @@ -1664,6 +1735,10 @@ func (m *KeystoreResponse) GetHas() bool { type PersistRequest struct { // cids to persist locally Cids []string `protobuf:"bytes,1,rep,name=cids,proto3" json:"cids,omitempty"` + // optional reference ID to mark the cids with + RefID string `protobuf:"bytes,2,opt,name=refID,proto3" json:"refID,omitempty"` + // if refID is set, allows progressive upload + Progressive bool `protobuf:"varint,5,opt,name=progressive,proto3" json:"progressive,omitempty"` } func (m *PersistRequest) Reset() { *m = PersistRequest{} } @@ -1706,6 +1781,20 @@ func (m *PersistRequest) GetCids() []string { return nil } +func (m *PersistRequest) GetRefID() string { + if m != nil { + return m.RefID + } + return "" +} + +func (m *PersistRequest) GetProgressive() bool { + if m != nil { + return m.Progressive + } + return false +} + type PersistResponse struct { // key = cid, value = whether or not it was persisted Status map[string]bool `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` @@ -1800,117 +1889,122 @@ func init() { func init() { proto.RegisterFile("node.proto", fileDescriptor_0c843d59d2d938e7) } var fileDescriptor_0c843d59d2d938e7 = []byte{ - // 1747 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xcd, 0x92, 0xe3, 0x48, - 0x11, 0xb6, 0xe4, 0x9f, 0xb6, 0xd3, 0xfd, 0xa3, 0xa9, 0x19, 0x06, 0x63, 0x08, 0xd3, 0x88, 0x8d, - 0xa5, 0xa3, 0x83, 0xe8, 0x99, 0xf0, 0x2e, 0x31, 0xb3, 0xc4, 0x12, 0x84, 0x6c, 0xc9, 0xbd, 0xc6, - 0xbf, 0x48, 0xee, 0xdd, 0x99, 0x93, 0x43, 0x6d, 0x17, 0x3d, 0xa2, 0x65, 0xc9, 0x2b, 0xc9, 0xbd, - 0xf4, 0x1c, 0x79, 0x02, 0x78, 0x02, 0x2e, 0x1c, 0x78, 0x03, 0x0e, 0xbc, 0x00, 0xc7, 0xe5, 0xb6, - 0x47, 0x62, 0xe6, 0xc0, 0x89, 0x07, 0xe0, 0x46, 0x64, 0x55, 0x49, 0x96, 0xbc, 0xea, 0xe8, 0x99, - 0xbd, 0x55, 0x66, 0x65, 0x66, 0x7d, 0xf9, 0xab, 0x14, 0x80, 0xe7, 0x2f, 0xe9, 0xd9, 0x3a, 0xf0, - 0x23, 0x9f, 0xc8, 0xeb, 0xcb, 0x26, 0x6c, 0x22, 0xc7, 0xe5, 0xb4, 0xfa, 0x8d, 0x0c, 0x30, 0x6d, - 0x4f, 0x4d, 0xfa, 0xe5, 0x86, 0x86, 0x11, 0x79, 0x0a, 0xf5, 0x80, 0x1f, 0x67, 0xb7, 0x6b, 0xda, - 0x90, 0x8e, 0xa5, 0x93, 0xc3, 0xf6, 0xe1, 0xd9, 0xfa, 0xf2, 0x0c, 0x85, 0x8c, 0xdf, 0xce, 0x5e, - 0x4e, 0x0d, 0x33, 0x2d, 0x42, 0x14, 0x28, 0xda, 0xae, 0xdb, 0x90, 0x8f, 0xa5, 0x93, 0xaa, 0x89, - 0x47, 0xd2, 0x80, 0xbd, 0x1b, 0x1a, 0x5c, 0xfa, 0x21, 0x6d, 0x14, 0x19, 0x37, 0x26, 0x89, 0x0a, - 0xfb, 0xec, 0xd5, 0x85, 0xef, 0x8e, 0xed, 0x15, 0x6d, 0x94, 0x8e, 0xa5, 0x93, 0x9a, 0x99, 0xe1, - 0x91, 0x0f, 0xe0, 0xc0, 0x75, 0xc2, 0x88, 0x7a, 0xda, 0x72, 0x19, 0xd0, 0x30, 0x6c, 0x94, 0x99, - 0x50, 0x96, 0x89, 0x52, 0x91, 0x1d, 0x5c, 0xd1, 0x28, 0x96, 0xaa, 0x70, 0xa9, 0x0c, 0x13, 0xa5, - 0x02, 0xba, 0xf2, 0x23, 0x1a, 0x4b, 0xed, 0x71, 0xa9, 0x0c, 0x93, 0xb4, 0xe1, 0x91, 0xed, 0xba, - 0xfe, 0x57, 0xdd, 0x4d, 0x18, 0xf9, 0xab, 0xa9, 0x00, 0x13, 0x36, 0xaa, 0x0c, 0x7c, 0xee, 0x1d, - 0x7a, 0x12, 0xd0, 0xb5, 0x1f, 0x44, 0x53, 0x4a, 0x83, 0xbe, 0xde, 0xa8, 0x31, 0xd9, 0x0c, 0x4f, - 0xfd, 0x9b, 0x04, 0x75, 0x16, 0xda, 0x70, 0xed, 0x7b, 0x21, 0xfd, 0x0e, 0xb1, 0x7d, 0x04, 0x65, - 0xcf, 0x5e, 0xd1, 0xb0, 0x21, 0x1f, 0x17, 0x4f, 0x6a, 0x26, 0x27, 0xc8, 0x31, 0xd4, 0x17, 0xbe, - 0xe7, 0x85, 0x5d, 0xd7, 0x0f, 0xe9, 0x92, 0xc5, 0xb8, 0x6c, 0xa6, 0x59, 0xe4, 0x09, 0xd4, 0xc3, - 0x28, 0xa0, 0xf6, 0xaa, 0xef, 0xfd, 0xce, 0x0f, 0x1b, 0xa5, 0xe3, 0xe2, 0x49, 0xbd, 0x7d, 0x20, - 0x5e, 0x1a, 0x86, 0xc8, 0x35, 0xd3, 0x12, 0xea, 0x9f, 0x25, 0xa8, 0x25, 0x57, 0xdf, 0x4a, 0x93, - 0xf4, 0x2e, 0x69, 0x92, 0xdf, 0x29, 0x4d, 0xc5, 0xbc, 0x34, 0x3d, 0x82, 0xb2, 0xeb, 0x2f, 0x6c, - 0x97, 0xd5, 0x43, 0xd5, 0xe4, 0x84, 0xfa, 0x73, 0x50, 0xce, 0x29, 0x8b, 0x65, 0x98, 0x84, 0xb0, - 0x01, 0x7b, 0x6b, 0x16, 0xdc, 0xb0, 0x21, 0xb1, 0x90, 0xc4, 0xa4, 0xfa, 0x47, 0x09, 0x8e, 0xba, - 0xbe, 0xe7, 0x8d, 0xae, 0x56, 0x51, 0x5c, 0xcc, 0xbf, 0xc8, 0x0b, 0xf8, 0x43, 0x0c, 0x43, 0x77, - 0x32, 0x1e, 0x8f, 0xce, 0x47, 0xb3, 0xdc, 0xa8, 0xb7, 0x00, 0x56, 0x1b, 0x37, 0x72, 0x10, 0x5e, - 0x1c, 0xfa, 0x14, 0x27, 0x0d, 0xa2, 0x98, 0x05, 0xf1, 0x5f, 0x19, 0x94, 0x2d, 0x08, 0x81, 0xf9, - 0x3b, 0xa2, 0xd0, 0xa0, 0x86, 0x29, 0xa5, 0x8b, 0x88, 0x2e, 0x19, 0x88, 0x7a, 0xfb, 0xa7, 0x4c, - 0x69, 0xc7, 0x3e, 0x63, 0x30, 0x29, 0xc3, 0x8b, 0x82, 0x5b, 0x73, 0xab, 0x45, 0x9e, 0x43, 0x25, - 0x8c, 0xec, 0x68, 0xc3, 0x71, 0xd6, 0xdb, 0xc7, 0xb9, 0xfa, 0x16, 0x13, 0xe1, 0xca, 0x42, 0x3e, - 0xed, 0x62, 0x29, 0xe3, 0x62, 0xf3, 0x53, 0x38, 0xcc, 0x3e, 0x88, 0x03, 0xe0, 0x9a, 0xde, 0x8a, - 0x22, 0xc1, 0x23, 0xe6, 0xf3, 0xc6, 0x76, 0x37, 0x54, 0x0c, 0x05, 0x4e, 0xfc, 0x52, 0x7e, 0x2e, - 0x35, 0x47, 0x50, 0x4f, 0x3d, 0x97, 0xa3, 0x7a, 0x92, 0x56, 0xad, 0xb7, 0x49, 0x1a, 0x31, 0xd7, - 0x4c, 0x99, 0x53, 0x87, 0x1c, 0xcc, 0xf6, 0x12, 0x4b, 0x77, 0xe9, 0x84, 0xdb, 0xc0, 0x49, 0xbc, - 0x2f, 0xd3, 0x3c, 0xf2, 0x18, 0x2a, 0x01, 0xb5, 0x43, 0xdf, 0x13, 0x35, 0x2b, 0x28, 0xf5, 0x35, - 0x1c, 0x18, 0x7f, 0x88, 0x02, 0x3b, 0x8c, 0xeb, 0xe7, 0xa3, 0xbc, 0xcc, 0x3d, 0x40, 0x48, 0xc6, - 0x8b, 0x99, 0xa9, 0x59, 0xb9, 0x79, 0xfb, 0x18, 0x0e, 0x28, 0xb3, 0xd2, 0xa3, 0x76, 0xb4, 0x09, - 0xb8, 0x27, 0xa2, 0xcf, 0xb9, 0x1a, 0xd3, 0xc9, 0x0a, 0xa9, 0xff, 0x92, 0xe0, 0x41, 0xc7, 0xf5, - 0x17, 0xd7, 0x61, 0xe4, 0x07, 0x34, 0x06, 0xf0, 0x24, 0x0f, 0x00, 0xeb, 0xe3, 0x4e, 0xfe, 0xe3, - 0x3f, 0x83, 0xbd, 0x80, 0x7e, 0x39, 0x59, 0x47, 0xbc, 0x6e, 0xd3, 0xc2, 0x93, 0xe9, 0xcc, 0x32, - 0xe3, 0x5b, 0x42, 0xa0, 0xb4, 0x70, 0x96, 0x71, 0x01, 0xb3, 0x33, 0xf2, 0x96, 0x76, 0x64, 0xb3, - 0x8c, 0xef, 0x9b, 0xec, 0x8c, 0xbd, 0xb0, 0x70, 0x96, 0x9f, 0xd3, 0x20, 0x74, 0x7c, 0x4f, 0x8c, - 0xe2, 0x14, 0x87, 0x34, 0xa1, 0xfa, 0xca, 0x0e, 0x5f, 0xf5, 0x36, 0xde, 0x42, 0x0c, 0xd7, 0x84, - 0x56, 0x5f, 0x01, 0x49, 0xbb, 0x24, 0xda, 0xe1, 0xbd, 0x7d, 0xfa, 0x09, 0x54, 0x2e, 0x99, 0x19, - 0xd1, 0x05, 0x35, 0x26, 0x8b, 0x1c, 0x53, 0x5c, 0xa8, 0x1a, 0x94, 0x19, 0x03, 0x0b, 0x6a, 0xe1, - 0x2c, 0xe3, 0x82, 0x5a, 0x38, 0xcb, 0xc4, 0x29, 0xcc, 0x42, 0xec, 0x14, 0x81, 0x52, 0xe8, 0xbc, - 0xe6, 0x5f, 0xa7, 0xa2, 0xc9, 0xce, 0xea, 0x7f, 0x64, 0x00, 0xdd, 0xbe, 0xba, 0xff, 0x3b, 0xa8, - 0x6b, 0xe7, 0xb9, 0x30, 0xf3, 0x1e, 0xfa, 0x10, 0x0e, 0xfd, 0xcb, 0xdf, 0xd3, 0x45, 0x64, 0x78, - 0x0b, 0x7f, 0xe9, 0x78, 0x57, 0x62, 0xfe, 0xed, 0x70, 0xc9, 0x53, 0x78, 0x18, 0xd2, 0xc0, 0xb1, - 0x5d, 0xe7, 0xb5, 0x1d, 0x39, 0xbe, 0xd7, 0xf3, 0x83, 0x95, 0x1d, 0x89, 0xcf, 0x63, 0xde, 0x55, - 0x26, 0xee, 0xe5, 0x6c, 0xdc, 0x77, 0x72, 0x56, 0x61, 0x4e, 0xa6, 0x73, 0x46, 0xa0, 0x84, 0xb2, - 0x22, 0x5f, 0xec, 0x4c, 0x9e, 0x40, 0xd9, 0x75, 0xbc, 0x6b, 0xfc, 0xe8, 0x61, 0x8c, 0x7f, 0xc0, - 0x3c, 0x4d, 0xc2, 0x71, 0x36, 0xc4, 0x3b, 0x3e, 0x22, 0xb8, 0x5c, 0xf3, 0x39, 0xc0, 0x96, 0x79, - 0xdf, 0x0c, 0xa8, 0xa5, 0x9b, 0xf6, 0x2f, 0x32, 0xd4, 0x99, 0xe9, 0x7b, 0x3f, 0x8b, 0x77, 0x85, - 0xfa, 0x31, 0x54, 0x10, 0x74, 0xf2, 0x5d, 0x14, 0x14, 0x4e, 0xad, 0xc0, 0xfe, 0x4a, 0xc7, 0x2c, - 0x14, 0x59, 0x16, 0x62, 0x92, 0xa8, 0xb1, 0x7b, 0xfc, 0x53, 0xb8, 0x8f, 0xd6, 0xfb, 0xd3, 0xa1, - 0x8e, 0x2e, 0x08, 0x8f, 0xc8, 0xa7, 0x50, 0xc3, 0x3d, 0x09, 0x07, 0x09, 0x2e, 0x1d, 0x28, 0xd7, - 0x4a, 0xc2, 0x20, 0x66, 0xe5, 0x38, 0x16, 0x10, 0xb3, 0x36, 0x51, 0x68, 0xfe, 0x06, 0x0e, 0xb3, - 0x97, 0x39, 0x31, 0x51, 0xb3, 0xc3, 0x2d, 0x41, 0x81, 0x4a, 0xe9, 0x08, 0xfd, 0x55, 0x82, 0x6a, - 0xcc, 0xc7, 0x4c, 0x7b, 0x9b, 0x15, 0x8b, 0x35, 0xb3, 0x55, 0x34, 0x13, 0x9a, 0xfc, 0x08, 0x6a, - 0xac, 0x03, 0x2c, 0xac, 0x66, 0x99, 0x5d, 0x6e, 0x19, 0xa8, 0x89, 0x9e, 0x59, 0xdb, 0x52, 0x4f, - 0x68, 0xac, 0xcc, 0xc5, 0x66, 0xb5, 0x71, 0xed, 0xc8, 0xb9, 0xa1, 0x4c, 0xa2, 0xc4, 0x24, 0x76, - 0xb8, 0x68, 0x03, 0x2b, 0x99, 0x49, 0x94, 0xb9, 0x8d, 0x98, 0x56, 0x7b, 0x1c, 0x25, 0x42, 0x49, - 0x6a, 0x4a, 0xe2, 0xd5, 0xcf, 0x6a, 0x8a, 0x40, 0x09, 0x17, 0x16, 0x51, 0x01, 0xec, 0x9c, 0x69, - 0xbd, 0x92, 0x68, 0xbd, 0x0e, 0xb7, 0x83, 0xe1, 0xdb, 0x26, 0x4a, 0xbe, 0x3b, 0x51, 0x71, 0xa7, - 0x49, 0xdb, 0x4e, 0x53, 0x6f, 0xe0, 0x68, 0x40, 0x6f, 0xdf, 0x71, 0x78, 0x0e, 0xac, 0xbb, 0x3a, - 0xf8, 0x5b, 0x78, 0x5b, 0x00, 0xeb, 0xc0, 0xb9, 0xb1, 0x23, 0x3a, 0xa0, 0xb7, 0xa2, 0xaa, 0x52, - 0x1c, 0x5c, 0x9c, 0x94, 0xed, 0xc3, 0xf7, 0x8e, 0xb8, 0x3b, 0x5e, 0xce, 0xbe, 0x22, 0xef, 0xbe, - 0x82, 0x59, 0xb8, 0xa6, 0xb7, 0x63, 0xb6, 0x0a, 0xf2, 0x89, 0x9d, 0xd0, 0x58, 0x66, 0xaf, 0xec, - 0x50, 0xac, 0x4e, 0x78, 0x54, 0x3f, 0x80, 0xc3, 0x29, 0xb6, 0x7a, 0x98, 0x2c, 0x42, 0xf1, 0xb4, - 0x97, 0xb6, 0xd3, 0x5e, 0xfd, 0x9f, 0x04, 0x47, 0x89, 0x98, 0x00, 0xfe, 0x2c, 0x59, 0x18, 0x24, - 0x16, 0xfe, 0x1f, 0xb3, 0x95, 0x31, 0x2b, 0x94, 0xbb, 0x2f, 0x3c, 0x83, 0x0a, 0x0d, 0x02, 0x3f, - 0x88, 0xf3, 0x96, 0xab, 0x68, 0x30, 0x09, 0xa1, 0xc8, 0xc5, 0x9b, 0x9f, 0xdc, 0xb7, 0x10, 0xdc, - 0xbd, 0x4b, 0x7c, 0x02, 0xf5, 0x94, 0xc5, 0xf7, 0x19, 0x41, 0xa7, 0xcf, 0xf9, 0x3f, 0x0f, 0x4f, - 0x05, 0xa9, 0x41, 0xb9, 0x3b, 0x9c, 0x58, 0x86, 0x52, 0x20, 0x75, 0xd8, 0xeb, 0x4d, 0xcc, 0x2f, - 0x34, 0x53, 0x57, 0x24, 0x02, 0x50, 0x19, 0xf6, 0xad, 0x99, 0x31, 0x56, 0x64, 0x52, 0x01, 0x79, - 0x68, 0x29, 0xc5, 0xd3, 0x0b, 0x38, 0xda, 0xd9, 0xda, 0xc8, 0x21, 0x40, 0x77, 0x34, 0x47, 0xae, - 0xd1, 0x9d, 0x29, 0x05, 0xf2, 0x00, 0x0e, 0xba, 0xa3, 0xb9, 0xde, 0xb7, 0x62, 0x96, 0x44, 0x0e, - 0xa0, 0xd6, 0x1d, 0xcd, 0xad, 0x99, 0x36, 0xbb, 0xb0, 0x14, 0x99, 0x28, 0xb0, 0xdf, 0x1d, 0xcd, - 0xcf, 0x8d, 0xd9, 0x7c, 0x6a, 0x18, 0x26, 0x9a, 0x3d, 0x83, 0x83, 0xcc, 0x4a, 0x81, 0x1a, 0xc6, - 0x8b, 0xb9, 0x31, 0xd6, 0x3a, 0x43, 0xc4, 0x75, 0x08, 0x60, 0xbc, 0x40, 0x9b, 0x8c, 0x96, 0x4e, - 0x7f, 0x8d, 0x74, 0xbc, 0x4b, 0x90, 0x7d, 0xa8, 0xf6, 0x75, 0x63, 0x3c, 0xeb, 0xf7, 0x5e, 0x2a, - 0x05, 0x84, 0x3d, 0xbd, 0xe8, 0x58, 0x17, 0x1d, 0xfe, 0x30, 0x03, 0xf2, 0xb9, 0x61, 0xbe, 0x54, - 0x64, 0x52, 0x85, 0xd2, 0x48, 0x1f, 0xe3, 0x83, 0xff, 0x90, 0xa0, 0xd6, 0x49, 0xbf, 0xd6, 0xb1, - 0xe6, 0xba, 0x31, 0x34, 0x66, 0x06, 0xb7, 0xd0, 0xb1, 0xe6, 0xd3, 0x0b, 0x84, 0x7e, 0x04, 0x75, - 0x7e, 0x9e, 0x8f, 0xb4, 0x31, 0xda, 0xe0, 0x97, 0xe7, 0xc6, 0x4c, 0x29, 0x8a, 0x4b, 0x74, 0x84, - 0x5d, 0x96, 0x10, 0xa7, 0x60, 0x68, 0xc3, 0xa1, 0x52, 0x46, 0x4f, 0x05, 0x8d, 0xce, 0x5b, 0x4a, - 0x45, 0xa8, 0x7f, 0xa6, 0x59, 0xca, 0x1e, 0x69, 0xc2, 0x63, 0x7e, 0xfe, 0x6c, 0x3e, 0x19, 0xcf, - 0x4d, 0x43, 0xd3, 0x63, 0x8f, 0xab, 0xe4, 0x87, 0xf0, 0xfd, 0xdd, 0xbb, 0xd8, 0xfd, 0xda, 0xe9, - 0x87, 0x02, 0x3c, 0xee, 0x34, 0x98, 0x33, 0xdd, 0xe8, 0x69, 0x17, 0x43, 0x0c, 0xfe, 0x3e, 0x54, - 0x3b, 0xd6, 0xbc, 0x37, 0x31, 0xbb, 0x18, 0x26, 0x17, 0x60, 0xfb, 0x0d, 0x61, 0x82, 0xda, 0x39, - 0xf3, 0xab, 0x10, 0x13, 0xe8, 0x87, 0x84, 0x30, 0x91, 0x18, 0x1b, 0x5f, 0xcc, 0xc7, 0x13, 0xdd, - 0x50, 0x64, 0x4c, 0x22, 0x72, 0x34, 0x5d, 0x9f, 0x0f, 0xfb, 0xe3, 0x81, 0xa5, 0x14, 0x63, 0x16, - 0x3a, 0xc3, 0x59, 0x25, 0x7c, 0x0d, 0x59, 0xe8, 0x9b, 0x52, 0x3e, 0x1d, 0x40, 0x2d, 0xe9, 0x6f, - 0xf4, 0x73, 0xc0, 0xfd, 0x2c, 0x88, 0x33, 0x7f, 0x8a, 0x9f, 0x11, 0x83, 0x8c, 0x61, 0x1f, 0x24, - 0x61, 0x2f, 0x22, 0xa4, 0x81, 0x35, 0xc7, 0x92, 0x53, 0x4a, 0xed, 0xbf, 0x17, 0x61, 0x0f, 0x27, - 0xa2, 0x36, 0xed, 0x93, 0x67, 0x50, 0x8d, 0xd7, 0x5c, 0xf2, 0x30, 0xbb, 0xc3, 0xb3, 0xfe, 0x6e, - 0x3e, 0xca, 0x5b, 0xec, 0xd5, 0x02, 0x39, 0x81, 0x0a, 0xdf, 0x68, 0x09, 0xdf, 0x5a, 0xd3, 0xdb, - 0x6d, 0x93, 0xed, 0x51, 0xc6, 0x6a, 0x1d, 0xdd, 0x32, 0xc9, 0xe2, 0xb4, 0x3d, 0x25, 0xc9, 0xdf, - 0xa8, 0x90, 0x39, 0x4a, 0xe8, 0xc4, 0xe6, 0xaf, 0x00, 0xb6, 0x5b, 0x1d, 0xf9, 0x5e, 0xb2, 0x8c, - 0xa5, 0x67, 0x6f, 0xf3, 0xf1, 0x2e, 0x3b, 0x51, 0x3f, 0x07, 0x65, 0xcb, 0xb7, 0xd8, 0x2f, 0xe8, - 0x7b, 0x1b, 0x39, 0x91, 0x9e, 0x4a, 0x88, 0x58, 0xb7, 0xaf, 0x38, 0xe2, 0xed, 0xa6, 0xc2, 0x11, - 0xa7, 0x3e, 0xd9, 0x6a, 0x01, 0xc3, 0x17, 0x8f, 0x68, 0x1e, 0xbe, 0x9d, 0x2f, 0x05, 0x0f, 0xdf, - 0xee, 0x14, 0x57, 0x0b, 0xe4, 0x63, 0xd8, 0x13, 0x33, 0x8c, 0x90, 0xcc, 0x40, 0xe3, 0x6a, 0x0f, - 0x73, 0x86, 0x9c, 0x5a, 0xe8, 0x34, 0xfe, 0xf9, 0xa6, 0x25, 0x7d, 0xfd, 0xa6, 0x25, 0xfd, 0xfb, - 0x4d, 0x4b, 0xfa, 0xd3, 0xdb, 0x56, 0xe1, 0xeb, 0xb7, 0xad, 0xc2, 0x37, 0x6f, 0x5b, 0x85, 0xcb, - 0x0a, 0xfb, 0x83, 0xfe, 0xe8, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x4d, 0x83, 0x57, 0x74, 0x90, - 0x11, 0x00, 0x00, + // 1833 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x58, 0x5f, 0x8f, 0xdb, 0x58, + 0x15, 0x8f, 0x9d, 0x3f, 0x93, 0x9c, 0xcc, 0x1f, 0xf7, 0xb6, 0x94, 0x10, 0x50, 0x18, 0x0c, 0x5a, + 0x46, 0x23, 0x34, 0xad, 0xb2, 0x8b, 0xda, 0x45, 0x8b, 0x90, 0x13, 0x7b, 0x66, 0x43, 0xfe, 0x62, + 0x67, 0xba, 0xad, 0x84, 0x14, 0x79, 0x92, 0xbb, 0x53, 0x53, 0xc7, 0xce, 0xda, 0xce, 0x2c, 0x53, + 0xf1, 0xc4, 0x27, 0x80, 0xcf, 0x00, 0x0f, 0x7c, 0x01, 0x84, 0x10, 0x5f, 0x80, 0xc7, 0x7d, 0xdc, + 0x47, 0xd4, 0x3e, 0xf3, 0x01, 0x78, 0x43, 0xe7, 0xde, 0x6b, 0xc7, 0x4e, 0x3d, 0x9d, 0xb6, 0x6f, + 0xf7, 0x9c, 0x7b, 0xce, 0xbd, 0xbf, 0xf3, 0xf7, 0x1e, 0x1b, 0xc0, 0xf3, 0x17, 0xf4, 0x64, 0x15, + 0xf8, 0x91, 0x4f, 0xe4, 0xd5, 0x45, 0x13, 0xd6, 0x91, 0xe3, 0x72, 0x5a, 0xfd, 0x56, 0x06, 0x98, + 0xb4, 0x27, 0x26, 0xfd, 0x6a, 0x4d, 0xc3, 0x88, 0x3c, 0x84, 0x7a, 0xc0, 0x97, 0xd3, 0xeb, 0x15, + 0x6d, 0x48, 0x87, 0xd2, 0xd1, 0x7e, 0x7b, 0xff, 0x64, 0x75, 0x71, 0x82, 0x42, 0xc6, 0x6f, 0xa6, + 0xcf, 0x26, 0x86, 0x99, 0x16, 0x21, 0x0a, 0x14, 0x6d, 0xd7, 0x6d, 0xc8, 0x87, 0xd2, 0x51, 0xd5, + 0xc4, 0x25, 0x69, 0xc0, 0xce, 0x15, 0x0d, 0x2e, 0xfc, 0x90, 0x36, 0x8a, 0x8c, 0x1b, 0x93, 0x44, + 0x85, 0x5d, 0x76, 0xeb, 0xdc, 0x77, 0x47, 0xf6, 0x92, 0x36, 0x4a, 0x87, 0xd2, 0x51, 0xcd, 0xcc, + 0xf0, 0xc8, 0x4f, 0x60, 0xcf, 0x75, 0xc2, 0x88, 0x7a, 0xda, 0x62, 0x11, 0xd0, 0x30, 0x6c, 0x94, + 0x99, 0x50, 0x96, 0x89, 0x52, 0x91, 0x1d, 0x5c, 0xd2, 0x28, 0x96, 0xaa, 0x70, 0xa9, 0x0c, 0x13, + 0xa5, 0x02, 0xba, 0xf4, 0x23, 0x1a, 0x4b, 0xed, 0x70, 0xa9, 0x0c, 0x93, 0xb4, 0xe1, 0x9e, 0xed, + 0xba, 0xfe, 0xd7, 0xdd, 0x75, 0x18, 0xf9, 0xcb, 0x89, 0x00, 0x13, 0x36, 0xaa, 0x0c, 0x7c, 0xee, + 0x1e, 0x5a, 0x12, 0xd0, 0x95, 0x1f, 0x44, 0x13, 0x4a, 0x83, 0x9e, 0xde, 0xa8, 0x31, 0xd9, 0x0c, + 0x4f, 0xfd, 0x9b, 0x04, 0x75, 0xe6, 0xda, 0x70, 0xe5, 0x7b, 0x21, 0xfd, 0x00, 0xdf, 0xde, 0x83, + 0xb2, 0x67, 0x2f, 0x69, 0xd8, 0x90, 0x0f, 0x8b, 0x47, 0x35, 0x93, 0x13, 0xe4, 0x10, 0xea, 0x73, + 0xdf, 0xf3, 0xc2, 0xae, 0xeb, 0x87, 0x74, 0xc1, 0x7c, 0x5c, 0x36, 0xd3, 0x2c, 0xf2, 0x00, 0xea, + 0x61, 0x14, 0x50, 0x7b, 0xd9, 0xf3, 0xbe, 0xf4, 0xc3, 0x46, 0xe9, 0xb0, 0x78, 0x54, 0x6f, 0xef, + 0x89, 0x9b, 0x06, 0x21, 0x72, 0xcd, 0xb4, 0x84, 0xfa, 0x67, 0x09, 0x6a, 0xc9, 0xd6, 0x1b, 0x61, + 0x92, 0xde, 0x25, 0x4c, 0xf2, 0x3b, 0x85, 0xa9, 0x98, 0x17, 0xa6, 0x7b, 0x50, 0x76, 0xfd, 0xb9, + 0xed, 0xb2, 0x7c, 0xa8, 0x9a, 0x9c, 0x50, 0x7f, 0x06, 0xca, 0x19, 0x65, 0xbe, 0x0c, 0x13, 0x17, + 0x36, 0x60, 0x67, 0xc5, 0x9c, 0x1b, 0x36, 0x24, 0xe6, 0x92, 0x98, 0x54, 0xff, 0x28, 0xc1, 0x41, + 0xd7, 0xf7, 0xbc, 0xe1, 0xe5, 0x32, 0x8a, 0x93, 0xf9, 0xe7, 0x79, 0x0e, 0xbf, 0x8b, 0x6e, 0xe8, + 0x8e, 0x47, 0xa3, 0xe1, 0xd9, 0x70, 0x9a, 0xeb, 0xf5, 0x16, 0xc0, 0x72, 0xed, 0x46, 0x0e, 0xc2, + 0x8b, 0x5d, 0x9f, 0xe2, 0xa4, 0x41, 0x14, 0xb3, 0x20, 0xfe, 0x2b, 0x83, 0xb2, 0x01, 0x21, 0x30, + 0x7f, 0x20, 0x0a, 0x0d, 0x6a, 0x18, 0x52, 0x3a, 0x8f, 0xe8, 0x82, 0x81, 0xa8, 0xb7, 0x7f, 0xcc, + 0x94, 0xb6, 0xce, 0x67, 0x0c, 0x26, 0x65, 0x78, 0x51, 0x70, 0x6d, 0x6e, 0xb4, 0xc8, 0x63, 0xa8, + 0x84, 0x91, 0x1d, 0xad, 0x39, 0xce, 0x7a, 0xfb, 0x30, 0x57, 0xdf, 0x62, 0x22, 0x5c, 0x59, 0xc8, + 0xa7, 0x4d, 0x2c, 0x65, 0x4c, 0x6c, 0x7e, 0x06, 0xfb, 0xd9, 0x0b, 0xb1, 0x01, 0xbc, 0xa0, 0xd7, + 0x22, 0x49, 0x70, 0x89, 0xf1, 0xbc, 0xb2, 0xdd, 0x35, 0x15, 0x4d, 0x81, 0x13, 0xbf, 0x90, 0x1f, + 0x4b, 0xcd, 0x21, 0xd4, 0x53, 0xd7, 0xe5, 0xa8, 0x1e, 0xa5, 0x55, 0xeb, 0x6d, 0x92, 0x46, 0xcc, + 0x35, 0x53, 0xc7, 0xa9, 0x03, 0x0e, 0x66, 0xb3, 0x89, 0xa9, 0xbb, 0x70, 0xc2, 0x8d, 0xe3, 0x24, + 0x5e, 0x97, 0x69, 0x1e, 0xb9, 0x0f, 0x95, 0x80, 0xda, 0xa1, 0xef, 0x89, 0x9c, 0x15, 0x94, 0xfa, + 0x12, 0xf6, 0x8c, 0xdf, 0x47, 0x81, 0x1d, 0xc6, 0xf9, 0xf3, 0x71, 0x5e, 0xe4, 0xee, 0x20, 0x24, + 0xe3, 0xe9, 0xd4, 0xd4, 0xac, 0xdc, 0xb8, 0x7d, 0x02, 0x7b, 0x94, 0x9d, 0x72, 0x4a, 0xed, 0x68, + 0x1d, 0x70, 0x4b, 0x44, 0x9d, 0x73, 0x35, 0xa6, 0x93, 0x15, 0x52, 0xff, 0x22, 0xc3, 0x9d, 0x8e, + 0xeb, 0xcf, 0x5f, 0x84, 0x91, 0x1f, 0xd0, 0x18, 0xc0, 0x83, 0x3c, 0x00, 0xac, 0x8e, 0x3b, 0xf9, + 0x97, 0xff, 0x14, 0x76, 0x02, 0xfa, 0xd5, 0x78, 0x15, 0xf1, 0xbc, 0x4d, 0x0b, 0x8f, 0x27, 0x53, + 0xcb, 0x8c, 0x77, 0x09, 0x81, 0xd2, 0xdc, 0x59, 0xc4, 0x09, 0xcc, 0xd6, 0xc8, 0x5b, 0xd8, 0x91, + 0xcd, 0x22, 0xbe, 0x6b, 0xb2, 0x35, 0xd6, 0xc2, 0xdc, 0x59, 0x3c, 0xa1, 0x41, 0xe8, 0xf8, 0x9e, + 0x68, 0xc5, 0x29, 0x0e, 0x69, 0x42, 0xf5, 0xb9, 0x1d, 0x3e, 0x3f, 0x5d, 0x7b, 0x73, 0xd1, 0x5c, + 0x13, 0x1a, 0xd3, 0x20, 0xa0, 0x5f, 0xf6, 0x74, 0xd6, 0x48, 0x6b, 0x26, 0x27, 0xb0, 0x7b, 0xad, + 0x02, 0xff, 0x12, 0x0b, 0xdf, 0xb9, 0xa2, 0xa2, 0x71, 0xa6, 0x59, 0x98, 0x7c, 0x01, 0x5d, 0xb9, + 0xf6, 0x9c, 0x36, 0x80, 0xbf, 0x1f, 0x82, 0x54, 0x9f, 0x03, 0x49, 0x3b, 0x49, 0x14, 0xd8, 0x7b, + 0x7b, 0xe9, 0x47, 0x50, 0xb9, 0x60, 0xc7, 0x88, 0xba, 0xaa, 0x31, 0x59, 0xe4, 0x98, 0x62, 0x43, + 0xd5, 0xa0, 0xcc, 0x18, 0x98, 0xa2, 0x73, 0x67, 0x11, 0xa7, 0xe8, 0xdc, 0x59, 0x24, 0x6e, 0xc2, + 0xb8, 0xc6, 0x6e, 0x22, 0x50, 0x0a, 0x9d, 0x97, 0xfc, 0xbd, 0x2b, 0x9a, 0x6c, 0xad, 0xfe, 0xb3, + 0x08, 0xa0, 0xdb, 0x97, 0xb7, 0xbf, 0xac, 0xba, 0x76, 0x96, 0x0b, 0x33, 0xef, 0xa2, 0x8f, 0x60, + 0xdf, 0xbf, 0xf8, 0x1d, 0x9d, 0x47, 0x86, 0x37, 0xf7, 0x17, 0x8e, 0x77, 0x29, 0x3a, 0xea, 0x16, + 0x97, 0x3c, 0x84, 0xbb, 0x21, 0x0d, 0x1c, 0xdb, 0x75, 0x5e, 0xda, 0x91, 0xe3, 0x7b, 0xa7, 0x7e, + 0xb0, 0xb4, 0x23, 0xf1, 0xe0, 0xe6, 0x6d, 0x65, 0x22, 0x59, 0xde, 0x8a, 0x64, 0x36, 0x0b, 0x2a, + 0xcc, 0xc8, 0x74, 0x16, 0x10, 0x28, 0xa1, 0xac, 0xc8, 0x00, 0xb6, 0x26, 0x0f, 0xa0, 0xec, 0x3a, + 0xde, 0x0b, 0x7c, 0x46, 0xd1, 0xc7, 0xdf, 0x63, 0x96, 0x26, 0xee, 0x38, 0x19, 0xe0, 0x1e, 0x6f, + 0x3a, 0x5c, 0x6e, 0x93, 0x2e, 0xb5, 0xb7, 0xa4, 0x0b, 0xbc, 0x35, 0x5d, 0xea, 0x99, 0x74, 0x69, + 0x3e, 0x06, 0xd8, 0x5c, 0x73, 0x5b, 0x9f, 0xaa, 0xa5, 0x1b, 0xcb, 0xdf, 0x65, 0xa8, 0x33, 0xb0, + 0xb7, 0x3e, 0xdd, 0x37, 0x05, 0xef, 0x3e, 0x54, 0xd0, 0x0d, 0xc9, 0xdb, 0x2d, 0x28, 0x86, 0xd6, + 0xfe, 0x5a, 0xc7, 0xb8, 0x16, 0x59, 0x5c, 0x63, 0x92, 0xa8, 0xb1, 0xc3, 0xf8, 0x73, 0xbd, 0x8b, + 0xa7, 0xf7, 0x26, 0x03, 0x1d, 0x4d, 0x88, 0x7d, 0xf4, 0x19, 0xd4, 0x70, 0x96, 0xc3, 0x66, 0x87, + 0x83, 0x11, 0xca, 0xb5, 0x12, 0xc7, 0x8a, 0x7e, 0x3e, 0x8a, 0x05, 0xc4, 0x7b, 0x90, 0x28, 0xa0, + 0xbd, 0x73, 0x7f, 0xed, 0x45, 0x2c, 0x82, 0x25, 0x93, 0x13, 0xcd, 0x5f, 0xc3, 0x7e, 0x56, 0x25, + 0xc7, 0x53, 0x6a, 0xb6, 0x2d, 0x27, 0xd8, 0x50, 0x29, 0xed, 0xb7, 0xbf, 0x4a, 0x50, 0x8d, 0xf9, + 0x98, 0x51, 0xde, 0x7a, 0xc9, 0x22, 0xc0, 0xce, 0x2a, 0x9a, 0x09, 0x4d, 0x7e, 0x00, 0x35, 0x56, + 0x69, 0x16, 0x56, 0x8d, 0xcc, 0x36, 0x37, 0x0c, 0xd4, 0x44, 0x7b, 0xad, 0x4d, 0x49, 0x25, 0x34, + 0x56, 0xc0, 0x7c, 0xbd, 0x5c, 0xbb, 0x76, 0xe4, 0x5c, 0x51, 0x26, 0x51, 0x62, 0x12, 0x5b, 0x5c, + 0x3c, 0x03, 0x2b, 0x86, 0x49, 0x94, 0xf9, 0x19, 0x31, 0xad, 0x9e, 0x72, 0x94, 0x08, 0x25, 0xc9, + 0x5d, 0x89, 0x57, 0x19, 0xcb, 0x5d, 0x02, 0x25, 0x1c, 0xb5, 0x44, 0x5e, 0xb0, 0x75, 0xa6, 0xc4, + 0x4b, 0xa2, 0xc4, 0x3b, 0xfc, 0x1c, 0x74, 0xdf, 0x26, 0x7c, 0xf2, 0xcd, 0xe1, 0x8b, 0x2b, 0x5a, + 0xda, 0x54, 0xb4, 0x7a, 0x05, 0x07, 0x7d, 0x7a, 0xfd, 0x8e, 0x6d, 0xbf, 0x6f, 0xdd, 0xd4, 0x29, + 0xde, 0xc0, 0xdb, 0x02, 0x58, 0x05, 0xce, 0x95, 0x1d, 0xd1, 0x3e, 0xbd, 0x16, 0xb9, 0x96, 0xe2, + 0xe0, 0xc8, 0xa7, 0x6c, 0x2e, 0xbe, 0xb5, 0x95, 0xde, 0x70, 0x73, 0xf6, 0x16, 0x79, 0xfb, 0x16, + 0x8c, 0xc2, 0x0b, 0x7a, 0x3d, 0x62, 0x43, 0x2c, 0x7f, 0x6b, 0x12, 0x1a, 0xd3, 0xec, 0xb9, 0x1d, + 0x8a, 0xa1, 0x0f, 0x97, 0xea, 0x6f, 0x61, 0x7f, 0x82, 0x2d, 0x25, 0x4c, 0x46, 0xb8, 0xf8, 0x9d, + 0x92, 0x52, 0xef, 0x54, 0xd2, 0x28, 0xe4, 0xb7, 0x34, 0x8a, 0xf2, 0x1b, 0x8d, 0x42, 0xfd, 0x9f, + 0x04, 0x07, 0xc9, 0xf1, 0xc2, 0xe0, 0x47, 0xc9, 0x88, 0x24, 0xb1, 0xb0, 0xfd, 0x90, 0x0d, 0xc9, + 0x59, 0xa1, 0xdc, 0x09, 0xe9, 0x11, 0x54, 0x68, 0x10, 0xf8, 0x41, 0x1c, 0xef, 0x5c, 0x45, 0x83, + 0x49, 0x08, 0x45, 0x2e, 0xde, 0xfc, 0xf4, 0xb6, 0x11, 0xe8, 0xe6, 0xe9, 0xe9, 0x53, 0xa8, 0xa7, + 0x4e, 0x7c, 0x9f, 0x86, 0x76, 0xfc, 0x98, 0x7f, 0xe5, 0xf1, 0x10, 0x92, 0x1a, 0x94, 0xbb, 0x83, + 0xb1, 0x65, 0x28, 0x05, 0x52, 0x87, 0x9d, 0xd3, 0xb1, 0xf9, 0x85, 0x66, 0xea, 0x8a, 0x44, 0x00, + 0x2a, 0x83, 0x9e, 0x35, 0x35, 0x46, 0x8a, 0x4c, 0x2a, 0x20, 0x0f, 0x2c, 0xa5, 0x78, 0x7c, 0x0e, + 0x07, 0x5b, 0x73, 0x2a, 0xd9, 0x07, 0xe8, 0x0e, 0x67, 0xc8, 0x35, 0xba, 0x53, 0xa5, 0x40, 0xee, + 0xc0, 0x5e, 0x77, 0x38, 0xd3, 0x7b, 0x56, 0xcc, 0x92, 0xc8, 0x1e, 0xd4, 0xba, 0xc3, 0x99, 0x35, + 0xd5, 0xa6, 0xe7, 0x96, 0x22, 0x13, 0x05, 0x76, 0xbb, 0xc3, 0xd9, 0x99, 0x31, 0x9d, 0x4d, 0x0c, + 0xc3, 0xc4, 0x63, 0x4f, 0x60, 0x2f, 0x33, 0x44, 0xa1, 0x86, 0xf1, 0x74, 0x66, 0x8c, 0xb4, 0xce, + 0x00, 0x71, 0xed, 0x03, 0x18, 0x4f, 0xf1, 0x4c, 0x46, 0x4b, 0xc7, 0xbf, 0x42, 0x3a, 0x9e, 0x9e, + 0xc8, 0x2e, 0x54, 0x7b, 0xba, 0x31, 0x9a, 0xf6, 0x4e, 0x9f, 0x29, 0x05, 0x84, 0x3d, 0x39, 0xef, + 0x58, 0xe7, 0x1d, 0x7e, 0x31, 0x03, 0xf2, 0xc4, 0x30, 0x9f, 0x29, 0x32, 0xa9, 0x42, 0x69, 0xa8, + 0x8f, 0xf0, 0xc2, 0x7f, 0x49, 0x50, 0xeb, 0xa4, 0x6f, 0xeb, 0x58, 0x33, 0xdd, 0x18, 0x18, 0x53, + 0x83, 0x9f, 0xd0, 0xb1, 0x66, 0x93, 0x73, 0x84, 0x7e, 0x00, 0x75, 0xbe, 0x9e, 0x0d, 0xb5, 0x11, + 0x9e, 0xc1, 0x37, 0xcf, 0x8c, 0xa9, 0x52, 0x14, 0x9b, 0x68, 0x08, 0xdb, 0x2c, 0x21, 0x4e, 0xc1, + 0xd0, 0x06, 0x03, 0xa5, 0x8c, 0x96, 0x0a, 0x1a, 0x8d, 0xb7, 0x94, 0x8a, 0x50, 0xff, 0x5c, 0xb3, + 0x94, 0x1d, 0xd2, 0x84, 0xfb, 0x7c, 0xfd, 0xf9, 0x6c, 0x3c, 0x9a, 0x99, 0x86, 0xa6, 0xc7, 0x16, + 0x57, 0xc9, 0xf7, 0xe1, 0xbb, 0xdb, 0x7b, 0xb1, 0xf9, 0xb5, 0xe3, 0x8f, 0x04, 0x78, 0x9c, 0xe2, + 0x30, 0x66, 0xba, 0x71, 0xaa, 0x9d, 0x0f, 0xd0, 0xf9, 0xbb, 0x50, 0xed, 0x58, 0xb3, 0xd3, 0xb1, + 0xd9, 0x45, 0x37, 0xfd, 0x01, 0x60, 0xf3, 0x22, 0x31, 0x41, 0xed, 0x8c, 0xd9, 0x55, 0x88, 0x09, + 0xb4, 0x43, 0x42, 0x98, 0x48, 0x8c, 0x8c, 0x2f, 0x66, 0xa3, 0xb1, 0x6e, 0x28, 0x32, 0x06, 0x11, + 0x39, 0x9a, 0xae, 0xcf, 0x06, 0xbd, 0x51, 0xdf, 0x52, 0x8a, 0x31, 0x0b, 0x8d, 0xe1, 0xac, 0x12, + 0xde, 0x86, 0x2c, 0xb4, 0x4d, 0x29, 0xa3, 0xf1, 0x48, 0x99, 0xc6, 0x70, 0xfc, 0xc4, 0x50, 0x2a, + 0xc7, 0x7d, 0xa8, 0x25, 0x7d, 0x02, 0xed, 0xee, 0x73, 0xbb, 0x0b, 0x62, 0xcd, 0xaf, 0xe6, 0x6b, + 0xc4, 0x24, 0x63, 0x18, 0xfa, 0x49, 0x18, 0x8a, 0x08, 0xb1, 0x6f, 0xcd, 0x30, 0x05, 0x95, 0x52, + 0xfb, 0x1f, 0x45, 0xd8, 0xc1, 0xce, 0xaa, 0x4d, 0x7a, 0xe4, 0x11, 0x54, 0xe3, 0x41, 0x9f, 0xdc, + 0xcd, 0x7e, 0xc5, 0xb0, 0x3e, 0xd1, 0xbc, 0x97, 0xf7, 0x69, 0xa3, 0x16, 0xc8, 0x11, 0x54, 0xf8, + 0x4c, 0x4f, 0xf8, 0xdc, 0x9e, 0x9e, 0xef, 0x9b, 0x6c, 0xee, 0x33, 0x96, 0xab, 0xe8, 0x9a, 0x49, + 0x16, 0x27, 0xed, 0x09, 0x49, 0xbe, 0xc7, 0x85, 0xcc, 0x41, 0x42, 0x27, 0x67, 0xfe, 0x12, 0x60, + 0x33, 0x85, 0x92, 0xef, 0x24, 0xc3, 0x63, 0xba, 0x87, 0x37, 0xef, 0x6f, 0xb3, 0x13, 0xf5, 0x33, + 0x50, 0x36, 0x7c, 0x8b, 0x7d, 0x84, 0xbf, 0xf7, 0x21, 0x47, 0xd2, 0x43, 0x09, 0x11, 0xeb, 0xf6, + 0x25, 0x47, 0xbc, 0x99, 0xac, 0x38, 0xe2, 0xd4, 0x40, 0xa0, 0x16, 0xd0, 0x7d, 0x71, 0xab, 0xe7, + 0xee, 0xdb, 0x7a, 0x71, 0xb8, 0xfb, 0xb6, 0x5f, 0x03, 0xb5, 0x40, 0x3e, 0x81, 0x1d, 0xd1, 0xd3, + 0x08, 0xc9, 0x34, 0x38, 0xae, 0x76, 0x37, 0xa7, 0xe9, 0xa9, 0x85, 0x4e, 0xe3, 0xdf, 0xaf, 0x5a, + 0xd2, 0x37, 0xaf, 0x5a, 0xd2, 0x7f, 0x5e, 0xb5, 0xa4, 0x3f, 0xbd, 0x6e, 0x15, 0xbe, 0x79, 0xdd, + 0x2a, 0x7c, 0xfb, 0xba, 0x55, 0xb8, 0xa8, 0xb0, 0x7f, 0x08, 0x1f, 0xff, 0x3f, 0x00, 0x00, 0xff, + 0xff, 0xc5, 0x09, 0xec, 0x11, 0x92, 0x12, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2762,6 +2856,33 @@ func (m *BlockstoreRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Replace { + i-- + if m.Replace { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x50 + } + if m.Progressive { + i-- + if m.Progressive { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x48 + } + if len(m.RefID) > 0 { + i -= len(m.RefID) + copy(dAtA[i:], m.RefID) + i = encodeVarintNode(dAtA, i, uint64(len(m.RefID))) + i-- + dAtA[i] = 0x42 + } if len(m.HashFunc) > 0 { i -= len(m.HashFunc) copy(dAtA[i:], m.HashFunc) @@ -2924,6 +3045,33 @@ func (m *DagRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Replace { + i-- + if m.Replace { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x58 + } + if m.Progressive { + i-- + if m.Progressive { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x50 + } + if len(m.RefID) > 0 { + i -= len(m.RefID) + copy(dAtA[i:], m.RefID) + i = encodeVarintNode(dAtA, i, uint64(len(m.RefID))) + i-- + dAtA[i] = 0x4a + } if len(m.Links) > 0 { for k := range m.Links { v := m.Links[k] @@ -3011,6 +3159,11 @@ func (m *DagResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Count != 0 { + i = encodeVarintNode(dAtA, i, uint64(m.Count)) + i-- + dAtA[i] = 0x30 + } if len(m.NodeStats) > 0 { for k := range m.NodeStats { v := m.NodeStats[k] @@ -3325,6 +3478,23 @@ func (m *PersistRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Progressive { + i-- + if m.Progressive { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x28 + } + if len(m.RefID) > 0 { + i -= len(m.RefID) + copy(dAtA[i:], m.RefID) + i = encodeVarintNode(dAtA, i, uint64(len(m.RefID))) + i-- + dAtA[i] = 0x12 + } if len(m.Cids) > 0 { for iNdEx := len(m.Cids) - 1; iNdEx >= 0; iNdEx-- { i -= len(m.Cids[iNdEx]) @@ -3648,6 +3818,16 @@ func (m *BlockstoreRequest) Size() (n int) { if l > 0 { n += 1 + l + sovNode(uint64(l)) } + l = len(m.RefID) + if l > 0 { + n += 1 + l + sovNode(uint64(l)) + } + if m.Progressive { + n += 2 + } + if m.Replace { + n += 2 + } return n } @@ -3729,6 +3909,16 @@ func (m *DagRequest) Size() (n int) { n += mapEntrySize + 1 + sovNode(uint64(mapEntrySize)) } } + l = len(m.RefID) + if l > 0 { + n += 1 + l + sovNode(uint64(l)) + } + if m.Progressive { + n += 2 + } + if m.Replace { + n += 2 + } return n } @@ -3770,6 +3960,9 @@ func (m *DagResponse) Size() (n int) { n += mapEntrySize + 1 + sovNode(uint64(mapEntrySize)) } } + if m.Count != 0 { + n += 1 + sovNode(uint64(m.Count)) + } return n } @@ -3893,6 +4086,13 @@ func (m *PersistRequest) Size() (n int) { n += 1 + l + sovNode(uint64(l)) } } + l = len(m.RefID) + if l > 0 { + n += 1 + l + sovNode(uint64(l)) + } + if m.Progressive { + n += 2 + } return n } @@ -5543,6 +5743,78 @@ func (m *BlockstoreRequest) Unmarshal(dAtA []byte) error { } m.HashFunc = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthNode + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthNode + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RefID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Progressive", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Progressive = bool(v != 0) + case 10: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Replace", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Replace = bool(v != 0) default: iNdEx = preIndex skippy, err := skipNode(dAtA[iNdEx:]) @@ -6167,6 +6439,78 @@ func (m *DagRequest) Unmarshal(dAtA []byte) error { } m.Links[mapkey] = mapvalue iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthNode + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthNode + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RefID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Progressive", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Progressive = bool(v != 0) + case 11: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Replace", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Replace = bool(v != 0) default: iNdEx = preIndex skippy, err := skipNode(dAtA[iNdEx:]) @@ -6468,6 +6812,25 @@ func (m *DagResponse) Unmarshal(dAtA []byte) error { } m.NodeStats[mapkey] = mapvalue iNdEx = postIndex + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Count", wireType) + } + m.Count = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Count |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipNode(dAtA[iNdEx:]) @@ -7256,6 +7619,58 @@ func (m *PersistRequest) Unmarshal(dAtA []byte) error { } m.Cids = append(m.Cids, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthNode + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthNode + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RefID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Progressive", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowNode + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Progressive = bool(v != 0) default: iNdEx = preIndex skippy, err := skipNode(dAtA[iNdEx:]) diff --git a/go/pubsub.pb.go b/go/pubsub.pb.go index 0a402e2..18b0336 100644 --- a/go/pubsub.pb.go +++ b/go/pubsub.pb.go @@ -6,14 +6,13 @@ package pb import ( context "context" fmt "fmt" - io "io" - math "math" - math_bits "math/bits" - proto "github.com/gogo/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" ) // Reference imports to suppress errors if they are not otherwise used. @@ -37,7 +36,7 @@ const ( PSREQTYPE_PS_LIST_PEERS PSREQTYPE = 1 // PS_SUBSCRIBE is used to establish a persistent subscription to a pubsub topic PSREQTYPE_PS_SUBSCRIBE PSREQTYPE = 2 - // PS_PUBLISH is used to publisbh a message to a pubsub topic + // PS_PUBLISH is used to publish a message to a pubsub topic PSREQTYPE_PS_PUBLISH PSREQTYPE = 3 ) diff --git a/go/replication.pb.go b/go/replication.pb.go index f827aa1..94554e8 100644 --- a/go/replication.pb.go +++ b/go/replication.pb.go @@ -6,14 +6,13 @@ package pb import ( context "context" fmt "fmt" - io "io" - math "math" - math_bits "math/bits" - proto "github.com/gogo/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" ) // Reference imports to suppress errors if they are not otherwise used. diff --git a/go/status.pb.go b/go/status.pb.go index ebe0daf..793e127 100644 --- a/go/status.pb.go +++ b/go/status.pb.go @@ -6,14 +6,13 @@ package pb import ( context "context" fmt "fmt" - io "io" - math "math" - math_bits "math/bits" - proto "github.com/gogo/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" ) // Reference imports to suppress errors if they are not otherwise used. diff --git a/go/tools/tools.go b/go/tools/tools.go new file mode 100644 index 0000000..c471dc6 --- /dev/null +++ b/go/tools/tools.go @@ -0,0 +1,17 @@ +// +build tools + +//tools track tool dependencies, do not import +package tools + +import ( + _ "github.com/gogo/protobuf/gogoproto" + _ "github.com/gogo/protobuf/proto" + _ "github.com/gogo/protobuf/protoc-gen-gogo" + _ "github.com/gogo/protobuf/protoc-gen-gogofast" + _ "github.com/gogo/protobuf/protoc-gen-gogofaster" + _ "github.com/gogo/protobuf/protoc-gen-gogoslick" + _ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway" + _ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger" + _ "github.com/mwitkow/go-proto-validators/protoc-gen-govalidators" + _ "github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc" +) diff --git a/go/util.pb.go b/go/util.pb.go index c65db0c..e4b426a 100644 --- a/go/util.pb.go +++ b/go/util.pb.go @@ -5,11 +5,10 @@ package pb import ( fmt "fmt" + proto "github.com/gogo/protobuf/proto" io "io" math "math" math_bits "math/bits" - - proto "github.com/gogo/protobuf/proto" ) // Reference imports to suppress errors if they are not otherwise used. diff --git a/js/file_grpc_pb.js b/js/file_grpc_pb.js index 634fab0..33d7260 100644 --- a/js/file_grpc_pb.js +++ b/js/file_grpc_pb.js @@ -38,6 +38,28 @@ function deserialize_pb_PutResponse(buffer_arg) { return util_pb.PutResponse.deserializeBinary(new Uint8Array(buffer_arg)); } +function serialize_pb_RemoveRequest(arg) { + if (!(arg instanceof file_pb.RemoveRequest)) { + throw new Error('Expected argument of type pb.RemoveRequest'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_pb_RemoveRequest(buffer_arg) { + return file_pb.RemoveRequest.deserializeBinary(new Uint8Array(buffer_arg)); +} + +function serialize_pb_RemoveResponse(arg) { + if (!(arg instanceof file_pb.RemoveResponse)) { + throw new Error('Expected argument of type pb.RemoveResponse'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_pb_RemoveResponse(buffer_arg) { + return file_pb.RemoveResponse.deserializeBinary(new Uint8Array(buffer_arg)); +} + function serialize_pb_UploadRequest(arg) { if (!(arg instanceof file_pb.UploadRequest)) { throw new Error('Expected argument of type pb.UploadRequest'); @@ -52,7 +74,7 @@ function deserialize_pb_UploadRequest(buffer_arg) { // FileAPI provides a gRPC api to upload/download files as UnixFS objects var FileAPIService = exports.FileAPIService = { - // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs add) + // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs pin add) uploadFile: { path: '/pb.FileAPI/UploadFile', requestStream: true, @@ -76,6 +98,18 @@ downloadFile: { responseSerialize: serialize_pb_DownloadResponse, responseDeserialize: deserialize_pb_DownloadResponse, }, + // RemoveFile allows removing a UnixFS object or decrease it's reference counter (equivalent to ipfs pin rm) +removeFile: { + path: '/pb.FileAPI/RemoveFile', + requestStream: false, + responseStream: false, + requestType: file_pb.RemoveRequest, + responseType: file_pb.RemoveResponse, + requestSerialize: serialize_pb_RemoveRequest, + requestDeserialize: deserialize_pb_RemoveRequest, + responseSerialize: serialize_pb_RemoveResponse, + responseDeserialize: deserialize_pb_RemoveResponse, + }, }; exports.FileAPIClient = grpc.makeGenericClientConstructor(FileAPIService); diff --git a/js/file_pb.js b/js/file_pb.js index 27c866f..e7abcce 100644 --- a/js/file_pb.js +++ b/js/file_pb.js @@ -15,6 +15,8 @@ var util_pb = require('./util_pb.js'); goog.exportSymbol('proto.pb.Blob', null, global); goog.exportSymbol('proto.pb.DownloadRequest', null, global); goog.exportSymbol('proto.pb.DownloadResponse', null, global); +goog.exportSymbol('proto.pb.RemoveRequest', null, global); +goog.exportSymbol('proto.pb.RemoveResponse', null, global); goog.exportSymbol('proto.pb.UploadOptions', null, global); goog.exportSymbol('proto.pb.UploadRequest', null, global); @@ -269,7 +271,10 @@ proto.pb.UploadOptions.toObject = function(includeInstance, msg) { var f, obj = { multihash: jspb.Message.getFieldWithDefault(msg, 1, ""), layout: jspb.Message.getFieldWithDefault(msg, 2, ""), - chunker: jspb.Message.getFieldWithDefault(msg, 3, "") + chunker: jspb.Message.getFieldWithDefault(msg, 3, ""), + refid: jspb.Message.getFieldWithDefault(msg, 4, ""), + progressive: jspb.Message.getFieldWithDefault(msg, 5, false), + replace: jspb.Message.getFieldWithDefault(msg, 6, false) }; if (includeInstance) { @@ -318,6 +323,18 @@ proto.pb.UploadOptions.deserializeBinaryFromReader = function(msg, reader) { var value = /** @type {string} */ (reader.readString()); msg.setChunker(value); break; + case 4: + var value = /** @type {string} */ (reader.readString()); + msg.setRefid(value); + break; + case 5: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setProgressive(value); + break; + case 6: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setReplace(value); + break; default: reader.skipField(); break; @@ -368,6 +385,27 @@ proto.pb.UploadOptions.serializeBinaryToWriter = function(message, writer) { f ); } + f = message.getRefid(); + if (f.length > 0) { + writer.writeString( + 4, + f + ); + } + f = message.getProgressive(); + if (f) { + writer.writeBool( + 5, + f + ); + } + f = message.getReplace(); + if (f) { + writer.writeBool( + 6, + f + ); + } }; @@ -416,6 +454,55 @@ proto.pb.UploadOptions.prototype.setChunker = function(value) { }; +/** + * optional string refID = 4; + * @return {string} + */ +proto.pb.UploadOptions.prototype.getRefid = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, "")); +}; + + +/** @param {string} value */ +proto.pb.UploadOptions.prototype.setRefid = function(value) { + jspb.Message.setProto3StringField(this, 4, value); +}; + + +/** + * optional bool progressive = 5; + * Note that Boolean fields may be set to 0/1 when serialized from a Java server. + * You should avoid comparisons like {@code val === true/false} in those cases. + * @return {boolean} + */ +proto.pb.UploadOptions.prototype.getProgressive = function() { + return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 5, false)); +}; + + +/** @param {boolean} value */ +proto.pb.UploadOptions.prototype.setProgressive = function(value) { + jspb.Message.setProto3BooleanField(this, 5, value); +}; + + +/** + * optional bool replace = 6; + * Note that Boolean fields may be set to 0/1 when serialized from a Java server. + * You should avoid comparisons like {@code val === true/false} in those cases. + * @return {boolean} + */ +proto.pb.UploadOptions.prototype.getReplace = function() { + return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 6, false)); +}; + + +/** @param {boolean} value */ +proto.pb.UploadOptions.prototype.setReplace = function(value) { + jspb.Message.setProto3BooleanField(this, 6, value); +}; + + /** * Generated by JsPbCodeGenerator. @@ -1018,4 +1105,290 @@ proto.pb.Blob.prototype.setRangeend = function(value) { }; + +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.pb.RemoveRequest = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.pb.RemoveRequest, jspb.Message); +if (goog.DEBUG && !COMPILED) { + proto.pb.RemoveRequest.displayName = 'proto.pb.RemoveRequest'; +} + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto suitable for use in Soy templates. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS. + * @param {boolean=} opt_includeInstance Whether to include the JSPB instance + * for transitional soy proto support: http://goto/soy-param-migration + * @return {!Object} + */ +proto.pb.RemoveRequest.prototype.toObject = function(opt_includeInstance) { + return proto.pb.RemoveRequest.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Whether to include the JSPB + * instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.pb.RemoveRequest} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.pb.RemoveRequest.toObject = function(includeInstance, msg) { + var f, obj = { + refidsMap: (f = msg.getRefidsMap()) ? f.toObject(includeInstance, undefined) : [] + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.pb.RemoveRequest} + */ +proto.pb.RemoveRequest.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.pb.RemoveRequest; + return proto.pb.RemoveRequest.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.pb.RemoveRequest} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.pb.RemoveRequest} + */ +proto.pb.RemoveRequest.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = msg.getRefidsMap(); + reader.readMessage(value, function(message, reader) { + jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, ""); + }); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.pb.RemoveRequest.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.pb.RemoveRequest.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.pb.RemoveRequest} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.pb.RemoveRequest.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getRefidsMap(true); + if (f && f.getLength() > 0) { + f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString); + } +}; + + +/** + * map refIDs = 1; + * @param {boolean=} opt_noLazyCreate Do not create the map if + * empty, instead returning `undefined` + * @return {!jspb.Map} + */ +proto.pb.RemoveRequest.prototype.getRefidsMap = function(opt_noLazyCreate) { + return /** @type {!jspb.Map} */ ( + jspb.Message.getMapField(this, 1, opt_noLazyCreate, + null)); +}; + + +proto.pb.RemoveRequest.prototype.clearRefidsMap = function() { + this.getRefidsMap().clear(); +}; + + + +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.pb.RemoveResponse = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.pb.RemoveResponse, jspb.Message); +if (goog.DEBUG && !COMPILED) { + proto.pb.RemoveResponse.displayName = 'proto.pb.RemoveResponse'; +} + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto suitable for use in Soy templates. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS. + * @param {boolean=} opt_includeInstance Whether to include the JSPB instance + * for transitional soy proto support: http://goto/soy-param-migration + * @return {!Object} + */ +proto.pb.RemoveResponse.prototype.toObject = function(opt_includeInstance) { + return proto.pb.RemoveResponse.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Whether to include the JSPB + * instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.pb.RemoveResponse} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.pb.RemoveResponse.toObject = function(includeInstance, msg) { + var f, obj = { + count: jspb.Message.getFieldWithDefault(msg, 1, 0) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.pb.RemoveResponse} + */ +proto.pb.RemoveResponse.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.pb.RemoveResponse; + return proto.pb.RemoveResponse.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.pb.RemoveResponse} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.pb.RemoveResponse} + */ +proto.pb.RemoveResponse.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {number} */ (reader.readUint64()); + msg.setCount(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.pb.RemoveResponse.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.pb.RemoveResponse.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.pb.RemoveResponse} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.pb.RemoveResponse.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getCount(); + if (f !== 0) { + writer.writeUint64( + 1, + f + ); + } +}; + + +/** + * optional uint64 count = 1; + * @return {number} + */ +proto.pb.RemoveResponse.prototype.getCount = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0)); +}; + + +/** @param {number} value */ +proto.pb.RemoveResponse.prototype.setCount = function(value) { + jspb.Message.setProto3IntField(this, 1, value); +}; + + goog.object.extend(exports, proto.pb); diff --git a/js/node_pb.js b/js/node_pb.js index cb406ed..8c2628a 100644 --- a/js/node_pb.js +++ b/js/node_pb.js @@ -1935,7 +1935,10 @@ proto.pb.BlockstoreRequest.toObject = function(includeInstance, msg) { cidsList: jspb.Message.getRepeatedField(msg, 3), dataList: msg.getDataList_asB64(), cidversion: jspb.Message.getFieldWithDefault(msg, 5, ""), - hashfunc: jspb.Message.getFieldWithDefault(msg, 7, "") + hashfunc: jspb.Message.getFieldWithDefault(msg, 7, ""), + refid: jspb.Message.getFieldWithDefault(msg, 8, ""), + progressive: jspb.Message.getFieldWithDefault(msg, 9, false), + replace: jspb.Message.getFieldWithDefault(msg, 10, false) }; if (includeInstance) { @@ -1996,6 +1999,18 @@ proto.pb.BlockstoreRequest.deserializeBinaryFromReader = function(msg, reader) { var value = /** @type {string} */ (reader.readString()); msg.setHashfunc(value); break; + case 8: + var value = /** @type {string} */ (reader.readString()); + msg.setRefid(value); + break; + case 9: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setProgressive(value); + break; + case 10: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setReplace(value); + break; default: reader.skipField(); break; @@ -2067,6 +2082,27 @@ proto.pb.BlockstoreRequest.serializeBinaryToWriter = function(message, writer) { f ); } + f = message.getRefid(); + if (f.length > 0) { + writer.writeString( + 8, + f + ); + } + f = message.getProgressive(); + if (f) { + writer.writeBool( + 9, + f + ); + } + f = message.getReplace(); + if (f) { + writer.writeBool( + 10, + f + ); + } }; @@ -2226,6 +2262,55 @@ proto.pb.BlockstoreRequest.prototype.setHashfunc = function(value) { }; +/** + * optional string refID = 8; + * @return {string} + */ +proto.pb.BlockstoreRequest.prototype.getRefid = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, "")); +}; + + +/** @param {string} value */ +proto.pb.BlockstoreRequest.prototype.setRefid = function(value) { + jspb.Message.setProto3StringField(this, 8, value); +}; + + +/** + * optional bool progressive = 9; + * Note that Boolean fields may be set to 0/1 when serialized from a Java server. + * You should avoid comparisons like {@code val === true/false} in those cases. + * @return {boolean} + */ +proto.pb.BlockstoreRequest.prototype.getProgressive = function() { + return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 9, false)); +}; + + +/** @param {boolean} value */ +proto.pb.BlockstoreRequest.prototype.setProgressive = function(value) { + jspb.Message.setProto3BooleanField(this, 9, value); +}; + + +/** + * optional bool replace = 10; + * Note that Boolean fields may be set to 0/1 when serialized from a Java server. + * You should avoid comparisons like {@code val === true/false} in those cases. + * @return {boolean} + */ +proto.pb.BlockstoreRequest.prototype.getReplace = function() { + return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 10, false)); +}; + + +/** @param {boolean} value */ +proto.pb.BlockstoreRequest.prototype.setReplace = function(value) { + jspb.Message.setProto3BooleanField(this, 10, value); +}; + + /** * Generated by JsPbCodeGenerator. @@ -2695,7 +2780,10 @@ proto.pb.DagRequest.toObject = function(includeInstance, msg) { hashfunc: jspb.Message.getFieldWithDefault(msg, 5, ""), cidversion: jspb.Message.getFieldWithDefault(msg, 6, 0), hash: jspb.Message.getFieldWithDefault(msg, 7, ""), - linksMap: (f = msg.getLinksMap()) ? f.toObject(includeInstance, undefined) : [] + linksMap: (f = msg.getLinksMap()) ? f.toObject(includeInstance, undefined) : [], + refid: jspb.Message.getFieldWithDefault(msg, 9, ""), + progressive: jspb.Message.getFieldWithDefault(msg, 10, false), + replace: jspb.Message.getFieldWithDefault(msg, 11, false) }; if (includeInstance) { @@ -2766,6 +2854,18 @@ proto.pb.DagRequest.deserializeBinaryFromReader = function(msg, reader) { jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, ""); }); break; + case 9: + var value = /** @type {string} */ (reader.readString()); + msg.setRefid(value); + break; + case 10: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setProgressive(value); + break; + case 11: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setReplace(value); + break; default: reader.skipField(); break; @@ -2848,6 +2948,27 @@ proto.pb.DagRequest.serializeBinaryToWriter = function(message, writer) { if (f && f.getLength() > 0) { f.serializeBinary(8, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString); } + f = message.getRefid(); + if (f.length > 0) { + writer.writeString( + 9, + f + ); + } + f = message.getProgressive(); + if (f) { + writer.writeBool( + 10, + f + ); + } + f = message.getReplace(); + if (f) { + writer.writeBool( + 11, + f + ); + } }; @@ -2998,6 +3119,55 @@ proto.pb.DagRequest.prototype.clearLinksMap = function() { }; +/** + * optional string refID = 9; + * @return {string} + */ +proto.pb.DagRequest.prototype.getRefid = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, "")); +}; + + +/** @param {string} value */ +proto.pb.DagRequest.prototype.setRefid = function(value) { + jspb.Message.setProto3StringField(this, 9, value); +}; + + +/** + * optional bool progressive = 10; + * Note that Boolean fields may be set to 0/1 when serialized from a Java server. + * You should avoid comparisons like {@code val === true/false} in those cases. + * @return {boolean} + */ +proto.pb.DagRequest.prototype.getProgressive = function() { + return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 10, false)); +}; + + +/** @param {boolean} value */ +proto.pb.DagRequest.prototype.setProgressive = function(value) { + jspb.Message.setProto3BooleanField(this, 10, value); +}; + + +/** + * optional bool replace = 11; + * Note that Boolean fields may be set to 0/1 when serialized from a Java server. + * You should avoid comparisons like {@code val === true/false} in those cases. + * @return {boolean} + */ +proto.pb.DagRequest.prototype.getReplace = function() { + return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 11, false)); +}; + + +/** @param {boolean} value */ +proto.pb.DagRequest.prototype.setReplace = function(value) { + jspb.Message.setProto3BooleanField(this, 11, value); +}; + + /** * Generated by JsPbCodeGenerator. @@ -3057,7 +3227,8 @@ proto.pb.DagResponse.toObject = function(includeInstance, msg) { rawdata: msg.getRawdata_asB64(), linksList: jspb.Message.toObjectList(msg.getLinksList(), proto.pb.IPLDLink.toObject, includeInstance), - nodestatsMap: (f = msg.getNodestatsMap()) ? f.toObject(includeInstance, proto.pb.IPLDStat.toObject) : [] + nodestatsMap: (f = msg.getNodestatsMap()) ? f.toObject(includeInstance, proto.pb.IPLDStat.toObject) : [], + count: jspb.Message.getFieldWithDefault(msg, 6, 0) }; if (includeInstance) { @@ -3117,6 +3288,10 @@ proto.pb.DagResponse.deserializeBinaryFromReader = function(msg, reader) { jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readMessage, proto.pb.IPLDStat.deserializeBinaryFromReader, ""); }); break; + case 6: + var value = /** @type {number} */ (reader.readUint64()); + msg.setCount(value); + break; default: reader.skipField(); break; @@ -3179,6 +3354,13 @@ proto.pb.DagResponse.serializeBinaryToWriter = function(message, writer) { if (f && f.getLength() > 0) { f.serializeBinary(5, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeMessage, proto.pb.IPLDStat.serializeBinaryToWriter); } + f = message.getCount(); + if (f !== 0) { + writer.writeUint64( + 6, + f + ); + } }; @@ -3314,6 +3496,21 @@ proto.pb.DagResponse.prototype.clearNodestatsMap = function() { }; +/** + * optional uint64 count = 6; + * @return {number} + */ +proto.pb.DagResponse.prototype.getCount = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0)); +}; + + +/** @param {number} value */ +proto.pb.DagResponse.prototype.setCount = function(value) { + jspb.Message.setProto3IntField(this, 6, value); +}; + + /** * Generated by JsPbCodeGenerator. @@ -4547,7 +4744,9 @@ proto.pb.PersistRequest.prototype.toObject = function(opt_includeInstance) { */ proto.pb.PersistRequest.toObject = function(includeInstance, msg) { var f, obj = { - cidsList: jspb.Message.getRepeatedField(msg, 1) + cidsList: jspb.Message.getRepeatedField(msg, 1), + refid: jspb.Message.getFieldWithDefault(msg, 2, ""), + progressive: jspb.Message.getFieldWithDefault(msg, 5, false) }; if (includeInstance) { @@ -4588,6 +4787,14 @@ proto.pb.PersistRequest.deserializeBinaryFromReader = function(msg, reader) { var value = /** @type {string} */ (reader.readString()); msg.addCids(value); break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setRefid(value); + break; + case 5: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setProgressive(value); + break; default: reader.skipField(); break; @@ -4624,6 +4831,20 @@ proto.pb.PersistRequest.serializeBinaryToWriter = function(message, writer) { f ); } + f = message.getRefid(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } + f = message.getProgressive(); + if (f) { + writer.writeBool( + 5, + f + ); + } }; @@ -4656,6 +4877,38 @@ proto.pb.PersistRequest.prototype.clearCidsList = function() { }; +/** + * optional string refID = 2; + * @return {string} + */ +proto.pb.PersistRequest.prototype.getRefid = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** @param {string} value */ +proto.pb.PersistRequest.prototype.setRefid = function(value) { + jspb.Message.setProto3StringField(this, 2, value); +}; + + +/** + * optional bool progressive = 5; + * Note that Boolean fields may be set to 0/1 when serialized from a Java server. + * You should avoid comparisons like {@code val === true/false} in those cases. + * @return {boolean} + */ +proto.pb.PersistRequest.prototype.getProgressive = function() { + return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 5, false)); +}; + + +/** @param {boolean} value */ +proto.pb.PersistRequest.prototype.setProgressive = function(value) { + jspb.Message.setProto3BooleanField(this, 5, value); +}; + + /** * Generated by JsPbCodeGenerator. @@ -4900,7 +5153,8 @@ proto.pb.DAGREQTYPE = { DAG_NEW_NODE: 2, DAG_ADD_LINKS: 3, DAG_GET_LINKS: 4, - DAG_STAT: 5 + DAG_STAT: 5, + DAG_REMOVE: 6 }; /** diff --git a/package-lock.json b/package-lock.json index 94aa8d9..044568f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2,41 +2,144 @@ "requires": true, "lockfileVersion": 1, "dependencies": { + "@grpc/proto-loader": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.5.4.tgz", + "integrity": "sha512-HTM4QpI9B2XFkPz7pjwMyMgZchJ93TVkL3kWPW8GDMDKYxsMnmf4w2TNMJK7+KNiYHS5cJrCEAFlF+AwtXWVPA==", + "requires": { + "lodash.camelcase": "^4.3.0", + "protobufjs": "^6.8.6" + }, + "dependencies": { + "@types/node": { + "version": "13.13.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.12.tgz", + "integrity": "sha512-zWz/8NEPxoXNT9YyF2osqyA9WjssZukYpgI4UYZpOjcyqwIUqWGkcCionaEb9Ki+FULyPyvNFpg/329Kd2/pbw==" + }, + "long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + }, + "protobufjs": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.9.0.tgz", + "integrity": "sha512-LlGVfEWDXoI/STstRDdZZKb/qusoAWUnmLg9R8OLSO473mBLWHowx8clbX5/+mKDEI+v7GzjoK9tRPZMMcoTrg==", + "requires": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/long": "^4.0.1", + "@types/node": "^13.7.0", + "long": "^4.0.0" + } + } + } + }, + "@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", + "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" + }, + "@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" + }, + "@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + }, + "@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", + "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" + }, + "@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", + "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", + "requires": { + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" + } + }, + "@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", + "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" + }, + "@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", + "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" + }, + "@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", + "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" + }, + "@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", + "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" + }, + "@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", + "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" + }, "@types/bytebuffer": { - "version": "5.0.40", - "resolved": "https://registry.npmjs.org/@types/bytebuffer/-/bytebuffer-5.0.40.tgz", - "integrity": "sha512-h48dyzZrPMz25K6Q4+NCwWaxwXany2FhQg/ErOcdZS1ZpsaDnDMZg8JYLMTGz7uvXKrcKGJUZJlZObyfgdaN9g==", + "version": "5.0.41", + "resolved": "https://registry.npmjs.org/@types/bytebuffer/-/bytebuffer-5.0.41.tgz", + "integrity": "sha512-Mdrv4YcaHvpkx25ksqqFaezktx3yZRcd51GZY0rY/9avyaqZdiT/GiWRhfrJhMpgzXqTOSHgGvsumGxJFNiZZA==", "requires": { "@types/long": "*", "@types/node": "*" } }, "@types/long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.0.tgz", - "integrity": "sha512-1w52Nyx4Gq47uuu0EVcsHBxZFJgurQ+rTKS3qMHxR1GY2T8c2AJYd6vZoZ9q1rupaDjU0yT+Jc2XTyXkjeMA+Q==" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", + "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" }, "@types/node": { - "version": "12.12.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.14.tgz", - "integrity": "sha512-u/SJDyXwuihpwjXy7hOOghagLEV1KdAST6syfnOk6QZAMzZuWZqXy5aYYZbh8Jdpd4escVFP0MvftHNDb9pruA==" - }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } + "version": "14.0.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.13.tgz", + "integrity": "sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA==" + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, "ascli": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ascli/-/ascli-1.0.1.tgz", @@ -46,47 +149,11 @@ "optjs": "~3.2.2" } }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz", - "integrity": "sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==" - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - } - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -109,10 +176,10 @@ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, "cliui": { "version": "3.2.0", @@ -134,30 +201,27 @@ "resolved": "https://registry.npmjs.org/colour/-/colour-0.7.1.tgz", "integrity": "sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g=" }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "requires": { - "assert-plus": "^1.0.0" + "ms": "^2.1.1" } }, "decamelize": { @@ -165,53 +229,27 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "minipass": "^2.6.0" } }, "fs.realpath": { @@ -219,12 +257,19 @@ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "requires": { - "assert-plus": "^1.0.0" + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" } }, "glob": { @@ -241,995 +286,69 @@ } }, "google-protobuf": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.11.1.tgz", - "integrity": "sha512-1fdyssLSa7Dip+MDdluLl0uK+2rspgU1PrbdPJKt7hywqSl3+R27TkLYKuBn9dvOyr0VQ0cliQWlfMheW5WKqA==" + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.12.2.tgz", + "integrity": "sha512-4CZhpuRr1d6HjlyrxoXoocoGFnRYgKULgMtikMddA9ztRyYR59Aondv2FioyxWVamRo0rF2XpYawkTCBEQOSkA==" }, "grpc": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/grpc/-/grpc-1.24.2.tgz", - "integrity": "sha512-EG3WH6AWMVvAiV15d+lr+K77HJ/KV/3FvMpjKjulXHbTwgDZkhkcWbwhxFAoTdxTkQvy0WFcO3Nog50QBbHZWw==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/grpc/-/grpc-1.24.3.tgz", + "integrity": "sha512-EDemzuZTfhM0hgrXqC4PtR76O3t+hTIYJYR5vgiW0yt2WJqo4mhxUqZUirzUQz34Psz7dbLp38C6Cl7Ij2vXRQ==", "requires": { "@types/bytebuffer": "^5.0.40", "lodash.camelcase": "^4.3.0", "lodash.clone": "^4.5.0", "nan": "^2.13.2", - "node-pre-gyp": "^0.14.0", - "protobufjs": "^5.0.3" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz", - "integrity": "sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==" - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", - "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - } - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "needle": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", - "integrity": "sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==", - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz", - "integrity": "sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==", - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", - "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==" - }, - "npm-packlist": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.6.tgz", - "integrity": "sha512-u65uQdb+qwtGvEJh/DgQgW1Xg7sqeNbmxYyrvlNznaVTjV3E5P6F/EFjM+BVHXl7JJlsdG8A64M0XI8FI/IOlg==", - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "tar": { - "version": "4.4.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", - "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } - } - }, - "grpc-tools": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.8.0.tgz", - "integrity": "sha512-GzYHjPQ/sbV/DmnNRksapMlLj26Tvq2Qppmzjmd+lHYZNeWM1feiGsYCduzJLyy295P+3uYIPy2/w/1thAnOow==", - "requires": { - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", - "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==" - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" - }, - "fs-minipass": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", - "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "minipass": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", - "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", - "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "needle": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.4.tgz", - "integrity": "sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA==", - "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", - "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", - "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==" - }, - "npm-packlist": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", - "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "tar": { - "version": "4.4.8", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", - "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "node-pre-gyp": "^0.15.0", + "protobufjs": "^5.0.3" + } + }, + "grpc-tools": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.9.0.tgz", + "integrity": "sha512-du10qytFNDVNYGJQ/AxXTF6lXchgCZ7ls8BtBDCtnuinjGbnPFHpOIzoEAT8NsmgFg4RCpsWW8vsQ+RCyQ3SXA==", + "requires": { + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "node-pre-gyp": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", "requires": { - "string-width": "^1.0.2 || 2" + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "yallist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==" } } }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" + "safer-buffer": ">= 2.1.2 < 3" } }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "ignore-walk": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", + "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "minimatch": "^3.0.4" } }, "inflight": { @@ -1246,6 +365,11 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, "invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", @@ -1259,46 +383,10 @@ "number-is-nan": "^1.0.0" } }, - "is-typedarray": { + "isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "lcid": { "version": "1.0.0", @@ -1323,19 +411,6 @@ "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=" }, - "mime-db": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", - "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==" - }, - "mime-types": { - "version": "2.1.25", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", - "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", - "requires": { - "mime-db": "1.42.0" - } - }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -1344,20 +419,125 @@ "brace-expansion": "^1.1.7" } }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "requires": { + "minipass": "^2.9.0" + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "requires": { + "minimist": "^1.2.5" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==" + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==" + }, + "needle": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", + "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.15.0.tgz", + "integrity": "sha512-7QcZa8/fpaU/BKenjcaeFF9hLz2+7S9AqyXFhlH/rilsQ/hPZKK32RtR5EQHJElgu+q5RfbJ34KriI79UWaorA==", + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.3", + "needle": "^2.5.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4.4.2" + } + }, + "nopt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", + "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz", + "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==", + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" + }, + "npm-packlist": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", + "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } }, "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "once": { "version": "1.4.0", @@ -1372,6 +552,11 @@ "resolved": "https://registry.npmjs.org/optjs/-/optjs-3.2.2.tgz", "integrity": "sha1-aabOicRCpEQDFBrS+bNwvVu29O4=" }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, "os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", @@ -1380,30 +565,29 @@ "lcid": "^1.0.0" } }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "protobuf": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/protobuf/-/protobuf-0.11.1.tgz", - "integrity": "sha1-+CZ0t/bYoVQ/oToMirw55dTI0U4=", - "requires": { - "nan": "~1.0.0" - }, - "dependencies": { - "nan": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-1.0.0.tgz", - "integrity": "sha1-riT4hQgY1mL8q1rPfzuVv6oszzg=" - } - } + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "protobufjs": { "version": "5.0.3", @@ -1416,527 +600,44 @@ "yargs": "^3.10.0" } }, - "protoc-gen-grpc": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/protoc-gen-grpc/-/protoc-gen-grpc-1.3.7.tgz", - "integrity": "sha512-OkTia22M37/vFhRBIoW6ZqYZYpL/yz12YOse7nVcs1NmEm56ckprsjuIel5DrVGKVlUjpfl+ENqO2w3Mx+3sPg==", + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { - "google-protobuf": "^3.8.0", - "node-pre-gyp": "^0.13.0", - "request": "^2.88.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" }, "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz", - "integrity": "sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==" - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.5.tgz", - "integrity": "sha512-J9dlskqUXK1OeTOYBEn5s8aMukWMwWfs+rPTn/jn50Ux4MNXVhubL1wu/j2t+H4NVI+cXEcCaYellqaPVGXNqQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", - "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "needle": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", - "integrity": "sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==", - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.13.0.tgz", - "integrity": "sha512-Md1D3xnEne8b/HGVQkZZwV27WUi1ZRuZBij24TNaZwUPU3ZAFtvT6xxJGaUVillfmMKnn5oD1HoGsp2Ftik7SQ==", - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", - "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==" - }, - "npm-packlist": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.6.tgz", - "integrity": "sha512-u65uQdb+qwtGvEJh/DgQgW1Xg7sqeNbmxYyrvlNznaVTjV3E5P6F/EFjM+BVHXl7JJlsdG8A64M0XI8FI/IOlg==", - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "tar": { - "version": "4.4.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", - "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, - "psl": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.5.0.tgz", - "integrity": "sha512-4vqUjKi2huMu1OJiLhi3jN6jeeKvMZdI1tYgi/njW5zV52jNLgSAZSdN16m9bJFe61/cT8ulmw4qFitV9QRsEA==" - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" + "glob": "^7.1.3" } }, "safe-buffer": { @@ -1949,21 +650,25 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "string-width": { "version": "1.0.2", @@ -1975,6 +680,21 @@ "strip-ansi": "^3.0.0" } }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -1983,20 +703,23 @@ "ansi-regex": "^2.0.0" } }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - } + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "tar": { + "version": "4.4.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", + "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" } }, "ts-protoc-gen": { @@ -2007,40 +730,17 @@ "google-protobuf": "^3.6.1" } }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "requires": { - "punycode": "^2.1.0" - } - }, - "uuid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", - "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==" + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "string-width": "^1.0.2 || 2" } }, "window-size": { @@ -2067,6 +767,11 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, "yargs": { "version": "3.32.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", diff --git a/pb/file.proto b/pb/file.proto index ab7ef07..2b2ce50 100644 --- a/pb/file.proto +++ b/pb/file.proto @@ -4,10 +4,12 @@ import "util.proto"; // FileAPI provides a gRPC api to upload/download files as UnixFS objects service FileAPI { - // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs add) - rpc UploadFile(stream UploadRequest) returns (PutResponse) { }; + // UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs pin add) + rpc UploadFile(stream UploadRequest) returns (PutResponse) {}; // DownloadFile allows downloading a UnixFS object (equivalent to ipfs get) - rpc DownloadFile(DownloadRequest) returns (stream DownloadResponse) { }; + rpc DownloadFile(DownloadRequest) returns (stream DownloadResponse) {}; + // RemoveFile allows removing a UnixFS object or decrease it's reference counter (equivalent to ipfs pin rm) + rpc RemoveFile(RemoveRequest) returns (RemoveResponse) {}; } @@ -15,18 +17,24 @@ service FileAPI { message UploadRequest { // blob is a single chunk of data Blob blob = 1; - // options allows setting the optoins for this upload + // options allows setting the options for this upload, only valid in the first message of a stream UploadOptions options = 2; } // UploadOptions allows controlling the parameters of a file upload message UploadOptions { - // specifes the multihash function to use + // specifies the multihash function to use string multiHash = 1; // specifies the dag layout (balanced, tricklet) string layout = 2; // specifies the chunker type (rabin, default, etc...) string chunker = 3; + // optional reference ID to tag the file with. If set, the same reference ID must be used for deletion + string refID = 4; + // if refID is set, allows progressive upload + bool progressive = 5; + // if refID is set, remove the any existing uploads with same refID + bool replace = 6; } // DownloadRequest is used to download a UnixFS object @@ -41,7 +49,7 @@ message DownloadRequest { int32 chunkSize = 2; // Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range. // If both is none zero, only data within range is requested. - // The unit of range is alway in bytes. + // The unit of range is always in bytes. // If used, please check the returned range values in blobs to make sure this feature is supported. uint64 rangeStart = 3; uint64 rangeEnd = 4; @@ -60,8 +68,21 @@ message Blob { bytes content = 1; // Range start and end mirrors developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Range. // If both is zero, the blobs streams contents of the file from start to finish. - // The unit of range is alway in bytes. + // The unit of range is always in bytes. // Currently, DownloadResponse support blob range. uint64 rangeStart = 2; uint64 rangeEnd = 3; } + +// UploadRequest is used to decrease the reference count on UnixFS objects +message RemoveRequest{ + // refIDs is a map of reference IDs to hash/cid of objects to remove those reference counts + map refIDs = 1; +} + +// RemoveResponse contains the response to a remove request +message RemoveResponse{ + // The number of removal operations performed. + // A missing count is because the refID to hash pair was already removed or was never added + uint64 count = 1; +} \ No newline at end of file diff --git a/pb/node.proto b/pb/node.proto index 1f2c112..49b7ee3 100644 --- a/pb/node.proto +++ b/pb/node.proto @@ -208,9 +208,18 @@ message BlockstoreRequest { // the hash function to use when constructing blocks, default is sha2-256 // sent by: BS_PUT, BS_PUT_MANY string hashFunc = 7; + // reference ID to mark the blocks of this operation with + // when sent by BS_PUT, BS_PUT_MANY: only put if the id is not marked on block, otherwise noop + // when sent by BS_GET, BS_GET_MANY: only get if the id is marked on block + // when sent by BS_DELETE: only delete if the id is marked on block + string refID = 8; + // if refID is set, allows progressive upload + bool progressive = 9; + // if refID is set, remove the any existing blocks with same refID + bool replace = 10; } -// BlockstoreResponse is a response to a BlockstoreqRequest +// BlockstoreResponse is a response to a BlockstoreRequest message BlockstoreResponse { // indicates the particular request type being made BSREQTYPE requestType = 1; @@ -232,7 +241,7 @@ message Block { // data is the actual contents of the block bytes data = 2; // size of the block, only filled out by BS_GET_STATS - // since if we just want stats, we dont want to + // since if we just want stats, we don't want to // retrieve all the data. int64 size = 3; } @@ -251,6 +260,8 @@ enum DAGREQTYPE { DAG_GET_LINKS = 4; // DAG_STAT is used to retrieve ipld.NodeStats information DAG_STAT = 5; + // DAG_REMOVE is the inverse of DAG_PUT + DAG_REMOVE = 6; } // Used to submit a request to Dag or DagStream RPCs @@ -274,11 +285,18 @@ message DagRequest { // sent by: DAG_PUT, DAG_NEW_NODE int64 cidVersion = 6; // the hash of the object we are processing - // sent by: DAG_GET, DAG_NEW_NODe, DAG_ADD_LINKS, DAG_GET_LINKS + // sent by: DAG_GET, DAG_NEW_NODe, DAG_ADD_LINKS, DAG_GET_LINKS, DAG_REMOVE string hash = 7; // indicates links and their names. key = name, value = link hash // sent by: DAG_NEW_NODE, DAG_ADD_LINKS map links = 8; + // optional reference ID to mark the cid/hash with + // sent by: DAG_PUT, DAG_REMOVE + string refID = 9; + // if refID is set, allows progressive upload + bool progressive = 10; + // if refID is set, remove the any existing DAGs with same refID + bool replace = 11; } // Used in response to a Dag or DagStream RPC @@ -298,6 +316,9 @@ message DagResponse { // maps ipld cids to a ipld.NodeStat object equivalent // sent by: DAG_STAT map nodeStats = 5; + // The number of removal operations performed. + // sent by: DAG_REMOVE + uint64 count = 6; } // IPLDStat is statistics about an individual dag node @@ -377,6 +398,10 @@ message KeystoreResponse { message PersistRequest { // cids to persist locally repeated string cids = 1; + // optional reference ID to mark the cids with + string refID = 2; + // if refID is set, allows progressive upload + bool progressive = 5; } message PersistResponse { diff --git a/pb/pubsub.proto b/pb/pubsub.proto index cdc405a..e6aadcd 100644 --- a/pb/pubsub.proto +++ b/pb/pubsub.proto @@ -17,7 +17,7 @@ enum PSREQTYPE { PS_LIST_PEERS = 1; // PS_SUBSCRIBE is used to establish a persistent subscription to a pubsub topic PS_SUBSCRIBE = 2; - // PS_PUBLISH is used to publisbh a message to a pubsub topic + // PS_PUBLISH is used to publish a message to a pubsub topic PS_PUBLISH = 3; } diff --git a/pb/util.proto b/pb/util.proto index fddf1ed..3993904 100644 --- a/pb/util.proto +++ b/pb/util.proto @@ -8,4 +8,4 @@ message PutResponse { } // Empty is an empty message -message Empty { } \ No newline at end of file +message Empty {} diff --git a/py/admin_pb2_grpc.py b/py/admin_pb2_grpc.py index 8f56c85..d4f3c3e 100644 --- a/py/admin_pb2_grpc.py +++ b/py/admin_pb2_grpc.py @@ -5,59 +5,97 @@ class AdminAPIStub(object): - """AdminAPI facilitates administrative management of TemporalX via a localhost gRPC API - """ + """AdminAPI facilitates administrative management of TemporalX via a localhost gRPC API + """ - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.ManageGC = channel.unary_unary( - '/pb.AdminAPI/ManageGC', - request_serializer=admin__pb2.ManageGCRequest.SerializeToString, - response_deserializer=admin__pb2.ManageGCResponse.FromString, - ) - self.RefCount = channel.unary_unary( - '/pb.AdminAPI/RefCount', - request_serializer=admin__pb2.RefCountRequest.SerializeToString, - response_deserializer=admin__pb2.RefCountResponse.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.ManageGC = channel.unary_unary( + '/pb.AdminAPI/ManageGC', + request_serializer=admin__pb2.ManageGCRequest.SerializeToString, + response_deserializer=admin__pb2.ManageGCResponse.FromString, + ) + self.RefCount = channel.unary_unary( + '/pb.AdminAPI/RefCount', + request_serializer=admin__pb2.RefCountRequest.SerializeToString, + response_deserializer=admin__pb2.RefCountResponse.FromString, + ) class AdminAPIServicer(object): - """AdminAPI facilitates administrative management of TemporalX via a localhost gRPC API - """ - - def ManageGC(self, request, context): - """ManageGC is used to manage TemporalX's garbage collection process + """AdminAPI facilitates administrative management of TemporalX via a localhost gRPC API """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - def RefCount(self, request, context): - """RefCount is used to analyze the counter store and pull reference count information - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def ManageGC(self, request, context): + """ManageGC is used to manage TemporalX's garbage collection process + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def RefCount(self, request, context): + """RefCount is used to analyze the counter store and pull reference count information + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_AdminAPIServicer_to_server(servicer, server): - rpc_method_handlers = { - 'ManageGC': grpc.unary_unary_rpc_method_handler( - servicer.ManageGC, - request_deserializer=admin__pb2.ManageGCRequest.FromString, - response_serializer=admin__pb2.ManageGCResponse.SerializeToString, - ), - 'RefCount': grpc.unary_unary_rpc_method_handler( - servicer.RefCount, - request_deserializer=admin__pb2.RefCountRequest.FromString, - response_serializer=admin__pb2.RefCountResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'pb.AdminAPI', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'ManageGC': grpc.unary_unary_rpc_method_handler( + servicer.ManageGC, + request_deserializer=admin__pb2.ManageGCRequest.FromString, + response_serializer=admin__pb2.ManageGCResponse.SerializeToString, + ), + 'RefCount': grpc.unary_unary_rpc_method_handler( + servicer.RefCount, + request_deserializer=admin__pb2.RefCountRequest.FromString, + response_serializer=admin__pb2.RefCountResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pb.AdminAPI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class AdminAPI(object): + """AdminAPI facilitates administrative management of TemporalX via a localhost gRPC API + """ + + @staticmethod + def ManageGC(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.AdminAPI/ManageGC', + admin__pb2.ManageGCRequest.SerializeToString, + admin__pb2.ManageGCResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def RefCount(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.AdminAPI/RefCount', + admin__pb2.RefCountRequest.SerializeToString, + admin__pb2.RefCountResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/py/file_pb2.py b/py/file_pb2.py index e754902..4e01649 100644 --- a/py/file_pb2.py +++ b/py/file_pb2.py @@ -19,7 +19,7 @@ package='pb', syntax='proto3', serialized_options=None, - serialized_pb=b'\n\nfile.proto\x12\x02pb\x1a\nutil.proto\"K\n\rUploadRequest\x12\x16\n\x04\x62lob\x18\x01 \x01(\x0b\x32\x08.pb.Blob\x12\"\n\x07options\x18\x02 \x01(\x0b\x32\x11.pb.UploadOptions\"C\n\rUploadOptions\x12\x11\n\tmultiHash\x18\x01 \x01(\t\x12\x0e\n\x06layout\x18\x02 \x01(\t\x12\x0f\n\x07\x63hunker\x18\x03 \x01(\t\"X\n\x0f\x44ownloadRequest\x12\x0c\n\x04hash\x18\x01 \x01(\t\x12\x11\n\tchunkSize\x18\x02 \x01(\x05\x12\x12\n\nrangeStart\x18\x03 \x01(\x04\x12\x10\n\x08rangeEnd\x18\x04 \x01(\x04\"*\n\x10\x44ownloadResponse\x12\x16\n\x04\x62lob\x18\x01 \x01(\x0b\x32\x08.pb.Blob\"=\n\x04\x42lob\x12\x0f\n\x07\x63ontent\x18\x01 \x01(\x0c\x12\x12\n\nrangeStart\x18\x02 \x01(\x04\x12\x10\n\x08rangeEnd\x18\x03 \x01(\x04\x32~\n\x07\x46ileAPI\x12\x34\n\nUploadFile\x12\x11.pb.UploadRequest\x1a\x0f.pb.PutResponse\"\x00(\x01\x12=\n\x0c\x44ownloadFile\x12\x13.pb.DownloadRequest\x1a\x14.pb.DownloadResponse\"\x00\x30\x01\x62\x06proto3' + serialized_pb=b'\n\nfile.proto\x12\x02pb\x1a\nutil.proto\"K\n\rUploadRequest\x12\x16\n\x04\x62lob\x18\x01 \x01(\x0b\x32\x08.pb.Blob\x12\"\n\x07options\x18\x02 \x01(\x0b\x32\x11.pb.UploadOptions\"x\n\rUploadOptions\x12\x11\n\tmultiHash\x18\x01 \x01(\t\x12\x0e\n\x06layout\x18\x02 \x01(\t\x12\x0f\n\x07\x63hunker\x18\x03 \x01(\t\x12\r\n\x05refID\x18\x04 \x01(\t\x12\x13\n\x0bprogressive\x18\x05 \x01(\x08\x12\x0f\n\x07replace\x18\x06 \x01(\x08\"X\n\x0f\x44ownloadRequest\x12\x0c\n\x04hash\x18\x01 \x01(\t\x12\x11\n\tchunkSize\x18\x02 \x01(\x05\x12\x12\n\nrangeStart\x18\x03 \x01(\x04\x12\x10\n\x08rangeEnd\x18\x04 \x01(\x04\"*\n\x10\x44ownloadResponse\x12\x16\n\x04\x62lob\x18\x01 \x01(\x0b\x32\x08.pb.Blob\"=\n\x04\x42lob\x12\x0f\n\x07\x63ontent\x18\x01 \x01(\x0c\x12\x12\n\nrangeStart\x18\x02 \x01(\x04\x12\x10\n\x08rangeEnd\x18\x03 \x01(\x04\"m\n\rRemoveRequest\x12-\n\x06refIDs\x18\x01 \x03(\x0b\x32\x1d.pb.RemoveRequest.RefIDsEntry\x1a-\n\x0bRefIDsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x1f\n\x0eRemoveResponse\x12\r\n\x05\x63ount\x18\x01 \x01(\x04\x32\xb5\x01\n\x07\x46ileAPI\x12\x34\n\nUploadFile\x12\x11.pb.UploadRequest\x1a\x0f.pb.PutResponse\"\x00(\x01\x12=\n\x0c\x44ownloadFile\x12\x13.pb.DownloadRequest\x1a\x14.pb.DownloadResponse\"\x00\x30\x01\x12\x35\n\nRemoveFile\x12\x11.pb.RemoveRequest\x1a\x12.pb.RemoveResponse\"\x00\x62\x06proto3' , dependencies=[util__pb2.DESCRIPTOR,]) @@ -92,6 +92,27 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='refID', full_name='pb.UploadOptions.refID', index=3, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='progressive', full_name='pb.UploadOptions.progressive', index=4, + number=5, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='replace', full_name='pb.UploadOptions.replace', index=5, + number=6, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -105,7 +126,7 @@ oneofs=[ ], serialized_start=107, - serialized_end=174, + serialized_end=227, ) @@ -156,8 +177,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=176, - serialized_end=264, + serialized_start=229, + serialized_end=317, ) @@ -187,8 +208,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=266, - serialized_end=308, + serialized_start=319, + serialized_end=361, ) @@ -232,18 +253,121 @@ extension_ranges=[], oneofs=[ ], - serialized_start=310, - serialized_end=371, + serialized_start=363, + serialized_end=424, +) + + +_REMOVEREQUEST_REFIDSENTRY = _descriptor.Descriptor( + name='RefIDsEntry', + full_name='pb.RemoveRequest.RefIDsEntry', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='key', full_name='pb.RemoveRequest.RefIDsEntry.key', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='value', full_name='pb.RemoveRequest.RefIDsEntry.value', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=b'8\001', + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=490, + serialized_end=535, +) + +_REMOVEREQUEST = _descriptor.Descriptor( + name='RemoveRequest', + full_name='pb.RemoveRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='refIDs', full_name='pb.RemoveRequest.refIDs', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[_REMOVEREQUEST_REFIDSENTRY, ], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=426, + serialized_end=535, +) + + +_REMOVERESPONSE = _descriptor.Descriptor( + name='RemoveResponse', + full_name='pb.RemoveResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='count', full_name='pb.RemoveResponse.count', index=0, + number=1, type=4, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=537, + serialized_end=568, ) _UPLOADREQUEST.fields_by_name['blob'].message_type = _BLOB _UPLOADREQUEST.fields_by_name['options'].message_type = _UPLOADOPTIONS _DOWNLOADRESPONSE.fields_by_name['blob'].message_type = _BLOB +_REMOVEREQUEST_REFIDSENTRY.containing_type = _REMOVEREQUEST +_REMOVEREQUEST.fields_by_name['refIDs'].message_type = _REMOVEREQUEST_REFIDSENTRY DESCRIPTOR.message_types_by_name['UploadRequest'] = _UPLOADREQUEST DESCRIPTOR.message_types_by_name['UploadOptions'] = _UPLOADOPTIONS DESCRIPTOR.message_types_by_name['DownloadRequest'] = _DOWNLOADREQUEST DESCRIPTOR.message_types_by_name['DownloadResponse'] = _DOWNLOADRESPONSE DESCRIPTOR.message_types_by_name['Blob'] = _BLOB +DESCRIPTOR.message_types_by_name['RemoveRequest'] = _REMOVEREQUEST +DESCRIPTOR.message_types_by_name['RemoveResponse'] = _REMOVERESPONSE _sym_db.RegisterFileDescriptor(DESCRIPTOR) UploadRequest = _reflection.GeneratedProtocolMessageType('UploadRequest', (_message.Message,), { @@ -281,7 +405,30 @@ }) _sym_db.RegisterMessage(Blob) +RemoveRequest = _reflection.GeneratedProtocolMessageType('RemoveRequest', (_message.Message,), { + 'RefIDsEntry' : _reflection.GeneratedProtocolMessageType('RefIDsEntry', (_message.Message,), { + 'DESCRIPTOR' : _REMOVEREQUEST_REFIDSENTRY, + '__module__' : 'file_pb2' + # @@protoc_insertion_point(class_scope:pb.RemoveRequest.RefIDsEntry) + }) + , + 'DESCRIPTOR' : _REMOVEREQUEST, + '__module__' : 'file_pb2' + # @@protoc_insertion_point(class_scope:pb.RemoveRequest) + }) +_sym_db.RegisterMessage(RemoveRequest) +_sym_db.RegisterMessage(RemoveRequest.RefIDsEntry) + +RemoveResponse = _reflection.GeneratedProtocolMessageType('RemoveResponse', (_message.Message,), { + 'DESCRIPTOR' : _REMOVERESPONSE, + '__module__' : 'file_pb2' + # @@protoc_insertion_point(class_scope:pb.RemoveResponse) + }) +_sym_db.RegisterMessage(RemoveResponse) + + +_REMOVEREQUEST_REFIDSENTRY._options = None _FILEAPI = _descriptor.ServiceDescriptor( name='FileAPI', @@ -289,8 +436,8 @@ file=DESCRIPTOR, index=0, serialized_options=None, - serialized_start=373, - serialized_end=499, + serialized_start=571, + serialized_end=752, methods=[ _descriptor.MethodDescriptor( name='UploadFile', @@ -310,6 +457,15 @@ output_type=_DOWNLOADRESPONSE, serialized_options=None, ), + _descriptor.MethodDescriptor( + name='RemoveFile', + full_name='pb.FileAPI.RemoveFile', + index=2, + containing_service=None, + input_type=_REMOVEREQUEST, + output_type=_REMOVERESPONSE, + serialized_options=None, + ), ]) _sym_db.RegisterServiceDescriptor(_FILEAPI) diff --git a/py/file_pb2_grpc.py b/py/file_pb2_grpc.py index 46744b2..1bbc72a 100644 --- a/py/file_pb2_grpc.py +++ b/py/file_pb2_grpc.py @@ -6,59 +6,130 @@ class FileAPIStub(object): - """FileAPI provides a gRPC api to upload/download files as UnixFS objects - """ + """FileAPI provides a gRPC api to upload/download files as UnixFS objects + """ - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.UploadFile = channel.stream_unary( - '/pb.FileAPI/UploadFile', - request_serializer=file__pb2.UploadRequest.SerializeToString, - response_deserializer=util__pb2.PutResponse.FromString, - ) - self.DownloadFile = channel.unary_stream( - '/pb.FileAPI/DownloadFile', - request_serializer=file__pb2.DownloadRequest.SerializeToString, - response_deserializer=file__pb2.DownloadResponse.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.UploadFile = channel.stream_unary( + '/pb.FileAPI/UploadFile', + request_serializer=file__pb2.UploadRequest.SerializeToString, + response_deserializer=util__pb2.PutResponse.FromString, + ) + self.DownloadFile = channel.unary_stream( + '/pb.FileAPI/DownloadFile', + request_serializer=file__pb2.DownloadRequest.SerializeToString, + response_deserializer=file__pb2.DownloadResponse.FromString, + ) + self.RemoveFile = channel.unary_unary( + '/pb.FileAPI/RemoveFile', + request_serializer=file__pb2.RemoveRequest.SerializeToString, + response_deserializer=file__pb2.RemoveResponse.FromString, + ) class FileAPIServicer(object): - """FileAPI provides a gRPC api to upload/download files as UnixFS objects - """ - - def UploadFile(self, request_iterator, context): - """UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs add) + """FileAPI provides a gRPC api to upload/download files as UnixFS objects """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - def DownloadFile(self, request, context): - """DownloadFile allows downloading a UnixFS object (equivalent to ipfs get) - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def UploadFile(self, request_iterator, context): + """UploadFile allows uploading a file as a UnixFS object (equivalent to ipfs pin add) + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def DownloadFile(self, request, context): + """DownloadFile allows downloading a UnixFS object (equivalent to ipfs get) + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def RemoveFile(self, request, context): + """RemoveFile allows removing a UnixFS object or decrease it's reference counter (equivalent to ipfs pin rm) + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_FileAPIServicer_to_server(servicer, server): - rpc_method_handlers = { - 'UploadFile': grpc.stream_unary_rpc_method_handler( - servicer.UploadFile, - request_deserializer=file__pb2.UploadRequest.FromString, - response_serializer=util__pb2.PutResponse.SerializeToString, - ), - 'DownloadFile': grpc.unary_stream_rpc_method_handler( - servicer.DownloadFile, - request_deserializer=file__pb2.DownloadRequest.FromString, - response_serializer=file__pb2.DownloadResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'pb.FileAPI', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'UploadFile': grpc.stream_unary_rpc_method_handler( + servicer.UploadFile, + request_deserializer=file__pb2.UploadRequest.FromString, + response_serializer=util__pb2.PutResponse.SerializeToString, + ), + 'DownloadFile': grpc.unary_stream_rpc_method_handler( + servicer.DownloadFile, + request_deserializer=file__pb2.DownloadRequest.FromString, + response_serializer=file__pb2.DownloadResponse.SerializeToString, + ), + 'RemoveFile': grpc.unary_unary_rpc_method_handler( + servicer.RemoveFile, + request_deserializer=file__pb2.RemoveRequest.FromString, + response_serializer=file__pb2.RemoveResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pb.FileAPI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class FileAPI(object): + """FileAPI provides a gRPC api to upload/download files as UnixFS objects + """ + + @staticmethod + def UploadFile(request_iterator, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.stream_unary(request_iterator, target, '/pb.FileAPI/UploadFile', + file__pb2.UploadRequest.SerializeToString, + util__pb2.PutResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def DownloadFile(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/pb.FileAPI/DownloadFile', + file__pb2.DownloadRequest.SerializeToString, + file__pb2.DownloadResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def RemoveFile(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.FileAPI/RemoveFile', + file__pb2.RemoveRequest.SerializeToString, + file__pb2.RemoveResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/py/namesys_pb2_grpc.py b/py/namesys_pb2_grpc.py index a7f0784..6322ca9 100644 --- a/py/namesys_pb2_grpc.py +++ b/py/namesys_pb2_grpc.py @@ -6,77 +6,131 @@ class NameSysAPIStub(object): - """NameSysAPI provides a generic name resolution API - """ + """NameSysAPI provides a generic name resolution API + """ - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.NameSysResolve = channel.unary_unary( - '/pb.NameSysAPI/NameSysResolve', - request_serializer=namesys__pb2.NameSysResolveRequest.SerializeToString, - response_deserializer=namesys__pb2.NameSysResolveResult.FromString, - ) - self.NameSysResolveAsync = channel.unary_stream( - '/pb.NameSysAPI/NameSysResolveAsync', - request_serializer=namesys__pb2.NameSysResolveRequest.SerializeToString, - response_deserializer=namesys__pb2.NameSysResolveResult.FromString, - ) - self.NameSysPublish = channel.unary_unary( - '/pb.NameSysAPI/NameSysPublish', - request_serializer=namesys__pb2.NameSysPublishRequest.SerializeToString, - response_deserializer=util__pb2.Empty.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.NameSysResolve = channel.unary_unary( + '/pb.NameSysAPI/NameSysResolve', + request_serializer=namesys__pb2.NameSysResolveRequest.SerializeToString, + response_deserializer=namesys__pb2.NameSysResolveResult.FromString, + ) + self.NameSysResolveAsync = channel.unary_stream( + '/pb.NameSysAPI/NameSysResolveAsync', + request_serializer=namesys__pb2.NameSysResolveRequest.SerializeToString, + response_deserializer=namesys__pb2.NameSysResolveResult.FromString, + ) + self.NameSysPublish = channel.unary_unary( + '/pb.NameSysAPI/NameSysPublish', + request_serializer=namesys__pb2.NameSysPublishRequest.SerializeToString, + response_deserializer=util__pb2.Empty.FromString, + ) class NameSysAPIServicer(object): - """NameSysAPI provides a generic name resolution API - """ - - def NameSysResolve(self, request, context): - """NameSysResolve is used to resolve a name, waiting for the request to complete + """NameSysAPI provides a generic name resolution API """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - def NameSysResolveAsync(self, request, context): - """NameSysResolveAsync is like Resolve, except instead of waiting for the request - to complete, we send back a stream which we will send the result on - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def NameSysResolve(self, request, context): + """NameSysResolve is used to resolve a name, waiting for the request to complete + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def NameSysPublish(self, request, context): - """NameSysPublish is used to publish an IPNS record, with/with-out an EOL - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def NameSysResolveAsync(self, request, context): + """NameSysResolveAsync is like Resolve, except instead of waiting for the request + to complete, we send back a stream which we will send the result on + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def NameSysPublish(self, request, context): + """NameSysPublish is used to publish an IPNS record, with/with-out an EOL + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_NameSysAPIServicer_to_server(servicer, server): - rpc_method_handlers = { - 'NameSysResolve': grpc.unary_unary_rpc_method_handler( - servicer.NameSysResolve, - request_deserializer=namesys__pb2.NameSysResolveRequest.FromString, - response_serializer=namesys__pb2.NameSysResolveResult.SerializeToString, - ), - 'NameSysResolveAsync': grpc.unary_stream_rpc_method_handler( - servicer.NameSysResolveAsync, - request_deserializer=namesys__pb2.NameSysResolveRequest.FromString, - response_serializer=namesys__pb2.NameSysResolveResult.SerializeToString, - ), - 'NameSysPublish': grpc.unary_unary_rpc_method_handler( - servicer.NameSysPublish, - request_deserializer=namesys__pb2.NameSysPublishRequest.FromString, - response_serializer=util__pb2.Empty.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'pb.NameSysAPI', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'NameSysResolve': grpc.unary_unary_rpc_method_handler( + servicer.NameSysResolve, + request_deserializer=namesys__pb2.NameSysResolveRequest.FromString, + response_serializer=namesys__pb2.NameSysResolveResult.SerializeToString, + ), + 'NameSysResolveAsync': grpc.unary_stream_rpc_method_handler( + servicer.NameSysResolveAsync, + request_deserializer=namesys__pb2.NameSysResolveRequest.FromString, + response_serializer=namesys__pb2.NameSysResolveResult.SerializeToString, + ), + 'NameSysPublish': grpc.unary_unary_rpc_method_handler( + servicer.NameSysPublish, + request_deserializer=namesys__pb2.NameSysPublishRequest.FromString, + response_serializer=util__pb2.Empty.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pb.NameSysAPI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class NameSysAPI(object): + """NameSysAPI provides a generic name resolution API + """ + + @staticmethod + def NameSysResolve(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NameSysAPI/NameSysResolve', + namesys__pb2.NameSysResolveRequest.SerializeToString, + namesys__pb2.NameSysResolveResult.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def NameSysResolveAsync(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/pb.NameSysAPI/NameSysResolveAsync', + namesys__pb2.NameSysResolveRequest.SerializeToString, + namesys__pb2.NameSysResolveResult.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def NameSysPublish(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NameSysAPI/NameSysPublish', + namesys__pb2.NameSysPublishRequest.SerializeToString, + util__pb2.Empty.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/py/node_pb2.py b/py/node_pb2.py index d1afe0c..e2d2903 100644 --- a/py/node_pb2.py +++ b/py/node_pb2.py @@ -20,7 +20,7 @@ package='pb', syntax='proto3', serialized_options=None, - serialized_pb=b'\n\nnode.proto\x12\x02pb\x1a\nutil.proto\"\xde\x01\n\nP2PRequest\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.P2PREQTYPE\x12\x0b\n\x03\x61ll\x18\x02 \x01(\x08\x12\x0f\n\x07verbose\x18\x03 \x01(\x08\x12\x14\n\x0cprotocolName\x18\x04 \x01(\t\x12\x15\n\rlistenAddress\x18\x05 \x01(\t\x12\x15\n\rtargetAddress\x18\x06 \x01(\t\x12\x15\n\rremoteAddress\x18\x07 \x01(\t\x12\x1c\n\x14\x61llowCustomProtocols\x18\x08 \x01(\x08\x12\x14\n\x0creportPeerID\x18\t \x01(\x08\"z\n\x0bP2PResponse\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.P2PREQTYPE\x12\r\n\x05names\x18\x02 \x03(\t\x12\x13\n\x0b\x63onnsClosed\x18\x03 \x01(\x05\x12\"\n\x0bstreamInfos\x18\x04 \x03(\x0b\x32\r.pb.P2PLsInfo\"^\n\tP2PLsInfo\x12\x14\n\x0cprotocolName\x18\x01 \x01(\t\x12\x15\n\rlistenAddress\x18\x02 \x01(\t\x12\x15\n\rtargetAddress\x18\x03 \x01(\t\x12\r\n\x05local\x18\x04 \x01(\x08\"#\n\x10GetPeersResponse\x12\x0f\n\x07peerIDs\x18\x01 \x03(\t\"`\n\x0f\x43onnMgmtRequest\x12(\n\x0brequestType\x18\x01 \x01(\x0e\x32\x13.pb.CONNMGMTREQTYPE\x12\x12\n\nmultiAddrs\x18\x02 \x03(\t\x12\x0f\n\x07peerIDs\x18\x03 \x03(\t\"\xac\x02\n\x10\x43onnMgmtResponse\x12(\n\x0brequestType\x18\x01 \x01(\x0e\x32\x13.pb.CONNMGMTREQTYPE\x12\x36\n\tconnected\x18\x02 \x03(\x0b\x32#.pb.ConnMgmtResponse.ConnectedEntry\x12\x30\n\x06status\x18\x03 \x03(\x0b\x32 .pb.ConnMgmtResponse.StatusEntry\x12\x0f\n\x07peerIDs\x18\x04 \x03(\t\x1a\x30\n\x0e\x43onnectedEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x08:\x02\x38\x01\x1a\x41\n\x0bStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.pb.ConnMgmtStatus:\x02\x38\x01\"6\n\x0e\x43onnMgmtStatus\x12\x14\n\x0c\x64isconnected\x18\x01 \x01(\x08\x12\x0e\n\x06reason\x18\x02 \x01(\t\"^\n\rExtrasRequest\x12&\n\x0brequestType\x18\x01 \x01(\x0e\x32\x11.pb.EXTRASREQTYPE\x12%\n\rextrasFeature\x18\x02 \x01(\x0e\x32\x0e.pb.EXTRASTYPE\"\x99\x01\n\x11\x42lockstoreRequest\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.BSREQTYPE\x12\x1e\n\x07reqOpts\x18\x02 \x03(\x0e\x32\r.pb.BSREQOPTS\x12\x0c\n\x04\x63ids\x18\x03 \x03(\t\x12\x0c\n\x04\x64\x61ta\x18\x04 \x03(\x0c\x12\x12\n\ncidVersion\x18\x05 \x01(\t\x12\x10\n\x08hashFunc\x18\x07 \x01(\t\"S\n\x12\x42lockstoreResponse\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.BSREQTYPE\x12\x19\n\x06\x62locks\x18\x02 \x03(\x0b\x32\t.pb.Block\"0\n\x05\x42lock\x12\x0b\n\x03\x63id\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x12\x0c\n\x04size\x18\x03 \x01(\x03\"\x80\x02\n\nDagRequest\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.DAGREQTYPE\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x12\x16\n\x0eobjectEncoding\x18\x03 \x01(\t\x12\x1b\n\x13serializationFormat\x18\x04 \x01(\t\x12\x10\n\x08hashFunc\x18\x05 \x01(\t\x12\x12\n\ncidVersion\x18\x06 \x01(\x03\x12\x0c\n\x04hash\x18\x07 \x01(\t\x12(\n\x05links\x18\x08 \x03(\x0b\x32\x19.pb.DagRequest.LinksEntry\x1a,\n\nLinksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xe3\x01\n\x0b\x44\x61gResponse\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.DAGREQTYPE\x12\x0e\n\x06hashes\x18\x02 \x03(\t\x12\x0f\n\x07rawData\x18\x03 \x01(\x0c\x12\x1b\n\x05links\x18\x04 \x03(\x0b\x32\x0c.pb.IPLDLink\x12\x31\n\tnodeStats\x18\x05 \x03(\x0b\x32\x1e.pb.DagResponse.NodeStatsEntry\x1a>\n\x0eNodeStatsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x1b\n\x05value\x18\x02 \x01(\x0b\x32\x0c.pb.IPLDStat:\x02\x38\x01\"k\n\x08IPLDStat\x12\x10\n\x08numLinks\x18\x01 \x01(\x03\x12\x11\n\tblockSize\x18\x02 \x01(\x03\x12\x10\n\x08linkSize\x18\x03 \x01(\x03\x12\x16\n\x0e\x63umulativeSize\x18\x04 \x01(\x03\x12\x10\n\x08\x64\x61taSize\x18\x05 \x01(\x03\"4\n\x08IPLDLink\x12\x0c\n\x04hash\x18\x01 \x01(\x0c\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04size\x18\x03 \x01(\x04\"5\n\x08IPLDNode\x12\x1b\n\x05links\x18\x02 \x03(\x0b\x32\x0c.pb.IPLDLink\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"W\n\x0fKeystoreRequest\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.KSREQTYPE\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nprivateKey\x18\x03 \x01(\x0c\"i\n\x10KeystoreResponse\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.KSREQTYPE\x12\x12\n\nprivateKey\x18\x02 \x01(\x0c\x12\x10\n\x08keyNames\x18\x03 \x03(\t\x12\x0b\n\x03has\x18\x04 \x01(\x08\"\x1e\n\x0ePersistRequest\x12\x0c\n\x04\x63ids\x18\x01 \x03(\t\"\xd1\x01\n\x0fPersistResponse\x12/\n\x06status\x18\x01 \x03(\x0b\x32\x1f.pb.PersistResponse.StatusEntry\x12/\n\x06\x65rrors\x18\x02 \x03(\x0b\x32\x1f.pb.PersistResponse.ErrorsEntry\x1a-\n\x0bStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x08:\x02\x38\x01\x1a-\n\x0b\x45rrorsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01*8\n\nP2PREQTYPE\x12\t\n\x05\x43LOSE\x10\x00\x12\x0b\n\x07\x46ORWARD\x10\x01\x12\n\n\x06LISTEN\x10\x02\x12\x06\n\x02LS\x10\x03*U\n\x0f\x43ONNMGMTREQTYPE\x12\x0e\n\nCM_CONNECT\x10\x00\x12\x11\n\rCM_DISCONNECT\x10\x01\x12\r\n\tCM_STATUS\x10\x02\x12\x10\n\x0c\x43M_GET_PEERS\x10\x03*.\n\rEXTRASREQTYPE\x12\r\n\tEX_ENABLE\x10\x00\x12\x0e\n\nEX_DISABLE\x10\x01*?\n\nEXTRASTYPE\x12\x0c\n\x08IDENTIFY\x10\x00\x12\n\n\x06PUBSUB\x10\x01\x12\r\n\tDISCOVERY\x10\x02\x12\x08\n\x04MDNS\x10\x03*\xbb\x01\n\tBSREQTYPE\x12\r\n\tBS_DELETE\x10\x00\x12\n\n\x06\x42S_PUT\x10\x01\x12\x0f\n\x0b\x42S_PUT_MANY\x10\x02\x12\n\n\x06\x42S_GET\x10\x03\x12\x0f\n\x0b\x42S_GET_MANY\x10\x04\x12\x0e\n\nBS_GET_ALL\x10\x05\x12\x10\n\x0c\x42S_GET_STATS\x10\x06\x12\n\n\x06\x42S_HAS\x10\x07\x12\x1a\n\x16\x42S_HASH_ON_READ_ENABLE\x10\x08\x12\x1b\n\x17\x42S_HASH_ON_READ_DISABLE\x10\t*&\n\tBSREQOPTS\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\x0c\n\x08\x42S_FORCE\x10\x01*l\n\nDAGREQTYPE\x12\x0b\n\x07\x44\x41G_PUT\x10\x00\x12\x0b\n\x07\x44\x41G_GET\x10\x01\x12\x10\n\x0c\x44\x41G_NEW_NODE\x10\x02\x12\x11\n\rDAG_ADD_LINKS\x10\x03\x12\x11\n\rDAG_GET_LINKS\x10\x04\x12\x0c\n\x08\x44\x41G_STAT\x10\x05*K\n\tKSREQTYPE\x12\n\n\x06KS_HAS\x10\x00\x12\n\n\x06KS_GET\x10\x01\x12\n\n\x06KS_PUT\x10\x02\x12\r\n\tKS_DELETE\x10\x03\x12\x0b\n\x07KS_LIST\x10\x04\x32\xb7\x03\n\x07NodeAPI\x12\x37\n\x08\x43onnMgmt\x12\x13.pb.ConnMgmtRequest\x1a\x14.pb.ConnMgmtResponse\"\x00\x12(\n\x06\x45xtras\x12\x11.pb.ExtrasRequest\x1a\t.pb.Empty\"\x00\x12(\n\x03P2P\x12\x0e.pb.P2PRequest\x1a\x0f.pb.P2PResponse\"\x00\x12=\n\nBlockstore\x12\x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreResponse\"\x00\x12G\n\x10\x42lockstoreStream\x12\x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreResponse\"\x00(\x01\x30\x01\x12(\n\x03\x44\x61g\x12\x0e.pb.DagRequest\x1a\x0f.pb.DagResponse\"\x00\x12\x37\n\x08Keystore\x12\x13.pb.KeystoreRequest\x1a\x14.pb.KeystoreResponse\"\x00\x12\x34\n\x07Persist\x12\x12.pb.PersistRequest\x1a\x13.pb.PersistResponse\"\x00\x62\x06proto3' + serialized_pb=b'\n\nnode.proto\x12\x02pb\x1a\nutil.proto\"\xde\x01\n\nP2PRequest\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.P2PREQTYPE\x12\x0b\n\x03\x61ll\x18\x02 \x01(\x08\x12\x0f\n\x07verbose\x18\x03 \x01(\x08\x12\x14\n\x0cprotocolName\x18\x04 \x01(\t\x12\x15\n\rlistenAddress\x18\x05 \x01(\t\x12\x15\n\rtargetAddress\x18\x06 \x01(\t\x12\x15\n\rremoteAddress\x18\x07 \x01(\t\x12\x1c\n\x14\x61llowCustomProtocols\x18\x08 \x01(\x08\x12\x14\n\x0creportPeerID\x18\t \x01(\x08\"z\n\x0bP2PResponse\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.P2PREQTYPE\x12\r\n\x05names\x18\x02 \x03(\t\x12\x13\n\x0b\x63onnsClosed\x18\x03 \x01(\x05\x12\"\n\x0bstreamInfos\x18\x04 \x03(\x0b\x32\r.pb.P2PLsInfo\"^\n\tP2PLsInfo\x12\x14\n\x0cprotocolName\x18\x01 \x01(\t\x12\x15\n\rlistenAddress\x18\x02 \x01(\t\x12\x15\n\rtargetAddress\x18\x03 \x01(\t\x12\r\n\x05local\x18\x04 \x01(\x08\"#\n\x10GetPeersResponse\x12\x0f\n\x07peerIDs\x18\x01 \x03(\t\"`\n\x0f\x43onnMgmtRequest\x12(\n\x0brequestType\x18\x01 \x01(\x0e\x32\x13.pb.CONNMGMTREQTYPE\x12\x12\n\nmultiAddrs\x18\x02 \x03(\t\x12\x0f\n\x07peerIDs\x18\x03 \x03(\t\"\xac\x02\n\x10\x43onnMgmtResponse\x12(\n\x0brequestType\x18\x01 \x01(\x0e\x32\x13.pb.CONNMGMTREQTYPE\x12\x36\n\tconnected\x18\x02 \x03(\x0b\x32#.pb.ConnMgmtResponse.ConnectedEntry\x12\x30\n\x06status\x18\x03 \x03(\x0b\x32 .pb.ConnMgmtResponse.StatusEntry\x12\x0f\n\x07peerIDs\x18\x04 \x03(\t\x1a\x30\n\x0e\x43onnectedEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x08:\x02\x38\x01\x1a\x41\n\x0bStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.pb.ConnMgmtStatus:\x02\x38\x01\"6\n\x0e\x43onnMgmtStatus\x12\x14\n\x0c\x64isconnected\x18\x01 \x01(\x08\x12\x0e\n\x06reason\x18\x02 \x01(\t\"^\n\rExtrasRequest\x12&\n\x0brequestType\x18\x01 \x01(\x0e\x32\x11.pb.EXTRASREQTYPE\x12%\n\rextrasFeature\x18\x02 \x01(\x0e\x32\x0e.pb.EXTRASTYPE\"\xce\x01\n\x11\x42lockstoreRequest\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.BSREQTYPE\x12\x1e\n\x07reqOpts\x18\x02 \x03(\x0e\x32\r.pb.BSREQOPTS\x12\x0c\n\x04\x63ids\x18\x03 \x03(\t\x12\x0c\n\x04\x64\x61ta\x18\x04 \x03(\x0c\x12\x12\n\ncidVersion\x18\x05 \x01(\t\x12\x10\n\x08hashFunc\x18\x07 \x01(\t\x12\r\n\x05refID\x18\x08 \x01(\t\x12\x13\n\x0bprogressive\x18\t \x01(\x08\x12\x0f\n\x07replace\x18\n \x01(\x08\"S\n\x12\x42lockstoreResponse\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.BSREQTYPE\x12\x19\n\x06\x62locks\x18\x02 \x03(\x0b\x32\t.pb.Block\"0\n\x05\x42lock\x12\x0b\n\x03\x63id\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x12\x0c\n\x04size\x18\x03 \x01(\x03\"\xb5\x02\n\nDagRequest\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.DAGREQTYPE\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x12\x16\n\x0eobjectEncoding\x18\x03 \x01(\t\x12\x1b\n\x13serializationFormat\x18\x04 \x01(\t\x12\x10\n\x08hashFunc\x18\x05 \x01(\t\x12\x12\n\ncidVersion\x18\x06 \x01(\x03\x12\x0c\n\x04hash\x18\x07 \x01(\t\x12(\n\x05links\x18\x08 \x03(\x0b\x32\x19.pb.DagRequest.LinksEntry\x12\r\n\x05refID\x18\t \x01(\t\x12\x13\n\x0bprogressive\x18\n \x01(\x08\x12\x0f\n\x07replace\x18\x0b \x01(\x08\x1a,\n\nLinksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xf2\x01\n\x0b\x44\x61gResponse\x12#\n\x0brequestType\x18\x01 \x01(\x0e\x32\x0e.pb.DAGREQTYPE\x12\x0e\n\x06hashes\x18\x02 \x03(\t\x12\x0f\n\x07rawData\x18\x03 \x01(\x0c\x12\x1b\n\x05links\x18\x04 \x03(\x0b\x32\x0c.pb.IPLDLink\x12\x31\n\tnodeStats\x18\x05 \x03(\x0b\x32\x1e.pb.DagResponse.NodeStatsEntry\x12\r\n\x05\x63ount\x18\x06 \x01(\x04\x1a>\n\x0eNodeStatsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x1b\n\x05value\x18\x02 \x01(\x0b\x32\x0c.pb.IPLDStat:\x02\x38\x01\"k\n\x08IPLDStat\x12\x10\n\x08numLinks\x18\x01 \x01(\x03\x12\x11\n\tblockSize\x18\x02 \x01(\x03\x12\x10\n\x08linkSize\x18\x03 \x01(\x03\x12\x16\n\x0e\x63umulativeSize\x18\x04 \x01(\x03\x12\x10\n\x08\x64\x61taSize\x18\x05 \x01(\x03\"4\n\x08IPLDLink\x12\x0c\n\x04hash\x18\x01 \x01(\x0c\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04size\x18\x03 \x01(\x04\"5\n\x08IPLDNode\x12\x1b\n\x05links\x18\x02 \x03(\x0b\x32\x0c.pb.IPLDLink\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"W\n\x0fKeystoreRequest\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.KSREQTYPE\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nprivateKey\x18\x03 \x01(\x0c\"i\n\x10KeystoreResponse\x12\"\n\x0brequestType\x18\x01 \x01(\x0e\x32\r.pb.KSREQTYPE\x12\x12\n\nprivateKey\x18\x02 \x01(\x0c\x12\x10\n\x08keyNames\x18\x03 \x03(\t\x12\x0b\n\x03has\x18\x04 \x01(\x08\"B\n\x0ePersistRequest\x12\x0c\n\x04\x63ids\x18\x01 \x03(\t\x12\r\n\x05refID\x18\x02 \x01(\t\x12\x13\n\x0bprogressive\x18\x05 \x01(\x08\"\xd1\x01\n\x0fPersistResponse\x12/\n\x06status\x18\x01 \x03(\x0b\x32\x1f.pb.PersistResponse.StatusEntry\x12/\n\x06\x65rrors\x18\x02 \x03(\x0b\x32\x1f.pb.PersistResponse.ErrorsEntry\x1a-\n\x0bStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x08:\x02\x38\x01\x1a-\n\x0b\x45rrorsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01*8\n\nP2PREQTYPE\x12\t\n\x05\x43LOSE\x10\x00\x12\x0b\n\x07\x46ORWARD\x10\x01\x12\n\n\x06LISTEN\x10\x02\x12\x06\n\x02LS\x10\x03*U\n\x0f\x43ONNMGMTREQTYPE\x12\x0e\n\nCM_CONNECT\x10\x00\x12\x11\n\rCM_DISCONNECT\x10\x01\x12\r\n\tCM_STATUS\x10\x02\x12\x10\n\x0c\x43M_GET_PEERS\x10\x03*.\n\rEXTRASREQTYPE\x12\r\n\tEX_ENABLE\x10\x00\x12\x0e\n\nEX_DISABLE\x10\x01*?\n\nEXTRASTYPE\x12\x0c\n\x08IDENTIFY\x10\x00\x12\n\n\x06PUBSUB\x10\x01\x12\r\n\tDISCOVERY\x10\x02\x12\x08\n\x04MDNS\x10\x03*\xbb\x01\n\tBSREQTYPE\x12\r\n\tBS_DELETE\x10\x00\x12\n\n\x06\x42S_PUT\x10\x01\x12\x0f\n\x0b\x42S_PUT_MANY\x10\x02\x12\n\n\x06\x42S_GET\x10\x03\x12\x0f\n\x0b\x42S_GET_MANY\x10\x04\x12\x0e\n\nBS_GET_ALL\x10\x05\x12\x10\n\x0c\x42S_GET_STATS\x10\x06\x12\n\n\x06\x42S_HAS\x10\x07\x12\x1a\n\x16\x42S_HASH_ON_READ_ENABLE\x10\x08\x12\x1b\n\x17\x42S_HASH_ON_READ_DISABLE\x10\t*&\n\tBSREQOPTS\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\x0c\n\x08\x42S_FORCE\x10\x01*|\n\nDAGREQTYPE\x12\x0b\n\x07\x44\x41G_PUT\x10\x00\x12\x0b\n\x07\x44\x41G_GET\x10\x01\x12\x10\n\x0c\x44\x41G_NEW_NODE\x10\x02\x12\x11\n\rDAG_ADD_LINKS\x10\x03\x12\x11\n\rDAG_GET_LINKS\x10\x04\x12\x0c\n\x08\x44\x41G_STAT\x10\x05\x12\x0e\n\nDAG_REMOVE\x10\x06*K\n\tKSREQTYPE\x12\n\n\x06KS_HAS\x10\x00\x12\n\n\x06KS_GET\x10\x01\x12\n\n\x06KS_PUT\x10\x02\x12\r\n\tKS_DELETE\x10\x03\x12\x0b\n\x07KS_LIST\x10\x04\x32\xb7\x03\n\x07NodeAPI\x12\x37\n\x08\x43onnMgmt\x12\x13.pb.ConnMgmtRequest\x1a\x14.pb.ConnMgmtResponse\"\x00\x12(\n\x06\x45xtras\x12\x11.pb.ExtrasRequest\x1a\t.pb.Empty\"\x00\x12(\n\x03P2P\x12\x0e.pb.P2PRequest\x1a\x0f.pb.P2PResponse\"\x00\x12=\n\nBlockstore\x12\x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreResponse\"\x00\x12G\n\x10\x42lockstoreStream\x12\x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreResponse\"\x00(\x01\x30\x01\x12(\n\x03\x44\x61g\x12\x0e.pb.DagRequest\x1a\x0f.pb.DagResponse\"\x00\x12\x37\n\x08Keystore\x12\x13.pb.KeystoreRequest\x1a\x14.pb.KeystoreResponse\"\x00\x12\x34\n\x07Persist\x12\x12.pb.PersistRequest\x1a\x13.pb.PersistResponse\"\x00\x62\x06proto3' , dependencies=[util__pb2.DESCRIPTOR,]) @@ -49,8 +49,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2503, - serialized_end=2559, + serialized_start=2660, + serialized_end=2716, ) _sym_db.RegisterEnumDescriptor(_P2PREQTYPE) @@ -80,8 +80,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2561, - serialized_end=2646, + serialized_start=2718, + serialized_end=2803, ) _sym_db.RegisterEnumDescriptor(_CONNMGMTREQTYPE) @@ -103,8 +103,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2648, - serialized_end=2694, + serialized_start=2805, + serialized_end=2851, ) _sym_db.RegisterEnumDescriptor(_EXTRASREQTYPE) @@ -134,8 +134,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2696, - serialized_end=2759, + serialized_start=2853, + serialized_end=2916, ) _sym_db.RegisterEnumDescriptor(_EXTRASTYPE) @@ -189,8 +189,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2762, - serialized_end=2949, + serialized_start=2919, + serialized_end=3106, ) _sym_db.RegisterEnumDescriptor(_BSREQTYPE) @@ -212,8 +212,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2951, - serialized_end=2989, + serialized_start=3108, + serialized_end=3146, ) _sym_db.RegisterEnumDescriptor(_BSREQOPTS) @@ -248,11 +248,15 @@ name='DAG_STAT', index=5, number=5, serialized_options=None, type=None), + _descriptor.EnumValueDescriptor( + name='DAG_REMOVE', index=6, number=6, + serialized_options=None, + type=None), ], containing_type=None, serialized_options=None, - serialized_start=2991, - serialized_end=3099, + serialized_start=3148, + serialized_end=3272, ) _sym_db.RegisterEnumDescriptor(_DAGREQTYPE) @@ -286,8 +290,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=3101, - serialized_end=3176, + serialized_start=3274, + serialized_end=3349, ) _sym_db.RegisterEnumDescriptor(_KSREQTYPE) @@ -324,6 +328,7 @@ DAG_ADD_LINKS = 3 DAG_GET_LINKS = 4 DAG_STAT = 5 +DAG_REMOVE = 6 KS_HAS = 0 KS_GET = 1 KS_PUT = 2 @@ -850,6 +855,27 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='refID', full_name='pb.BlockstoreRequest.refID', index=6, + number=8, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='progressive', full_name='pb.BlockstoreRequest.progressive', index=7, + number=9, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='replace', full_name='pb.BlockstoreRequest.replace', index=8, + number=10, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -863,7 +889,7 @@ oneofs=[ ], serialized_start=1066, - serialized_end=1219, + serialized_end=1272, ) @@ -900,8 +926,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1221, - serialized_end=1304, + serialized_start=1274, + serialized_end=1357, ) @@ -945,8 +971,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1306, - serialized_end=1354, + serialized_start=1359, + serialized_end=1407, ) @@ -983,8 +1009,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1569, - serialized_end=1613, + serialized_start=1675, + serialized_end=1719, ) _DAGREQUEST = _descriptor.Descriptor( @@ -1050,6 +1076,27 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='refID', full_name='pb.DagRequest.refID', index=8, + number=9, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='progressive', full_name='pb.DagRequest.progressive', index=9, + number=10, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='replace', full_name='pb.DagRequest.replace', index=10, + number=11, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -1062,8 +1109,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1357, - serialized_end=1613, + serialized_start=1410, + serialized_end=1719, ) @@ -1100,8 +1147,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1781, - serialized_end=1843, + serialized_start=1902, + serialized_end=1964, ) _DAGRESPONSE = _descriptor.Descriptor( @@ -1146,6 +1193,13 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='count', full_name='pb.DagResponse.count', index=5, + number=6, type=4, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -1158,8 +1212,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1616, - serialized_end=1843, + serialized_start=1722, + serialized_end=1964, ) @@ -1217,8 +1271,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1845, - serialized_end=1952, + serialized_start=1966, + serialized_end=2073, ) @@ -1262,8 +1316,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1954, - serialized_end=2006, + serialized_start=2075, + serialized_end=2127, ) @@ -1300,8 +1354,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2008, - serialized_end=2061, + serialized_start=2129, + serialized_end=2182, ) @@ -1345,8 +1399,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2063, - serialized_end=2150, + serialized_start=2184, + serialized_end=2271, ) @@ -1397,8 +1451,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2152, - serialized_end=2257, + serialized_start=2273, + serialized_end=2378, ) @@ -1416,6 +1470,20 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='refID', full_name='pb.PersistRequest.refID', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='progressive', full_name='pb.PersistRequest.progressive', index=2, + number=5, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -1428,8 +1496,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2259, - serialized_end=2289, + serialized_start=2380, + serialized_end=2446, ) @@ -1466,8 +1534,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2409, - serialized_end=2454, + serialized_start=2566, + serialized_end=2611, ) _PERSISTRESPONSE_ERRORSENTRY = _descriptor.Descriptor( @@ -1503,8 +1571,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2456, - serialized_end=2501, + serialized_start=2613, + serialized_end=2658, ) _PERSISTRESPONSE = _descriptor.Descriptor( @@ -1540,8 +1608,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2292, - serialized_end=2501, + serialized_start=2449, + serialized_end=2658, ) _P2PREQUEST.fields_by_name['requestType'].enum_type = _P2PREQTYPE @@ -1807,8 +1875,8 @@ file=DESCRIPTOR, index=0, serialized_options=None, - serialized_start=3179, - serialized_end=3618, + serialized_start=3352, + serialized_end=3791, methods=[ _descriptor.MethodDescriptor( name='ConnMgmt', diff --git a/py/node_pb2_grpc.py b/py/node_pb2_grpc.py index ca653fa..87b84d4 100644 --- a/py/node_pb2_grpc.py +++ b/py/node_pb2_grpc.py @@ -6,164 +6,298 @@ class NodeAPIStub(object): - """NodeAPI provide an API to control the underlying custom ipfs node - """ + """NodeAPI provide an API to control the underlying custom ipfs node + """ - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.ConnMgmt = channel.unary_unary( - '/pb.NodeAPI/ConnMgmt', - request_serializer=node__pb2.ConnMgmtRequest.SerializeToString, - response_deserializer=node__pb2.ConnMgmtResponse.FromString, - ) - self.Extras = channel.unary_unary( - '/pb.NodeAPI/Extras', - request_serializer=node__pb2.ExtrasRequest.SerializeToString, - response_deserializer=util__pb2.Empty.FromString, - ) - self.P2P = channel.unary_unary( - '/pb.NodeAPI/P2P', - request_serializer=node__pb2.P2PRequest.SerializeToString, - response_deserializer=node__pb2.P2PResponse.FromString, - ) - self.Blockstore = channel.unary_unary( - '/pb.NodeAPI/Blockstore', - request_serializer=node__pb2.BlockstoreRequest.SerializeToString, - response_deserializer=node__pb2.BlockstoreResponse.FromString, - ) - self.BlockstoreStream = channel.stream_stream( - '/pb.NodeAPI/BlockstoreStream', - request_serializer=node__pb2.BlockstoreRequest.SerializeToString, - response_deserializer=node__pb2.BlockstoreResponse.FromString, - ) - self.Dag = channel.unary_unary( - '/pb.NodeAPI/Dag', - request_serializer=node__pb2.DagRequest.SerializeToString, - response_deserializer=node__pb2.DagResponse.FromString, - ) - self.Keystore = channel.unary_unary( - '/pb.NodeAPI/Keystore', - request_serializer=node__pb2.KeystoreRequest.SerializeToString, - response_deserializer=node__pb2.KeystoreResponse.FromString, - ) - self.Persist = channel.unary_unary( - '/pb.NodeAPI/Persist', - request_serializer=node__pb2.PersistRequest.SerializeToString, - response_deserializer=node__pb2.PersistResponse.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.ConnMgmt = channel.unary_unary( + '/pb.NodeAPI/ConnMgmt', + request_serializer=node__pb2.ConnMgmtRequest.SerializeToString, + response_deserializer=node__pb2.ConnMgmtResponse.FromString, + ) + self.Extras = channel.unary_unary( + '/pb.NodeAPI/Extras', + request_serializer=node__pb2.ExtrasRequest.SerializeToString, + response_deserializer=util__pb2.Empty.FromString, + ) + self.P2P = channel.unary_unary( + '/pb.NodeAPI/P2P', + request_serializer=node__pb2.P2PRequest.SerializeToString, + response_deserializer=node__pb2.P2PResponse.FromString, + ) + self.Blockstore = channel.unary_unary( + '/pb.NodeAPI/Blockstore', + request_serializer=node__pb2.BlockstoreRequest.SerializeToString, + response_deserializer=node__pb2.BlockstoreResponse.FromString, + ) + self.BlockstoreStream = channel.stream_stream( + '/pb.NodeAPI/BlockstoreStream', + request_serializer=node__pb2.BlockstoreRequest.SerializeToString, + response_deserializer=node__pb2.BlockstoreResponse.FromString, + ) + self.Dag = channel.unary_unary( + '/pb.NodeAPI/Dag', + request_serializer=node__pb2.DagRequest.SerializeToString, + response_deserializer=node__pb2.DagResponse.FromString, + ) + self.Keystore = channel.unary_unary( + '/pb.NodeAPI/Keystore', + request_serializer=node__pb2.KeystoreRequest.SerializeToString, + response_deserializer=node__pb2.KeystoreResponse.FromString, + ) + self.Persist = channel.unary_unary( + '/pb.NodeAPI/Persist', + request_serializer=node__pb2.PersistRequest.SerializeToString, + response_deserializer=node__pb2.PersistResponse.FromString, + ) class NodeAPIServicer(object): - """NodeAPI provide an API to control the underlying custom ipfs node - """ - - def ConnMgmt(self, request, context): - """ConnMgmt provides control over libp2p connections + """NodeAPI provide an API to control the underlying custom ipfs node """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - def Extras(self, request, context): - """Extras provide control over node extras capabilities - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def P2P(self, request, context): - """P2P allows control of generalized p2p streams for tcp/udp based protocol. - By using this RPC, we can tunnel traffic similar to ssh tunneling - except using libp2p as the transport layer, and and tcp/udp port. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def ConnMgmt(self, request, context): + """ConnMgmt provides control over libp2p connections + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def Blockstore(self, request, context): - """Blockstore allows low-level management of the underlying blockstore - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def Extras(self, request, context): + """Extras provide control over node extras capabilities + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def BlockstoreStream(self, request_iterator, context): - """BlockstoreStream is akin to Blockstore, except streamable - Once v4 is out, condense this + blockstore into a single call - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def P2P(self, request, context): + """P2P allows control of generalized p2p streams for tcp/udp based protocol. + By using this RPC, we can tunnel traffic similar to ssh tunneling + except using libp2p as the transport layer, and and tcp/udp port. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def Dag(self, request, context): - """Dag is a unidirectional rpc allowing manipulation of low-level ipld objects - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def Blockstore(self, request, context): + """Blockstore allows low-level management of the underlying blockstore + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def Keystore(self, request, context): - """Keystore is a unidirectional RPC allowing management of ipfs keystores - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def BlockstoreStream(self, request_iterator, context): + """BlockstoreStream is akin to Blockstore, except streamable + Once v4 is out, condense this + blockstore into a single call + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def Persist(self, request, context): - """Persist is used to retrieve data from the network and make it available locally - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def Dag(self, request, context): + """Dag is a unidirectional rpc allowing manipulation of low-level ipld objects + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Keystore(self, request, context): + """Keystore is a unidirectional RPC allowing management of ipfs keystores + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Persist(self, request, context): + """Persist is used to retrieve data from the network and make it available locally + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_NodeAPIServicer_to_server(servicer, server): - rpc_method_handlers = { - 'ConnMgmt': grpc.unary_unary_rpc_method_handler( - servicer.ConnMgmt, - request_deserializer=node__pb2.ConnMgmtRequest.FromString, - response_serializer=node__pb2.ConnMgmtResponse.SerializeToString, - ), - 'Extras': grpc.unary_unary_rpc_method_handler( - servicer.Extras, - request_deserializer=node__pb2.ExtrasRequest.FromString, - response_serializer=util__pb2.Empty.SerializeToString, - ), - 'P2P': grpc.unary_unary_rpc_method_handler( - servicer.P2P, - request_deserializer=node__pb2.P2PRequest.FromString, - response_serializer=node__pb2.P2PResponse.SerializeToString, - ), - 'Blockstore': grpc.unary_unary_rpc_method_handler( - servicer.Blockstore, - request_deserializer=node__pb2.BlockstoreRequest.FromString, - response_serializer=node__pb2.BlockstoreResponse.SerializeToString, - ), - 'BlockstoreStream': grpc.stream_stream_rpc_method_handler( - servicer.BlockstoreStream, - request_deserializer=node__pb2.BlockstoreRequest.FromString, - response_serializer=node__pb2.BlockstoreResponse.SerializeToString, - ), - 'Dag': grpc.unary_unary_rpc_method_handler( - servicer.Dag, - request_deserializer=node__pb2.DagRequest.FromString, - response_serializer=node__pb2.DagResponse.SerializeToString, - ), - 'Keystore': grpc.unary_unary_rpc_method_handler( - servicer.Keystore, - request_deserializer=node__pb2.KeystoreRequest.FromString, - response_serializer=node__pb2.KeystoreResponse.SerializeToString, - ), - 'Persist': grpc.unary_unary_rpc_method_handler( - servicer.Persist, - request_deserializer=node__pb2.PersistRequest.FromString, - response_serializer=node__pb2.PersistResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'pb.NodeAPI', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'ConnMgmt': grpc.unary_unary_rpc_method_handler( + servicer.ConnMgmt, + request_deserializer=node__pb2.ConnMgmtRequest.FromString, + response_serializer=node__pb2.ConnMgmtResponse.SerializeToString, + ), + 'Extras': grpc.unary_unary_rpc_method_handler( + servicer.Extras, + request_deserializer=node__pb2.ExtrasRequest.FromString, + response_serializer=util__pb2.Empty.SerializeToString, + ), + 'P2P': grpc.unary_unary_rpc_method_handler( + servicer.P2P, + request_deserializer=node__pb2.P2PRequest.FromString, + response_serializer=node__pb2.P2PResponse.SerializeToString, + ), + 'Blockstore': grpc.unary_unary_rpc_method_handler( + servicer.Blockstore, + request_deserializer=node__pb2.BlockstoreRequest.FromString, + response_serializer=node__pb2.BlockstoreResponse.SerializeToString, + ), + 'BlockstoreStream': grpc.stream_stream_rpc_method_handler( + servicer.BlockstoreStream, + request_deserializer=node__pb2.BlockstoreRequest.FromString, + response_serializer=node__pb2.BlockstoreResponse.SerializeToString, + ), + 'Dag': grpc.unary_unary_rpc_method_handler( + servicer.Dag, + request_deserializer=node__pb2.DagRequest.FromString, + response_serializer=node__pb2.DagResponse.SerializeToString, + ), + 'Keystore': grpc.unary_unary_rpc_method_handler( + servicer.Keystore, + request_deserializer=node__pb2.KeystoreRequest.FromString, + response_serializer=node__pb2.KeystoreResponse.SerializeToString, + ), + 'Persist': grpc.unary_unary_rpc_method_handler( + servicer.Persist, + request_deserializer=node__pb2.PersistRequest.FromString, + response_serializer=node__pb2.PersistResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pb.NodeAPI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class NodeAPI(object): + """NodeAPI provide an API to control the underlying custom ipfs node + """ + + @staticmethod + def ConnMgmt(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NodeAPI/ConnMgmt', + node__pb2.ConnMgmtRequest.SerializeToString, + node__pb2.ConnMgmtResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Extras(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NodeAPI/Extras', + node__pb2.ExtrasRequest.SerializeToString, + util__pb2.Empty.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def P2P(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NodeAPI/P2P', + node__pb2.P2PRequest.SerializeToString, + node__pb2.P2PResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Blockstore(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NodeAPI/Blockstore', + node__pb2.BlockstoreRequest.SerializeToString, + node__pb2.BlockstoreResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def BlockstoreStream(request_iterator, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.stream_stream(request_iterator, target, '/pb.NodeAPI/BlockstoreStream', + node__pb2.BlockstoreRequest.SerializeToString, + node__pb2.BlockstoreResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Dag(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NodeAPI/Dag', + node__pb2.DagRequest.SerializeToString, + node__pb2.DagResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Keystore(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NodeAPI/Keystore', + node__pb2.KeystoreRequest.SerializeToString, + node__pb2.KeystoreResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Persist(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.NodeAPI/Persist', + node__pb2.PersistRequest.SerializeToString, + node__pb2.PersistResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/py/pubsub_pb2_grpc.py b/py/pubsub_pb2_grpc.py index 0ac3a07..f9d5278 100644 --- a/py/pubsub_pb2_grpc.py +++ b/py/pubsub_pb2_grpc.py @@ -5,45 +5,68 @@ class PubSubAPIStub(object): - """PubSubAPI provides a libp2p pubsub API and is equivalent to go-ipfs - `ipfs pubsub` subset of commands. - """ + """PubSubAPI provides a libp2p pubsub API and is equivalent to go-ipfs + `ipfs pubsub` subset of commands. + """ - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.PubSub = channel.stream_stream( - '/pb.PubSubAPI/PubSub', - request_serializer=pubsub__pb2.PubSubRequest.SerializeToString, - response_deserializer=pubsub__pb2.PubSubResponse.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.PubSub = channel.stream_stream( + '/pb.PubSubAPI/PubSub', + request_serializer=pubsub__pb2.PubSubRequest.SerializeToString, + response_deserializer=pubsub__pb2.PubSubResponse.FromString, + ) class PubSubAPIServicer(object): - """PubSubAPI provides a libp2p pubsub API and is equivalent to go-ipfs - `ipfs pubsub` subset of commands. - """ - - def PubSub(self, request_iterator, context): - """PubSub allows controlling libp2p pubsub topics and subscriptions using - a bidirectional streaming API + """PubSubAPI provides a libp2p pubsub API and is equivalent to go-ipfs + `ipfs pubsub` subset of commands. """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + + def PubSub(self, request_iterator, context): + """PubSub allows controlling libp2p pubsub topics and subscriptions using + a bidirectional streaming API + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_PubSubAPIServicer_to_server(servicer, server): - rpc_method_handlers = { - 'PubSub': grpc.stream_stream_rpc_method_handler( - servicer.PubSub, - request_deserializer=pubsub__pb2.PubSubRequest.FromString, - response_serializer=pubsub__pb2.PubSubResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'pb.PubSubAPI', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'PubSub': grpc.stream_stream_rpc_method_handler( + servicer.PubSub, + request_deserializer=pubsub__pb2.PubSubRequest.FromString, + response_serializer=pubsub__pb2.PubSubResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pb.PubSubAPI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class PubSubAPI(object): + """PubSubAPI provides a libp2p pubsub API and is equivalent to go-ipfs + `ipfs pubsub` subset of commands. + """ + + @staticmethod + def PubSub(request_iterator, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.stream_stream(request_iterator, target, '/pb.PubSubAPI/PubSub', + pubsub__pb2.PubSubRequest.SerializeToString, + pubsub__pb2.PubSubResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/py/replication_pb2_grpc.py b/py/replication_pb2_grpc.py index abab33e..7c40ce4 100644 --- a/py/replication_pb2_grpc.py +++ b/py/replication_pb2_grpc.py @@ -5,94 +5,164 @@ class replicatorStub(object): - """The replicator provides replication services. - """ + """The replicator provides replication services. + """ - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.Add = channel.unary_stream( - '/pb.replicator/Add', - request_serializer=replication__pb2.Subscription.SerializeToString, - response_deserializer=replication__pb2.ReplicationStatus.FromString, - ) - self.Status = channel.unary_stream( - '/pb.replicator/Status', - request_serializer=replication__pb2.Subscription.SerializeToString, - response_deserializer=replication__pb2.ReplicationStatus.FromString, - ) - self.GetSubscriptionUpdate = channel.unary_unary( - '/pb.replicator/GetSubscriptionUpdate', - request_serializer=replication__pb2.Subscription.SerializeToString, - response_deserializer=replication__pb2.SubscriptionUpdate.FromString, - ) - self.SubmitReplication = channel.unary_stream( - '/pb.replicator/SubmitReplication', - request_serializer=replication__pb2.SignedSubscription.SerializeToString, - response_deserializer=replication__pb2.ReplicationStatus.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.Add = channel.unary_stream( + '/pb.replicator/Add', + request_serializer=replication__pb2.Subscription.SerializeToString, + response_deserializer=replication__pb2.ReplicationStatus.FromString, + ) + self.Status = channel.unary_stream( + '/pb.replicator/Status', + request_serializer=replication__pb2.Subscription.SerializeToString, + response_deserializer=replication__pb2.ReplicationStatus.FromString, + ) + self.GetSubscriptionUpdate = channel.unary_unary( + '/pb.replicator/GetSubscriptionUpdate', + request_serializer=replication__pb2.Subscription.SerializeToString, + response_deserializer=replication__pb2.SubscriptionUpdate.FromString, + ) + self.SubmitReplication = channel.unary_stream( + '/pb.replicator/SubmitReplication', + request_serializer=replication__pb2.SignedSubscription.SerializeToString, + response_deserializer=replication__pb2.ReplicationStatus.FromString, + ) class replicatorServicer(object): - """The replicator provides replication services. - """ - - def Add(self, request, context): - """Add is used to add a replication to this server, changing it's status from reserved to active. + """The replicator provides replication services. """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - def Status(self, request, context): - """Status returns an updating stream of the replication status on the server. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def Add(self, request, context): + """Add is used to add a replication to this server, changing it's status from reserved to active. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def GetSubscriptionUpdate(self, request, context): - """GetSubscriptionUpdate returns the latest version of subscribed replication - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def Status(self, request, context): + """Status returns an updating stream of the replication status on the server. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') - def SubmitReplication(self, request, context): - """SubmitReplication is used by client agents to start replications, after they - have uploaded the files and retrieved the cid, and collected servers to replicate too. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def GetSubscriptionUpdate(self, request, context): + """GetSubscriptionUpdate returns the latest version of subscribed replication + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubmitReplication(self, request, context): + """SubmitReplication is used by client agents to start replications, after they + have uploaded the files and retrieved the cid, and collected servers to replicate too. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_replicatorServicer_to_server(servicer, server): - rpc_method_handlers = { - 'Add': grpc.unary_stream_rpc_method_handler( - servicer.Add, - request_deserializer=replication__pb2.Subscription.FromString, - response_serializer=replication__pb2.ReplicationStatus.SerializeToString, - ), - 'Status': grpc.unary_stream_rpc_method_handler( - servicer.Status, - request_deserializer=replication__pb2.Subscription.FromString, - response_serializer=replication__pb2.ReplicationStatus.SerializeToString, - ), - 'GetSubscriptionUpdate': grpc.unary_unary_rpc_method_handler( - servicer.GetSubscriptionUpdate, - request_deserializer=replication__pb2.Subscription.FromString, - response_serializer=replication__pb2.SubscriptionUpdate.SerializeToString, - ), - 'SubmitReplication': grpc.unary_stream_rpc_method_handler( - servicer.SubmitReplication, - request_deserializer=replication__pb2.SignedSubscription.FromString, - response_serializer=replication__pb2.ReplicationStatus.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'pb.replicator', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'Add': grpc.unary_stream_rpc_method_handler( + servicer.Add, + request_deserializer=replication__pb2.Subscription.FromString, + response_serializer=replication__pb2.ReplicationStatus.SerializeToString, + ), + 'Status': grpc.unary_stream_rpc_method_handler( + servicer.Status, + request_deserializer=replication__pb2.Subscription.FromString, + response_serializer=replication__pb2.ReplicationStatus.SerializeToString, + ), + 'GetSubscriptionUpdate': grpc.unary_unary_rpc_method_handler( + servicer.GetSubscriptionUpdate, + request_deserializer=replication__pb2.Subscription.FromString, + response_serializer=replication__pb2.SubscriptionUpdate.SerializeToString, + ), + 'SubmitReplication': grpc.unary_stream_rpc_method_handler( + servicer.SubmitReplication, + request_deserializer=replication__pb2.SignedSubscription.FromString, + response_serializer=replication__pb2.ReplicationStatus.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pb.replicator', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class replicator(object): + """The replicator provides replication services. + """ + + @staticmethod + def Add(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/pb.replicator/Add', + replication__pb2.Subscription.SerializeToString, + replication__pb2.ReplicationStatus.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Status(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/pb.replicator/Status', + replication__pb2.Subscription.SerializeToString, + replication__pb2.ReplicationStatus.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetSubscriptionUpdate(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.replicator/GetSubscriptionUpdate', + replication__pb2.Subscription.SerializeToString, + replication__pb2.SubscriptionUpdate.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubmitReplication(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/pb.replicator/SubmitReplication', + replication__pb2.SignedSubscription.SerializeToString, + replication__pb2.ReplicationStatus.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/py/status_pb2_grpc.py b/py/status_pb2_grpc.py index 2377110..4d73034 100644 --- a/py/status_pb2_grpc.py +++ b/py/status_pb2_grpc.py @@ -6,59 +6,97 @@ class StatusAPIStub(object): - """provides utilities to retrieve api status information from - """ + """provides utilities to retrieve api status information from + """ - def __init__(self, channel): - """Constructor. + def __init__(self, channel): + """Constructor. - Args: - channel: A grpc.Channel. - """ - self.Version = channel.unary_unary( - '/pb.StatusAPI/Version', - request_serializer=util__pb2.Empty.SerializeToString, - response_deserializer=status__pb2.VersionResponse.FromString, - ) - self.Status = channel.unary_unary( - '/pb.StatusAPI/Status', - request_serializer=util__pb2.Empty.SerializeToString, - response_deserializer=status__pb2.StatusResponse.FromString, - ) + Args: + channel: A grpc.Channel. + """ + self.Version = channel.unary_unary( + '/pb.StatusAPI/Version', + request_serializer=util__pb2.Empty.SerializeToString, + response_deserializer=status__pb2.VersionResponse.FromString, + ) + self.Status = channel.unary_unary( + '/pb.StatusAPI/Status', + request_serializer=util__pb2.Empty.SerializeToString, + response_deserializer=status__pb2.StatusResponse.FromString, + ) class StatusAPIServicer(object): - """provides utilities to retrieve api status information from - """ - - def Version(self, request, context): - """Version is used to retrieve api version information + """provides utilities to retrieve api status information from """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - def Status(self, request, context): - """Status is used to retrieve api status information. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') + def Version(self, request, context): + """Version is used to retrieve api version information + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Status(self, request, context): + """Status is used to retrieve api status information. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_StatusAPIServicer_to_server(servicer, server): - rpc_method_handlers = { - 'Version': grpc.unary_unary_rpc_method_handler( - servicer.Version, - request_deserializer=util__pb2.Empty.FromString, - response_serializer=status__pb2.VersionResponse.SerializeToString, - ), - 'Status': grpc.unary_unary_rpc_method_handler( - servicer.Status, - request_deserializer=util__pb2.Empty.FromString, - response_serializer=status__pb2.StatusResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'pb.StatusAPI', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) + rpc_method_handlers = { + 'Version': grpc.unary_unary_rpc_method_handler( + servicer.Version, + request_deserializer=util__pb2.Empty.FromString, + response_serializer=status__pb2.VersionResponse.SerializeToString, + ), + 'Status': grpc.unary_unary_rpc_method_handler( + servicer.Status, + request_deserializer=util__pb2.Empty.FromString, + response_serializer=status__pb2.StatusResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'pb.StatusAPI', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class StatusAPI(object): + """provides utilities to retrieve api status information from + """ + + @staticmethod + def Version(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.StatusAPI/Version', + util__pb2.Empty.SerializeToString, + status__pb2.VersionResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Status(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/pb.StatusAPI/Status', + util__pb2.Empty.SerializeToString, + status__pb2.StatusResponse.FromString, + options, channel_credentials, + call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/rs/src/admin.rs b/rs/src/admin.rs index ee9b2b6..0edca78 100644 --- a/rs/src/admin.rs +++ b/rs/src/admin.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `admin.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct ManageGCRequest { @@ -96,7 +93,7 @@ impl ::protobuf::Message for ManageGCRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.field_type != GCREQTYPE::GC_START { - os.write_enum(1, self.field_type.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.field_type))?; } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) @@ -120,7 +117,7 @@ impl ::protobuf::Message for ManageGCRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -133,35 +130,25 @@ impl ::protobuf::Message for ManageGCRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "type", - |m: &ManageGCRequest| { &m.field_type }, - |m: &mut ManageGCRequest| { &mut m.field_type }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ManageGCRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "type", + |m: &ManageGCRequest| { &m.field_type }, + |m: &mut ManageGCRequest| { &mut m.field_type }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ManageGCRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ManageGCRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ManageGCRequest, - }; - unsafe { - instance.get(ManageGCRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ManageGCRequest::new) } } @@ -179,8 +166,8 @@ impl ::std::fmt::Debug for ManageGCRequest { } impl ::protobuf::reflect::ProtobufValue for ManageGCRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -289,7 +276,7 @@ impl ::protobuf::Message for ManageGCResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -302,35 +289,25 @@ impl ::protobuf::Message for ManageGCResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "status", - |m: &ManageGCResponse| { &m.status }, - |m: &mut ManageGCResponse| { &mut m.status }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ManageGCResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "status", + |m: &ManageGCResponse| { &m.status }, + |m: &mut ManageGCResponse| { &mut m.status }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ManageGCResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ManageGCResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ManageGCResponse, - }; - unsafe { - instance.get(ManageGCResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ManageGCResponse::new) } } @@ -348,8 +325,8 @@ impl ::std::fmt::Debug for ManageGCResponse { } impl ::protobuf::reflect::ProtobufValue for ManageGCResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -486,7 +463,7 @@ impl ::protobuf::Message for RefCountRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -499,40 +476,30 @@ impl ::protobuf::Message for RefCountRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "cids", - |m: &RefCountRequest| { &m.cids }, - |m: &mut RefCountRequest| { &mut m.cids }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "limit", - |m: &RefCountRequest| { &m.limit }, - |m: &mut RefCountRequest| { &mut m.limit }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "RefCountRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "cids", + |m: &RefCountRequest| { &m.cids }, + |m: &mut RefCountRequest| { &mut m.cids }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "limit", + |m: &RefCountRequest| { &m.limit }, + |m: &mut RefCountRequest| { &mut m.limit }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "RefCountRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static RefCountRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const RefCountRequest, - }; - unsafe { - instance.get(RefCountRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(RefCountRequest::new) } } @@ -551,8 +518,8 @@ impl ::std::fmt::Debug for RefCountRequest { } impl ::protobuf::reflect::ProtobufValue for RefCountRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -656,7 +623,7 @@ impl ::protobuf::Message for RefCountResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -669,35 +636,25 @@ impl ::protobuf::Message for RefCountResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeInt64>( - "cids", - |m: &RefCountResponse| { &m.cids }, - |m: &mut RefCountResponse| { &mut m.cids }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "RefCountResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeInt64>( + "cids", + |m: &RefCountResponse| { &m.cids }, + |m: &mut RefCountResponse| { &mut m.cids }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "RefCountResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static RefCountResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const RefCountResponse, - }; - unsafe { - instance.get(RefCountResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(RefCountResponse::new) } } @@ -715,8 +672,8 @@ impl ::std::fmt::Debug for RefCountResponse { } impl ::protobuf::reflect::ProtobufValue for RefCountResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -751,15 +708,10 @@ impl ::protobuf::ProtobufEnum for GCREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("GCREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("GCREQTYPE", file_descriptor_proto()) + }) } } @@ -773,8 +725,8 @@ impl ::std::default::Default for GCREQTYPE { } impl ::protobuf::reflect::ProtobufValue for GCREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -806,15 +758,10 @@ impl ::protobuf::ProtobufEnum for REFREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("REFREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("REFREQTYPE", file_descriptor_proto()) + }) } } @@ -828,8 +775,8 @@ impl ::std::default::Default for REFREQTYPE { } impl ::protobuf::reflect::ProtobufValue for REFREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -858,15 +805,10 @@ impl ::protobuf::ProtobufEnum for REFREQOPTS { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("REFREQOPTS", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("REFREQOPTS", file_descriptor_proto()) + }) } } @@ -880,8 +822,8 @@ impl ::std::default::Default for REFREQOPTS { } impl ::protobuf::reflect::ProtobufValue for REFREQOPTS { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -899,92 +841,87 @@ static file_descriptor_proto_data: &'static [u8] = b"\ \x01*\x1b\n\nREFREQOPTS\x12\r\n\tREF_FORCE\x10\02|\n\x08AdminAPI\x127\n\ \x08ManageGC\x12\x13.pb.ManageGCRequest\x1a\x14.pb.ManageGCResponse\"\0\ \x127\n\x08RefCount\x12\x13.pb.RefCountRequest\x1a\x14.pb.RefCountRespon\ - se\"\0J\xfc\x10\n\x06\x12\x04\0\0;\x01\n\x08\n\x01\x0c\x12\x03\0\0\x12\n\ - \x08\n\x01\x02\x12\x03\x01\x08\n\nb\n\x02\x06\0\x12\x04\x04\0\t\x01\x1aV\ + se\"\0J\x91\x11\n\x06\x12\x04\0\0;\x01\n\x08\n\x01\x0c\x12\x03\0\0\x12\n\ + \x08\n\x01\x02\x12\x03\x01\x08\n\nc\n\x02\x06\0\x12\x04\x04\0\t\x01\x1aW\ \x20AdminAPI\x20facilitates\x20administrative\x20management\x20of\x20Tem\ - poralX\x20via\x20a\x20localhost\x20gRPC\x20API\n\n\n\n\x03\x06\0\x01\x12\ - \x03\x04\x08\x10\nP\n\x04\x06\0\x02\0\x12\x03\x06\x04@\x1aC\x20ManageGC\ - \x20is\x20used\x20to\x20manage\x20TemporalX's\x20garbage\x20collection\ - \x20process\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\x06\x08\x10\n\x0c\n\ + poralX\x20via\x20a\x20localhost\x20gRPC\x20API\r\n\n\n\n\x03\x06\0\x01\ + \x12\x03\x04\x08\x10\nQ\n\x04\x06\0\x02\0\x12\x03\x06\x04@\x1aD\x20Manag\ + eGC\x20is\x20used\x20to\x20manage\x20TemporalX's\x20garbage\x20collectio\ + n\x20process\r\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\x06\x08\x10\n\x0c\n\ \x05\x06\0\x02\0\x02\x12\x03\x06\x11\x20\n\x0c\n\x05\x06\0\x02\0\x03\x12\ - \x03\x06+;\na\n\x04\x06\0\x02\x01\x12\x03\x08\x04@\x1aT\x20RefCount\x20i\ + \x03\x06+;\nb\n\x04\x06\0\x02\x01\x12\x03\x08\x04@\x1aU\x20RefCount\x20i\ s\x20used\x20to\x20analyze\x20the\x20counter\x20store\x20and\x20pull\x20\ - reference\x20count\x20information\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\ + reference\x20count\x20information\r\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\ \x03\x08\x08\x10\n\x0c\n\x05\x06\0\x02\x01\x02\x12\x03\x08\x11\x20\n\x0c\ - \n\x05\x06\0\x02\x01\x03\x12\x03\x08+;\nP\n\x02\x05\0\x12\x04\x0c\0\x13\ - \x01\x1aD\x20GCREQTYPE\x20specifies\x20the\x20type\x20of\x20GC\x20manage\ - ment\x20call\x20being\x20performed\n\n\n\n\x03\x05\0\x01\x12\x03\x0c\x05\ - \x0e\n+\n\x04\x05\0\x02\0\x12\x03\x0e\x04\x11\x1a\x1e\x20GC_START\x20is\ - \x20used\x20to\x20start\x20gc\n\n\x0c\n\x05\x05\0\x02\0\x01\x12\x03\x0e\ - \x04\x0c\n\x0c\n\x05\x05\0\x02\0\x02\x12\x03\x0e\x0f\x10\n(\n\x04\x05\0\ - \x02\x01\x12\x03\x10\x04\x10\x1a\x1b\x20C_STOP\x20is\x20used\x20to\x20st\ - op\x20GC\n\n\x0c\n\x05\x05\0\x02\x01\x01\x12\x03\x10\x04\x0b\n\x0c\n\x05\ - \x05\0\x02\x01\x02\x12\x03\x10\x0e\x0f\n6\n\x04\x05\0\x02\x02\x12\x03\ - \x12\x04\x12\x1a)\x20GC_STATUS\x20is\x20used\x20to\x20retrieve\x20gc\x20\ - status\n\n\x0c\n\x05\x05\0\x02\x02\x01\x12\x03\x12\x04\r\n\x0c\n\x05\x05\ - \0\x02\x02\x02\x12\x03\x12\x10\x11\nW\n\x02\x04\0\x12\x04\x16\0\x19\x01\ - \x1aK\x20ManageGCRequest\x20is\x20a\x20message\x20used\x20to\x20control\ - \x20TemporalX\x20garbage\x20collection\n\n\n\n\x03\x04\0\x01\x12\x03\x16\ - \x08\x17\n=\n\x04\x04\0\x02\0\x12\x03\x18\x04\x17\x1a0\x20type\x20is\x20\ - the\x20type\x20of\x20gc\x20request\x20being\x20performed\n\n\r\n\x05\x04\ - \0\x02\0\x04\x12\x04\x18\x04\x16\x19\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03\ - \x18\x04\r\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03\x18\x0e\x12\n\x0c\n\x05\ - \x04\0\x02\0\x03\x12\x03\x18\x15\x16\nU\n\x02\x04\x01\x12\x04\x1c\0\x1f\ - \x01\x1aI\x20ManageGCResponse\x20is\x20a\x20message\x20used\x20as\x20a\ - \x20response\x20to\x20gc\x20control\x20requests\n\n\n\n\x03\x04\x01\x01\ - \x12\x03\x1c\x08\x18\n/\n\x04\x04\x01\x02\0\x12\x03\x1e\x04\x16\x1a\"\ - \x20status\x20contains\x20a\x20status\x20message\n\n\r\n\x05\x04\x01\x02\ - \0\x04\x12\x04\x1e\x04\x1c\x1a\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03\x1e\ - \x04\n\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03\x1e\x0b\x11\n\x0c\n\x05\x04\ - \x01\x02\0\x03\x12\x03\x1e\x14\x15\nU\n\x02\x05\x01\x12\x04\"\0&\x01\x1a\ - I\x20REFREQTYPE\x20is\x20used\x20to\x20indicate\x20the\x20type\x20of\x20\ - ref\x20count\x20request\x20being\x20made\n\n\n\n\x03\x05\x01\x01\x12\x03\ - \"\x05\x0f\nS\n\x04\x05\x01\x02\0\x12\x03$\x04\x16\x1aF\x20REF_GET_COUNT\ - \x20is\x20used\x20to\x20get\x20the\x20reference\x20count\x20of\x20a\x20p\ - articular\x20cid\n\n\x0c\n\x05\x05\x01\x02\0\x01\x12\x03$\x04\x11\n\x0c\ - \n\x05\x05\x01\x02\0\x02\x12\x03$\x14\x15\n\x0b\n\x04\x05\x01\x02\x01\ - \x12\x03%\x04\x13\n\x0c\n\x05\x05\x01\x02\x01\x01\x12\x03%\x04\x0e\n\x0c\ - \n\x05\x05\x01\x02\x01\x02\x12\x03%\x11\x12\nG\n\x02\x05\x02\x12\x04)\0+\ - \x01\x1a;\x20REFREQOPTS\x20are\x20options\x20for\x20fine-tuning\x20ref\ - \x20count\x20requests\n\n\n\n\x03\x05\x02\x01\x12\x03)\x05\x0f\n\x0b\n\ - \x04\x05\x02\x02\0\x12\x03*\x04\x12\n\x0c\n\x05\x05\x02\x02\0\x01\x12\ - \x03*\x04\r\n\x0c\n\x05\x05\x02\x02\0\x02\x12\x03*\x10\x11\nm\n\x02\x04\ - \x02\x12\x04/\04\x01\x1aa\x20RefCountRequest\x20is\x20used\x20to\x20anal\ - yze\x20the\x20reference\n\x20counter\x20store,\x20and\x20retrieve\x20usa\ - ge\x20information\n\n\n\n\x03\x04\x02\x01\x12\x03/\x08\x17\n?\n\x04\x04\ - \x02\x02\0\x12\x031\x04\x1d\x1a2\x20cids\x20are\x20optional\x20cids\x20t\ - o\x20filter\x20our\x20requests\x20by\n\n\x0c\n\x05\x04\x02\x02\0\x04\x12\ - \x031\x04\x0c\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x031\r\x13\n\x0c\n\x05\ - \x04\x02\x02\0\x01\x12\x031\x14\x18\n\x0c\n\x05\x04\x02\x02\0\x03\x12\ - \x031\x1b\x1c\ne\n\x04\x04\x02\x02\x01\x12\x033\x04\x14\x1aX\x20can\x20b\ - e\x20used\x20to\x20apply\x20limits\x20to\x20the\x20number\x20of\x20store\ - \x20requests\x20made,\x20search\x20limits,\x20etc..\n\n\r\n\x05\x04\x02\ - \x02\x01\x04\x12\x043\x041\x1d\n\x0c\n\x05\x04\x02\x02\x01\x05\x12\x033\ - \x04\t\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x033\n\x0f\n\x0c\n\x05\x04\ - \x02\x02\x01\x03\x12\x033\x12\x13\nb\n\x02\x04\x03\x12\x048\0;\x01\x1aV\ - \x20RefCountResponse\x20is\x20used\x20to\x20return\x20the\x20information\ - \n\x20gathered\x20by\x20a\x20RefCount\x20rpc\x20call.\n\n\n\n\x03\x04\ - \x03\x01\x12\x038\x08\x18\nB\n\x04\x04\x03\x02\0\x12\x03:\x04\x20\x1a5\ - \x20cids\x20is\x20a\x20mapping\x20of\x20the\x20cid\x20to\x20its\x20refer\ - ence\x20count\n\n\r\n\x05\x04\x03\x02\0\x04\x12\x04:\x048\x1a\n\x0c\n\ - \x05\x04\x03\x02\0\x06\x12\x03:\x04\x16\n\x0c\n\x05\x04\x03\x02\0\x01\ - \x12\x03:\x17\x1b\n\x0c\n\x05\x04\x03\x02\0\x03\x12\x03:\x1e\x1fb\x06pro\ - to3\ + \n\x05\x06\0\x02\x01\x03\x12\x03\x08+;\nQ\n\x02\x05\0\x12\x04\x0c\0\x13\ + \x01\x1aE\x20GCREQTYPE\x20specifies\x20the\x20type\x20of\x20GC\x20manage\ + ment\x20call\x20being\x20performed\r\n\n\n\n\x03\x05\0\x01\x12\x03\x0c\ + \x05\x0e\n,\n\x04\x05\0\x02\0\x12\x03\x0e\x04\x11\x1a\x1f\x20GC_START\ + \x20is\x20used\x20to\x20start\x20gc\r\n\n\x0c\n\x05\x05\0\x02\0\x01\x12\ + \x03\x0e\x04\x0c\n\x0c\n\x05\x05\0\x02\0\x02\x12\x03\x0e\x0f\x10\n)\n\ + \x04\x05\0\x02\x01\x12\x03\x10\x04\x10\x1a\x1c\x20C_STOP\x20is\x20used\ + \x20to\x20stop\x20GC\r\n\n\x0c\n\x05\x05\0\x02\x01\x01\x12\x03\x10\x04\ + \x0b\n\x0c\n\x05\x05\0\x02\x01\x02\x12\x03\x10\x0e\x0f\n7\n\x04\x05\0\ + \x02\x02\x12\x03\x12\x04\x12\x1a*\x20GC_STATUS\x20is\x20used\x20to\x20re\ + trieve\x20gc\x20status\r\n\n\x0c\n\x05\x05\0\x02\x02\x01\x12\x03\x12\x04\ + \r\n\x0c\n\x05\x05\0\x02\x02\x02\x12\x03\x12\x10\x11\nX\n\x02\x04\0\x12\ + \x04\x16\0\x19\x01\x1aL\x20ManageGCRequest\x20is\x20a\x20message\x20used\ + \x20to\x20control\x20TemporalX\x20garbage\x20collection\r\n\n\n\n\x03\ + \x04\0\x01\x12\x03\x16\x08\x17\n>\n\x04\x04\0\x02\0\x12\x03\x18\x04\x17\ + \x1a1\x20type\x20is\x20the\x20type\x20of\x20gc\x20request\x20being\x20pe\ + rformed\r\n\n\r\n\x05\x04\0\x02\0\x04\x12\x04\x18\x04\x16\x19\n\x0c\n\ + \x05\x04\0\x02\0\x06\x12\x03\x18\x04\r\n\x0c\n\x05\x04\0\x02\0\x01\x12\ + \x03\x18\x0e\x12\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\x18\x15\x16\nV\n\ + \x02\x04\x01\x12\x04\x1c\0\x1f\x01\x1aJ\x20ManageGCResponse\x20is\x20a\ + \x20message\x20used\x20as\x20a\x20response\x20to\x20gc\x20control\x20req\ + uests\r\n\n\n\n\x03\x04\x01\x01\x12\x03\x1c\x08\x18\n0\n\x04\x04\x01\x02\ + \0\x12\x03\x1e\x04\x16\x1a#\x20status\x20contains\x20a\x20status\x20mess\ + age\r\n\n\r\n\x05\x04\x01\x02\0\x04\x12\x04\x1e\x04\x1c\x1a\n\x0c\n\x05\ + \x04\x01\x02\0\x05\x12\x03\x1e\x04\n\n\x0c\n\x05\x04\x01\x02\0\x01\x12\ + \x03\x1e\x0b\x11\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03\x1e\x14\x15\nV\n\ + \x02\x05\x01\x12\x04\"\0&\x01\x1aJ\x20REFREQTYPE\x20is\x20used\x20to\x20\ + indicate\x20the\x20type\x20of\x20ref\x20count\x20request\x20being\x20mad\ + e\r\n\n\n\n\x03\x05\x01\x01\x12\x03\"\x05\x0f\nT\n\x04\x05\x01\x02\0\x12\ + \x03$\x04\x16\x1aG\x20REF_GET_COUNT\x20is\x20used\x20to\x20get\x20the\ + \x20reference\x20count\x20of\x20a\x20particular\x20cid\r\n\n\x0c\n\x05\ + \x05\x01\x02\0\x01\x12\x03$\x04\x11\n\x0c\n\x05\x05\x01\x02\0\x02\x12\ + \x03$\x14\x15\n\x0b\n\x04\x05\x01\x02\x01\x12\x03%\x04\x13\n\x0c\n\x05\ + \x05\x01\x02\x01\x01\x12\x03%\x04\x0e\n\x0c\n\x05\x05\x01\x02\x01\x02\ + \x12\x03%\x11\x12\nH\n\x02\x05\x02\x12\x04)\0+\x01\x1a<\x20REFREQOPTS\ + \x20are\x20options\x20for\x20fine-tuning\x20ref\x20count\x20requests\r\n\ + \n\n\n\x03\x05\x02\x01\x12\x03)\x05\x0f\n\x0b\n\x04\x05\x02\x02\0\x12\ + \x03*\x04\x12\n\x0c\n\x05\x05\x02\x02\0\x01\x12\x03*\x04\r\n\x0c\n\x05\ + \x05\x02\x02\0\x02\x12\x03*\x10\x11\no\n\x02\x04\x02\x12\x04/\04\x01\x1a\ + c\x20RefCountRequest\x20is\x20used\x20to\x20analyze\x20the\x20reference\ + \r\n\x20counter\x20store,\x20and\x20retrieve\x20usage\x20information\r\n\ + \n\n\n\x03\x04\x02\x01\x12\x03/\x08\x17\n@\n\x04\x04\x02\x02\0\x12\x031\ + \x04\x1d\x1a3\x20cids\x20are\x20optional\x20cids\x20to\x20filter\x20our\ + \x20requests\x20by\r\n\n\x0c\n\x05\x04\x02\x02\0\x04\x12\x031\x04\x0c\n\ + \x0c\n\x05\x04\x02\x02\0\x05\x12\x031\r\x13\n\x0c\n\x05\x04\x02\x02\0\ + \x01\x12\x031\x14\x18\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x031\x1b\x1c\nf\ + \n\x04\x04\x02\x02\x01\x12\x033\x04\x14\x1aY\x20can\x20be\x20used\x20to\ + \x20apply\x20limits\x20to\x20the\x20number\x20of\x20store\x20requests\ + \x20made,\x20search\x20limits,\x20etc..\r\n\n\r\n\x05\x04\x02\x02\x01\ + \x04\x12\x043\x041\x1d\n\x0c\n\x05\x04\x02\x02\x01\x05\x12\x033\x04\t\n\ + \x0c\n\x05\x04\x02\x02\x01\x01\x12\x033\n\x0f\n\x0c\n\x05\x04\x02\x02\ + \x01\x03\x12\x033\x12\x13\nd\n\x02\x04\x03\x12\x048\0;\x01\x1aX\x20RefCo\ + untResponse\x20is\x20used\x20to\x20return\x20the\x20information\r\n\x20g\ + athered\x20by\x20a\x20RefCount\x20rpc\x20call.\r\n\n\n\n\x03\x04\x03\x01\ + \x12\x038\x08\x18\nC\n\x04\x04\x03\x02\0\x12\x03:\x04\x20\x1a6\x20cids\ + \x20is\x20a\x20mapping\x20of\x20the\x20cid\x20to\x20its\x20reference\x20\ + count\r\n\n\r\n\x05\x04\x03\x02\0\x04\x12\x04:\x048\x1a\n\x0c\n\x05\x04\ + \x03\x02\0\x06\x12\x03:\x04\x16\n\x0c\n\x05\x04\x03\x02\0\x01\x12\x03:\ + \x17\x1b\n\x0c\n\x05\x04\x03\x02\0\x03\x12\x03:\x1e\x1fb\x06proto3\ "; -static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/rs/src/admin_grpc.rs b/rs/src/admin_grpc.rs index 101e4cf..c282b9b 100644 --- a/rs/src/admin_grpc.rs +++ b/rs/src/admin_grpc.rs @@ -75,7 +75,7 @@ impl AdminApiClient { pub fn ref_count_async(&self, req: &super::admin::RefCountRequest) -> ::grpcio::Result<::grpcio::ClientUnaryReceiver> { self.ref_count_async_opt(req, ::grpcio::CallOption::default()) } - pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { + pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { self.client.spawn(f) } } diff --git a/rs/src/file.rs b/rs/src/file.rs index 6b26a1c..2af2efd 100644 --- a/rs/src/file.rs +++ b/rs/src/file.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `file.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct UploadRequest { @@ -51,7 +48,7 @@ impl UploadRequest { pub fn get_blob(&self) -> &Blob { - self.blob.as_ref().unwrap_or_else(|| Blob::default_instance()) + self.blob.as_ref().unwrap_or_else(|| ::default_instance()) } pub fn clear_blob(&mut self) { self.blob.clear(); @@ -84,7 +81,7 @@ impl UploadRequest { pub fn get_options(&self) -> &UploadOptions { - self.options.as_ref().unwrap_or_else(|| UploadOptions::default_instance()) + self.options.as_ref().unwrap_or_else(|| ::default_instance()) } pub fn clear_options(&mut self) { self.options.clear(); @@ -197,7 +194,7 @@ impl ::protobuf::Message for UploadRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -210,40 +207,30 @@ impl ::protobuf::Message for UploadRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "blob", - |m: &UploadRequest| { &m.blob }, - |m: &mut UploadRequest| { &mut m.blob }, - )); - fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "options", - |m: &UploadRequest| { &m.options }, - |m: &mut UploadRequest| { &mut m.options }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "UploadRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "blob", + |m: &UploadRequest| { &m.blob }, + |m: &mut UploadRequest| { &mut m.blob }, + )); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "options", + |m: &UploadRequest| { &m.options }, + |m: &mut UploadRequest| { &mut m.options }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "UploadRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static UploadRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const UploadRequest, - }; - unsafe { - instance.get(UploadRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(UploadRequest::new) } } @@ -262,8 +249,8 @@ impl ::std::fmt::Debug for UploadRequest { } impl ::protobuf::reflect::ProtobufValue for UploadRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -273,6 +260,9 @@ pub struct UploadOptions { pub multiHash: ::std::string::String, pub layout: ::std::string::String, pub chunker: ::std::string::String, + pub refID: ::std::string::String, + pub progressive: bool, + pub replace: bool, // special fields pub unknown_fields: ::protobuf::UnknownFields, pub cached_size: ::protobuf::CachedSize, @@ -366,6 +356,62 @@ impl UploadOptions { pub fn take_chunker(&mut self) -> ::std::string::String { ::std::mem::replace(&mut self.chunker, ::std::string::String::new()) } + + // string refID = 4; + + + pub fn get_refID(&self) -> &str { + &self.refID + } + pub fn clear_refID(&mut self) { + self.refID.clear(); + } + + // Param is passed by value, moved + pub fn set_refID(&mut self, v: ::std::string::String) { + self.refID = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_refID(&mut self) -> &mut ::std::string::String { + &mut self.refID + } + + // Take field + pub fn take_refID(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.refID, ::std::string::String::new()) + } + + // bool progressive = 5; + + + pub fn get_progressive(&self) -> bool { + self.progressive + } + pub fn clear_progressive(&mut self) { + self.progressive = false; + } + + // Param is passed by value, moved + pub fn set_progressive(&mut self, v: bool) { + self.progressive = v; + } + + // bool replace = 6; + + + pub fn get_replace(&self) -> bool { + self.replace + } + pub fn clear_replace(&mut self) { + self.replace = false; + } + + // Param is passed by value, moved + pub fn set_replace(&mut self, v: bool) { + self.replace = v; + } } impl ::protobuf::Message for UploadOptions { @@ -386,6 +432,23 @@ impl ::protobuf::Message for UploadOptions { 3 => { ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.chunker)?; }, + 4 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.refID)?; + }, + 5 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.progressive = tmp; + }, + 6 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.replace = tmp; + }, _ => { ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; }, @@ -407,6 +470,15 @@ impl ::protobuf::Message for UploadOptions { if !self.chunker.is_empty() { my_size += ::protobuf::rt::string_size(3, &self.chunker); } + if !self.refID.is_empty() { + my_size += ::protobuf::rt::string_size(4, &self.refID); + } + if self.progressive != false { + my_size += 2; + } + if self.replace != false { + my_size += 2; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -422,6 +494,15 @@ impl ::protobuf::Message for UploadOptions { if !self.chunker.is_empty() { os.write_string(3, &self.chunker)?; } + if !self.refID.is_empty() { + os.write_string(4, &self.refID)?; + } + if self.progressive != false { + os.write_bool(5, self.progressive)?; + } + if self.replace != false { + os.write_bool(6, self.replace)?; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -444,7 +525,7 @@ impl ::protobuf::Message for UploadOptions { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -457,45 +538,50 @@ impl ::protobuf::Message for UploadOptions { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "multiHash", - |m: &UploadOptions| { &m.multiHash }, - |m: &mut UploadOptions| { &mut m.multiHash }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "layout", - |m: &UploadOptions| { &m.layout }, - |m: &mut UploadOptions| { &mut m.layout }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "chunker", - |m: &UploadOptions| { &m.chunker }, - |m: &mut UploadOptions| { &mut m.chunker }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "UploadOptions", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "multiHash", + |m: &UploadOptions| { &m.multiHash }, + |m: &mut UploadOptions| { &mut m.multiHash }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "layout", + |m: &UploadOptions| { &m.layout }, + |m: &mut UploadOptions| { &mut m.layout }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "chunker", + |m: &UploadOptions| { &m.chunker }, + |m: &mut UploadOptions| { &mut m.chunker }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "refID", + |m: &UploadOptions| { &m.refID }, + |m: &mut UploadOptions| { &mut m.refID }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "progressive", + |m: &UploadOptions| { &m.progressive }, + |m: &mut UploadOptions| { &mut m.progressive }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "replace", + |m: &UploadOptions| { &m.replace }, + |m: &mut UploadOptions| { &mut m.replace }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "UploadOptions", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static UploadOptions { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const UploadOptions, - }; - unsafe { - instance.get(UploadOptions::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(UploadOptions::new) } } @@ -504,6 +590,9 @@ impl ::protobuf::Clear for UploadOptions { self.multiHash.clear(); self.layout.clear(); self.chunker.clear(); + self.refID.clear(); + self.progressive = false; + self.replace = false; self.unknown_fields.clear(); } } @@ -515,8 +604,8 @@ impl ::std::fmt::Debug for UploadOptions { } impl ::protobuf::reflect::ProtobufValue for UploadOptions { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -712,7 +801,7 @@ impl ::protobuf::Message for DownloadRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -725,50 +814,40 @@ impl ::protobuf::Message for DownloadRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "hash", - |m: &DownloadRequest| { &m.hash }, - |m: &mut DownloadRequest| { &mut m.hash }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "chunkSize", - |m: &DownloadRequest| { &m.chunkSize }, - |m: &mut DownloadRequest| { &mut m.chunkSize }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( - "rangeStart", - |m: &DownloadRequest| { &m.rangeStart }, - |m: &mut DownloadRequest| { &mut m.rangeStart }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( - "rangeEnd", - |m: &DownloadRequest| { &m.rangeEnd }, - |m: &mut DownloadRequest| { &mut m.rangeEnd }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "DownloadRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "hash", + |m: &DownloadRequest| { &m.hash }, + |m: &mut DownloadRequest| { &mut m.hash }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "chunkSize", + |m: &DownloadRequest| { &m.chunkSize }, + |m: &mut DownloadRequest| { &mut m.chunkSize }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "rangeStart", + |m: &DownloadRequest| { &m.rangeStart }, + |m: &mut DownloadRequest| { &mut m.rangeStart }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "rangeEnd", + |m: &DownloadRequest| { &m.rangeEnd }, + |m: &mut DownloadRequest| { &mut m.rangeEnd }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "DownloadRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static DownloadRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const DownloadRequest, - }; - unsafe { - instance.get(DownloadRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(DownloadRequest::new) } } @@ -789,8 +868,8 @@ impl ::std::fmt::Debug for DownloadRequest { } impl ::protobuf::reflect::ProtobufValue for DownloadRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -818,7 +897,7 @@ impl DownloadResponse { pub fn get_blob(&self) -> &Blob { - self.blob.as_ref().unwrap_or_else(|| Blob::default_instance()) + self.blob.as_ref().unwrap_or_else(|| ::default_instance()) } pub fn clear_blob(&mut self) { self.blob.clear(); @@ -914,7 +993,7 @@ impl ::protobuf::Message for DownloadResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -927,35 +1006,25 @@ impl ::protobuf::Message for DownloadResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "blob", - |m: &DownloadResponse| { &m.blob }, - |m: &mut DownloadResponse| { &mut m.blob }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "DownloadResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "blob", + |m: &DownloadResponse| { &m.blob }, + |m: &mut DownloadResponse| { &mut m.blob }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "DownloadResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static DownloadResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const DownloadResponse, - }; - unsafe { - instance.get(DownloadResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(DownloadResponse::new) } } @@ -973,8 +1042,8 @@ impl ::std::fmt::Debug for DownloadResponse { } impl ::protobuf::reflect::ProtobufValue for DownloadResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1141,7 +1210,7 @@ impl ::protobuf::Message for Blob { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1154,45 +1223,35 @@ impl ::protobuf::Message for Blob { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "content", - |m: &Blob| { &m.content }, - |m: &mut Blob| { &mut m.content }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( - "rangeStart", - |m: &Blob| { &m.rangeStart }, - |m: &mut Blob| { &mut m.rangeStart }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( - "rangeEnd", - |m: &Blob| { &m.rangeEnd }, - |m: &mut Blob| { &mut m.rangeEnd }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "Blob", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "content", + |m: &Blob| { &m.content }, + |m: &mut Blob| { &mut m.content }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "rangeStart", + |m: &Blob| { &m.rangeStart }, + |m: &mut Blob| { &mut m.rangeStart }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "rangeEnd", + |m: &Blob| { &m.rangeEnd }, + |m: &mut Blob| { &mut m.rangeEnd }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "Blob", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static Blob { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Blob, - }; - unsafe { - instance.get(Blob::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(Blob::new) } } @@ -1212,139 +1271,485 @@ impl ::std::fmt::Debug for Blob { } impl ::protobuf::reflect::ProtobufValue for Blob { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +pub struct RemoveRequest { + // message fields + pub refIDs: ::std::collections::HashMap<::std::string::String, ::std::string::String>, + // special fields + pub unknown_fields: ::protobuf::UnknownFields, + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a RemoveRequest { + fn default() -> &'a RemoveRequest { + ::default_instance() + } +} + +impl RemoveRequest { + pub fn new() -> RemoveRequest { + ::std::default::Default::default() + } + + // repeated .pb.RemoveRequest.RefIDsEntry refIDs = 1; + + + pub fn get_refIDs(&self) -> &::std::collections::HashMap<::std::string::String, ::std::string::String> { + &self.refIDs + } + pub fn clear_refIDs(&mut self) { + self.refIDs.clear(); + } + + // Param is passed by value, moved + pub fn set_refIDs(&mut self, v: ::std::collections::HashMap<::std::string::String, ::std::string::String>) { + self.refIDs = v; + } + + // Mutable pointer to the field. + pub fn mut_refIDs(&mut self) -> &mut ::std::collections::HashMap<::std::string::String, ::std::string::String> { + &mut self.refIDs + } + + // Take field + pub fn take_refIDs(&mut self) -> ::std::collections::HashMap<::std::string::String, ::std::string::String> { + ::std::mem::replace(&mut self.refIDs, ::std::collections::HashMap::new()) + } +} + +impl ::protobuf::Message for RemoveRequest { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_map_into::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>(wire_type, is, &mut self.refIDs)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + my_size += ::protobuf::rt::compute_map_size::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>(1, &self.refIDs); + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + ::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>(1, &self.refIDs, os)?; + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> RemoveRequest { + RemoveRequest::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>( + "refIDs", + |m: &RemoveRequest| { &m.refIDs }, + |m: &mut RemoveRequest| { &mut m.refIDs }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "RemoveRequest", + fields, + file_descriptor_proto() + ) + }) + } + + fn default_instance() -> &'static RemoveRequest { + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(RemoveRequest::new) + } +} + +impl ::protobuf::Clear for RemoveRequest { + fn clear(&mut self) { + self.refIDs.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for RemoveRequest { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for RemoveRequest { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +pub struct RemoveResponse { + // message fields + pub count: u64, + // special fields + pub unknown_fields: ::protobuf::UnknownFields, + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a RemoveResponse { + fn default() -> &'a RemoveResponse { + ::default_instance() + } +} + +impl RemoveResponse { + pub fn new() -> RemoveResponse { + ::std::default::Default::default() + } + + // uint64 count = 1; + + + pub fn get_count(&self) -> u64 { + self.count + } + pub fn clear_count(&mut self) { + self.count = 0; + } + + // Param is passed by value, moved + pub fn set_count(&mut self, v: u64) { + self.count = v; + } +} + +impl ::protobuf::Message for RemoveResponse { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_uint64()?; + self.count = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.count != 0 { + my_size += ::protobuf::rt::value_size(1, self.count, ::protobuf::wire_format::WireTypeVarint); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.count != 0 { + os.write_uint64(1, self.count)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> RemoveResponse { + RemoveResponse::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "count", + |m: &RemoveResponse| { &m.count }, + |m: &mut RemoveResponse| { &mut m.count }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "RemoveResponse", + fields, + file_descriptor_proto() + ) + }) + } + + fn default_instance() -> &'static RemoveResponse { + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(RemoveResponse::new) + } +} + +impl ::protobuf::Clear for RemoveResponse { + fn clear(&mut self) { + self.count = 0; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for RemoveResponse { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for RemoveResponse { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } static file_descriptor_proto_data: &'static [u8] = b"\ \n\nfile.proto\x12\x02pb\x1a\nutil.proto\"Z\n\rUploadRequest\x12\x1c\n\ \x04blob\x18\x01\x20\x01(\x0b2\x08.pb.BlobR\x04blob\x12+\n\x07options\ - \x18\x02\x20\x01(\x0b2\x11.pb.UploadOptionsR\x07options\"_\n\rUploadOpti\ - ons\x12\x1c\n\tmultiHash\x18\x01\x20\x01(\tR\tmultiHash\x12\x16\n\x06lay\ - out\x18\x02\x20\x01(\tR\x06layout\x12\x18\n\x07chunker\x18\x03\x20\x01(\ - \tR\x07chunker\"\x7f\n\x0fDownloadRequest\x12\x12\n\x04hash\x18\x01\x20\ - \x01(\tR\x04hash\x12\x1c\n\tchunkSize\x18\x02\x20\x01(\x05R\tchunkSize\ - \x12\x1e\n\nrangeStart\x18\x03\x20\x01(\x04R\nrangeStart\x12\x1a\n\x08ra\ - ngeEnd\x18\x04\x20\x01(\x04R\x08rangeEnd\"0\n\x10DownloadResponse\x12\ - \x1c\n\x04blob\x18\x01\x20\x01(\x0b2\x08.pb.BlobR\x04blob\"\\\n\x04Blob\ - \x12\x18\n\x07content\x18\x01\x20\x01(\x0cR\x07content\x12\x1e\n\nrangeS\ - tart\x18\x02\x20\x01(\x04R\nrangeStart\x12\x1a\n\x08rangeEnd\x18\x03\x20\ - \x01(\x04R\x08rangeEnd2~\n\x07FileAPI\x124\n\nUploadFile\x12\x11.pb.Uplo\ - adRequest\x1a\x0f.pb.PutResponse\"\0(\x01\x12=\n\x0cDownloadFile\x12\x13\ - .pb.DownloadRequest\x1a\x14.pb.DownloadResponse\"\00\x01J\xda\x17\n\x06\ - \x12\x04\0\0B\x01\n\x08\n\x01\x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\ - \x03\x01\x08\n\n\t\n\x02\x03\0\x12\x03\x02\x07\x13\nT\n\x02\x06\0\x12\ - \x04\x05\0\n\x01\x1aH\x20FileAPI\x20provides\x20a\x20gRPC\x20api\x20to\ - \x20upload/download\x20files\x20as\x20UnixFS\x20objects\n\n\n\n\x03\x06\ - \0\x01\x12\x03\x05\x08\x0f\n]\n\x04\x06\0\x02\0\x12\x03\x07\x04C\x1aP\ - \x20UploadFile\x20allows\x20uploading\x20a\x20file\x20as\x20a\x20UnixFS\ - \x20object\x20(equivalent\x20to\x20ipfs\x20add)\n\n\x0c\n\x05\x06\0\x02\ - \0\x01\x12\x03\x07\x08\x12\n\x0c\n\x05\x06\0\x02\0\x05\x12\x03\x07\x13\ - \x19\n\x0c\n\x05\x06\0\x02\0\x02\x12\x03\x07\x1a'\n\x0c\n\x05\x06\0\x02\ - \0\x03\x12\x03\x073>\nW\n\x04\x06\0\x02\x01\x12\x03\t\x04K\x1aJ\x20Downl\ - oadFile\x20allows\x20downloading\x20a\x20UnixFS\x20object\x20(equivalent\ - \x20to\x20ipfs\x20get)\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x03\t\x08\x14\ - \n\x0c\n\x05\x06\0\x02\x01\x02\x12\x03\t\x15$\n\x0c\n\x05\x06\0\x02\x01\ - \x06\x12\x03\t/5\n\x0c\n\x05\x06\0\x02\x01\x03\x12\x03\t6F\nE\n\x02\x04\ - \0\x12\x04\x0e\0\x13\x01\x1a9\x20UploadRequest\x20is\x20used\x20to\x20up\ - load\x20data\x20as\x20a\x20UnixFS\x20object\n\n\n\n\x03\x04\0\x01\x12\ - \x03\x0e\x08\x15\n-\n\x04\x04\0\x02\0\x12\x03\x10\x04\x12\x1a\x20\x20blo\ - b\x20is\x20a\x20single\x20chunk\x20of\x20data\n\n\r\n\x05\x04\0\x02\0\ - \x04\x12\x04\x10\x04\x0e\x17\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03\x10\x04\ - \x08\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03\x10\t\r\n\x0c\n\x05\x04\0\x02\0\ - \x03\x12\x03\x10\x10\x11\nA\n\x04\x04\0\x02\x01\x12\x03\x12\x04\x1e\x1a4\ - \x20options\x20allows\x20setting\x20the\x20optoins\x20for\x20this\x20upl\ - oad\n\n\r\n\x05\x04\0\x02\x01\x04\x12\x04\x12\x04\x10\x12\n\x0c\n\x05\ - \x04\0\x02\x01\x06\x12\x03\x12\x04\x11\n\x0c\n\x05\x04\0\x02\x01\x01\x12\ - \x03\x12\x12\x19\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03\x12\x1c\x1d\nN\n\ - \x02\x04\x01\x12\x04\x16\0\x1d\x01\x1aB\x20UploadOptions\x20allows\x20co\ - ntrolling\x20the\x20parameters\x20of\x20a\x20file\x20upload\n\n\n\n\x03\ - \x04\x01\x01\x12\x03\x16\x08\x15\n5\n\x04\x04\x01\x02\0\x12\x03\x18\x04\ - \x19\x1a(\x20specifes\x20the\x20multihash\x20function\x20to\x20use\n\n\r\ - \n\x05\x04\x01\x02\0\x04\x12\x04\x18\x04\x16\x17\n\x0c\n\x05\x04\x01\x02\ - \0\x05\x12\x03\x18\x04\n\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03\x18\x0b\ - \x14\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03\x18\x17\x18\n<\n\x04\x04\x01\ - \x02\x01\x12\x03\x1a\x04\x16\x1a/\x20specifies\x20the\x20dag\x20layout\ - \x20(balanced,\x20tricklet)\n\n\r\n\x05\x04\x01\x02\x01\x04\x12\x04\x1a\ - \x04\x18\x19\n\x0c\n\x05\x04\x01\x02\x01\x05\x12\x03\x1a\x04\n\n\x0c\n\ - \x05\x04\x01\x02\x01\x01\x12\x03\x1a\x0b\x11\n\x0c\n\x05\x04\x01\x02\x01\ - \x03\x12\x03\x1a\x14\x15\nB\n\x04\x04\x01\x02\x02\x12\x03\x1c\x04\x17\ - \x1a5\x20specifies\x20the\x20chunker\x20type\x20(rabin,\x20default,\x20e\ - tc...)\n\n\r\n\x05\x04\x01\x02\x02\x04\x12\x04\x1c\x04\x1a\x16\n\x0c\n\ - \x05\x04\x01\x02\x02\x05\x12\x03\x1c\x04\n\n\x0c\n\x05\x04\x01\x02\x02\ - \x01\x12\x03\x1c\x0b\x12\n\x0c\n\x05\x04\x01\x02\x02\x03\x12\x03\x1c\x15\ - \x16\n\xa6\x01\n\x02\x04\x02\x12\x04\"\0/\x01\x1a\x99\x01\x20DownloadReq\ - uest\x20is\x20used\x20to\x20download\x20a\x20UnixFS\x20object\n\x20altho\ - ugh\x20it\x20can\x20in\x20theory\x20be\x20used\x20with\x20other\x20type\ - \x20of\x20objects\n\x20there\x20may\x20be\x20some\x20undefined\x20behavi\ - or\n\n\n\n\x03\x04\x02\x01\x12\x03\"\x08\x17\nU\n\x04\x04\x02\x02\0\x12\ - \x03$\x04\x14\x1aH\x20hash\x20is\x20the\x20ipfs\x20hash/cid\x20(content\ - \x20identifier)\x20of\x20the\x20data\x20to\x20download\n\n\r\n\x05\x04\ - \x02\x02\0\x04\x12\x04$\x04\"\x19\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03$\ - \x04\n\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x03$\x0b\x0f\n\x0c\n\x05\x04\ - \x02\x02\0\x03\x12\x03$\x12\x13\n\xb7\x01\n\x04\x04\x02\x02\x01\x12\x03(\ - \x04\x18\x1a\xa9\x01\x20chunkSize\x20specifies\x20the\x20size\x20of\x20c\ - hunks\x20to\x20be\x20sent\x20to\x20the\x20client\n\x20it\x20allows\x20us\ - \x20to\x20efficiently\x20control\x20incoming\x20data\x20amounts\x20which\ - \n\x20is\x20useful\x20on\x20machines\x20with\x20low-memory\n\n\r\n\x05\ - \x04\x02\x02\x01\x04\x12\x04(\x04$\x14\n\x0c\n\x05\x04\x02\x02\x01\x05\ - \x12\x03(\x04\t\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x03(\n\x13\n\x0c\n\ - \x05\x04\x02\x02\x01\x03\x12\x03(\x16\x17\n\xa8\x02\n\x04\x04\x02\x02\ - \x02\x12\x03-\x04\x1a\x1a\x9a\x02\x20Range\x20start\x20and\x20end\x20mir\ - rors\x20developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range.\n\x20If\ - \x20both\x20is\x20none\x20zero,\x20only\x20data\x20within\x20range\x20is\ - \x20requested.\n\x20The\x20unit\x20of\x20range\x20is\x20alway\x20in\x20b\ - ytes.\n\x20If\x20used,\x20please\x20check\x20the\x20returned\x20range\ - \x20values\x20in\x20blobs\x20to\x20make\x20sure\x20this\x20feature\x20is\ - \x20supported.\n\n\r\n\x05\x04\x02\x02\x02\x04\x12\x04-\x04(\x18\n\x0c\n\ - \x05\x04\x02\x02\x02\x05\x12\x03-\x04\n\n\x0c\n\x05\x04\x02\x02\x02\x01\ - \x12\x03-\x0b\x15\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x03-\x18\x19\n\x0b\ - \n\x04\x04\x02\x02\x03\x12\x03.\x04\x18\n\r\n\x05\x04\x02\x02\x03\x04\ - \x12\x04.\x04-\x1a\n\x0c\n\x05\x04\x02\x02\x03\x05\x12\x03.\x04\n\n\x0c\ - \n\x05\x04\x02\x02\x03\x01\x12\x03.\x0b\x13\n\x0c\n\x05\x04\x02\x02\x03\ - \x03\x12\x03.\x16\x17\n\x86\x01\n\x02\x04\x03\x12\x043\06\x01\x1az\x20Do\ - wnloadResponse\x20contains\x20the\x20response\x20to\x20a\x20download\x20\ - request\n\x20which\x20allows\x20the\x20gRPC\x20server\x20to\x20stream\ - \x20blobs\x20to\x20the\x20client\n\n\n\n\x03\x04\x03\x01\x12\x033\x08\ - \x18\n-\n\x04\x04\x03\x02\0\x12\x035\x04\x12\x1a\x20\x20blob\x20is\x20a\ - \x20single\x20chunk\x20of\x20data\n\n\r\n\x05\x04\x03\x02\0\x04\x12\x045\ - \x043\x1a\n\x0c\n\x05\x04\x03\x02\0\x06\x12\x035\x04\x08\n\x0c\n\x05\x04\ - \x03\x02\0\x01\x12\x035\t\r\n\x0c\n\x05\x04\x03\x02\0\x03\x12\x035\x10\ - \x11\n,\n\x02\x04\x04\x12\x049\0B\x01\x1a\x20\x20Blob\x20is\x20a\x20chun\ - k\x20of\x20binary\x20data\n\n\n\n\x03\x04\x04\x01\x12\x039\x08\x0c\nJ\n\ - \x04\x04\x04\x02\0\x12\x03;\x04\x16\x1a=\x20content\x20is\x20the\x20actu\ - al\x20binary\x20data\x20contained\x20in\x20this\x20message\n\n\r\n\x05\ - \x04\x04\x02\0\x04\x12\x04;\x049\x0e\n\x0c\n\x05\x04\x04\x02\0\x05\x12\ - \x03;\x04\t\n\x0c\n\x05\x04\x04\x02\0\x01\x12\x03;\n\x11\n\x0c\n\x05\x04\ - \x04\x02\0\x03\x12\x03;\x14\x15\n\x92\x02\n\x04\x04\x04\x02\x01\x12\x03@\ - \x04\x1a\x1a\x84\x02\x20Range\x20start\x20and\x20end\x20mirrors\x20devel\ - oper.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Range.\n\x20If\x20b\ - oth\x20is\x20zero,\x20the\x20blobs\x20streams\x20contents\x20of\x20the\ - \x20file\x20from\x20start\x20to\x20finish.\n\x20The\x20unit\x20of\x20ran\ - ge\x20is\x20alway\x20in\x20bytes.\n\x20Currently,\x20DownloadResponse\ - \x20support\x20blob\x20range.\n\n\r\n\x05\x04\x04\x02\x01\x04\x12\x04@\ - \x04;\x16\n\x0c\n\x05\x04\x04\x02\x01\x05\x12\x03@\x04\n\n\x0c\n\x05\x04\ - \x04\x02\x01\x01\x12\x03@\x0b\x15\n\x0c\n\x05\x04\x04\x02\x01\x03\x12\ - \x03@\x18\x19\n\x0b\n\x04\x04\x04\x02\x02\x12\x03A\x04\x18\n\r\n\x05\x04\ - \x04\x02\x02\x04\x12\x04A\x04@\x1a\n\x0c\n\x05\x04\x04\x02\x02\x05\x12\ - \x03A\x04\n\n\x0c\n\x05\x04\x04\x02\x02\x01\x12\x03A\x0b\x13\n\x0c\n\x05\ - \x04\x04\x02\x02\x03\x12\x03A\x16\x17b\x06proto3\ + \x18\x02\x20\x01(\x0b2\x11.pb.UploadOptionsR\x07options\"\xb1\x01\n\rUpl\ + oadOptions\x12\x1c\n\tmultiHash\x18\x01\x20\x01(\tR\tmultiHash\x12\x16\n\ + \x06layout\x18\x02\x20\x01(\tR\x06layout\x12\x18\n\x07chunker\x18\x03\ + \x20\x01(\tR\x07chunker\x12\x14\n\x05refID\x18\x04\x20\x01(\tR\x05refID\ + \x12\x20\n\x0bprogressive\x18\x05\x20\x01(\x08R\x0bprogressive\x12\x18\n\ + \x07replace\x18\x06\x20\x01(\x08R\x07replace\"\x7f\n\x0fDownloadRequest\ + \x12\x12\n\x04hash\x18\x01\x20\x01(\tR\x04hash\x12\x1c\n\tchunkSize\x18\ + \x02\x20\x01(\x05R\tchunkSize\x12\x1e\n\nrangeStart\x18\x03\x20\x01(\x04\ + R\nrangeStart\x12\x1a\n\x08rangeEnd\x18\x04\x20\x01(\x04R\x08rangeEnd\"0\ + \n\x10DownloadResponse\x12\x1c\n\x04blob\x18\x01\x20\x01(\x0b2\x08.pb.Bl\ + obR\x04blob\"\\\n\x04Blob\x12\x18\n\x07content\x18\x01\x20\x01(\x0cR\x07\ + content\x12\x1e\n\nrangeStart\x18\x02\x20\x01(\x04R\nrangeStart\x12\x1a\ + \n\x08rangeEnd\x18\x03\x20\x01(\x04R\x08rangeEnd\"\x81\x01\n\rRemoveRequ\ + est\x125\n\x06refIDs\x18\x01\x20\x03(\x0b2\x1d.pb.RemoveRequest.RefIDsEn\ + tryR\x06refIDs\x1a9\n\x0bRefIDsEntry\x12\x10\n\x03key\x18\x01\x20\x01(\t\ + R\x03key\x12\x14\n\x05value\x18\x02\x20\x01(\tR\x05value:\x028\x01\"&\n\ + \x0eRemoveResponse\x12\x14\n\x05count\x18\x01\x20\x01(\x04R\x05count2\ + \xb5\x01\n\x07FileAPI\x124\n\nUploadFile\x12\x11.pb.UploadRequest\x1a\ + \x0f.pb.PutResponse\"\0(\x01\x12=\n\x0cDownloadFile\x12\x13.pb.DownloadR\ + equest\x1a\x14.pb.DownloadResponse\"\00\x01\x125\n\nRemoveFile\x12\x11.p\ + b.RemoveRequest\x1a\x12.pb.RemoveResponse\"\0J\x88!\n\x06\x12\x04\0\0W\ + \x01\n\x08\n\x01\x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\n\ + \t\n\x02\x03\0\x12\x03\x02\x07\x13\nT\n\x02\x06\0\x12\x04\x05\0\x0c\x01\ + \x1aH\x20FileAPI\x20provides\x20a\x20gRPC\x20api\x20to\x20upload/downloa\ + d\x20files\x20as\x20UnixFS\x20objects\n\n\n\n\x03\x06\0\x01\x12\x03\x05\ + \x08\x0f\na\n\x04\x06\0\x02\0\x12\x03\x07\x04B\x1aT\x20UploadFile\x20all\ + ows\x20uploading\x20a\x20file\x20as\x20a\x20UnixFS\x20object\x20(equival\ + ent\x20to\x20ipfs\x20pin\x20add)\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\ + \x07\x08\x12\n\x0c\n\x05\x06\0\x02\0\x05\x12\x03\x07\x13\x19\n\x0c\n\x05\ + \x06\0\x02\0\x02\x12\x03\x07\x1a'\n\x0c\n\x05\x06\0\x02\0\x03\x12\x03\ + \x073>\nW\n\x04\x06\0\x02\x01\x12\x03\t\x04J\x1aJ\x20DownloadFile\x20all\ + ows\x20downloading\x20a\x20UnixFS\x20object\x20(equivalent\x20to\x20ipfs\ + \x20get)\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x03\t\x08\x14\n\x0c\n\x05\ + \x06\0\x02\x01\x02\x12\x03\t\x15$\n\x0c\n\x05\x06\0\x02\x01\x06\x12\x03\ + \t/5\n\x0c\n\x05\x06\0\x02\x01\x03\x12\x03\t6F\nx\n\x04\x06\0\x02\x02\ + \x12\x03\x0b\x04=\x1ak\x20RemoveFile\x20allows\x20removing\x20a\x20UnixF\ + S\x20object\x20or\x20decrease\x20it's\x20reference\x20counter\x20(equiva\ + lent\x20to\x20ipfs\x20pin\x20rm)\n\n\x0c\n\x05\x06\0\x02\x02\x01\x12\x03\ + \x0b\x08\x12\n\x0c\n\x05\x06\0\x02\x02\x02\x12\x03\x0b\x13\x20\n\x0c\n\ + \x05\x06\0\x02\x02\x03\x12\x03\x0b+9\nE\n\x02\x04\0\x12\x04\x10\0\x15\ + \x01\x1a9\x20UploadRequest\x20is\x20used\x20to\x20upload\x20data\x20as\ + \x20a\x20UnixFS\x20object\n\n\n\n\x03\x04\0\x01\x12\x03\x10\x08\x15\n-\n\ + \x04\x04\0\x02\0\x12\x03\x12\x04\x12\x1a\x20\x20blob\x20is\x20a\x20singl\ + e\x20chunk\x20of\x20data\n\n\r\n\x05\x04\0\x02\0\x04\x12\x04\x12\x04\x10\ + \x17\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03\x12\x04\x08\n\x0c\n\x05\x04\0\ + \x02\0\x01\x12\x03\x12\t\r\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\x12\x10\ + \x11\nn\n\x04\x04\0\x02\x01\x12\x03\x14\x04\x1e\x1aa\x20options\x20allow\ + s\x20setting\x20the\x20options\x20for\x20this\x20upload,\x20only\x20vali\ + d\x20in\x20the\x20first\x20message\x20of\x20a\x20stream\n\n\r\n\x05\x04\ + \0\x02\x01\x04\x12\x04\x14\x04\x12\x12\n\x0c\n\x05\x04\0\x02\x01\x06\x12\ + \x03\x14\x04\x11\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03\x14\x12\x19\n\x0c\ + \n\x05\x04\0\x02\x01\x03\x12\x03\x14\x1c\x1d\nN\n\x02\x04\x01\x12\x04\ + \x18\0%\x01\x1aB\x20UploadOptions\x20allows\x20controlling\x20the\x20par\ + ameters\x20of\x20a\x20file\x20upload\n\n\n\n\x03\x04\x01\x01\x12\x03\x18\ + \x08\x15\n6\n\x04\x04\x01\x02\0\x12\x03\x1a\x04\x19\x1a)\x20specifies\ + \x20the\x20multihash\x20function\x20to\x20use\n\n\r\n\x05\x04\x01\x02\0\ + \x04\x12\x04\x1a\x04\x18\x17\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03\x1a\ + \x04\n\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03\x1a\x0b\x14\n\x0c\n\x05\x04\ + \x01\x02\0\x03\x12\x03\x1a\x17\x18\n<\n\x04\x04\x01\x02\x01\x12\x03\x1c\ + \x04\x16\x1a/\x20specifies\x20the\x20dag\x20layout\x20(balanced,\x20tric\ + klet)\n\n\r\n\x05\x04\x01\x02\x01\x04\x12\x04\x1c\x04\x1a\x19\n\x0c\n\ + \x05\x04\x01\x02\x01\x05\x12\x03\x1c\x04\n\n\x0c\n\x05\x04\x01\x02\x01\ + \x01\x12\x03\x1c\x0b\x11\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03\x1c\x14\ + \x15\nB\n\x04\x04\x01\x02\x02\x12\x03\x1e\x04\x17\x1a5\x20specifies\x20t\ + he\x20chunker\x20type\x20(rabin,\x20default,\x20etc...)\n\n\r\n\x05\x04\ + \x01\x02\x02\x04\x12\x04\x1e\x04\x1c\x16\n\x0c\n\x05\x04\x01\x02\x02\x05\ + \x12\x03\x1e\x04\n\n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x03\x1e\x0b\x12\n\ + \x0c\n\x05\x04\x01\x02\x02\x03\x12\x03\x1e\x15\x16\nr\n\x04\x04\x01\x02\ + \x03\x12\x03\x20\x04\x15\x1ae\x20optional\x20reference\x20ID\x20to\x20ta\ + g\x20the\x20file\x20with.\x20If\x20set,\x20the\x20same\x20reference\x20I\ + D\x20must\x20be\x20used\x20for\x20deletion\n\n\r\n\x05\x04\x01\x02\x03\ + \x04\x12\x04\x20\x04\x1e\x17\n\x0c\n\x05\x04\x01\x02\x03\x05\x12\x03\x20\ + \x04\n\n\x0c\n\x05\x04\x01\x02\x03\x01\x12\x03\x20\x0b\x10\n\x0c\n\x05\ + \x04\x01\x02\x03\x03\x12\x03\x20\x13\x14\n9\n\x04\x04\x01\x02\x04\x12\ + \x03\"\x04\x19\x1a,\x20if\x20refID\x20is\x20set,\x20allows\x20progressiv\ + e\x20upload\n\n\r\n\x05\x04\x01\x02\x04\x04\x12\x04\"\x04\x20\x15\n\x0c\ + \n\x05\x04\x01\x02\x04\x05\x12\x03\"\x04\x08\n\x0c\n\x05\x04\x01\x02\x04\ + \x01\x12\x03\"\t\x14\n\x0c\n\x05\x04\x01\x02\x04\x03\x12\x03\"\x17\x18\n\ + O\n\x04\x04\x01\x02\x05\x12\x03$\x04\x15\x1aB\x20if\x20refID\x20is\x20se\ + t,\x20remove\x20the\x20any\x20existing\x20uploads\x20with\x20same\x20ref\ + ID\n\n\r\n\x05\x04\x01\x02\x05\x04\x12\x04$\x04\"\x19\n\x0c\n\x05\x04\ + \x01\x02\x05\x05\x12\x03$\x04\x08\n\x0c\n\x05\x04\x01\x02\x05\x01\x12\ + \x03$\t\x10\n\x0c\n\x05\x04\x01\x02\x05\x03\x12\x03$\x13\x14\n\xa6\x01\n\ + \x02\x04\x02\x12\x04*\07\x01\x1a\x99\x01\x20DownloadRequest\x20is\x20use\ + d\x20to\x20download\x20a\x20UnixFS\x20object\n\x20although\x20it\x20can\ + \x20in\x20theory\x20be\x20used\x20with\x20other\x20type\x20of\x20objects\ + \n\x20there\x20may\x20be\x20some\x20undefined\x20behavior\n\n\n\n\x03\ + \x04\x02\x01\x12\x03*\x08\x17\nU\n\x04\x04\x02\x02\0\x12\x03,\x04\x14\ + \x1aH\x20hash\x20is\x20the\x20ipfs\x20hash/cid\x20(content\x20identifier\ + )\x20of\x20the\x20data\x20to\x20download\n\n\r\n\x05\x04\x02\x02\0\x04\ + \x12\x04,\x04*\x19\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03,\x04\n\n\x0c\n\ + \x05\x04\x02\x02\0\x01\x12\x03,\x0b\x0f\n\x0c\n\x05\x04\x02\x02\0\x03\ + \x12\x03,\x12\x13\n\xb7\x01\n\x04\x04\x02\x02\x01\x12\x030\x04\x18\x1a\ + \xa9\x01\x20chunkSize\x20specifies\x20the\x20size\x20of\x20chunks\x20to\ + \x20be\x20sent\x20to\x20the\x20client\n\x20it\x20allows\x20us\x20to\x20e\ + fficiently\x20control\x20incoming\x20data\x20amounts\x20which\n\x20is\ + \x20useful\x20on\x20machines\x20with\x20low-memory\n\n\r\n\x05\x04\x02\ + \x02\x01\x04\x12\x040\x04,\x14\n\x0c\n\x05\x04\x02\x02\x01\x05\x12\x030\ + \x04\t\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x030\n\x13\n\x0c\n\x05\x04\ + \x02\x02\x01\x03\x12\x030\x16\x17\n\xa9\x02\n\x04\x04\x02\x02\x02\x12\ + \x035\x04\x1a\x1a\x9b\x02\x20Range\x20start\x20and\x20end\x20mirrors\x20\ + developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range.\n\x20If\x20both\ + \x20is\x20none\x20zero,\x20only\x20data\x20within\x20range\x20is\x20requ\ + ested.\n\x20The\x20unit\x20of\x20range\x20is\x20always\x20in\x20bytes.\n\ + \x20If\x20used,\x20please\x20check\x20the\x20returned\x20range\x20values\ + \x20in\x20blobs\x20to\x20make\x20sure\x20this\x20feature\x20is\x20suppor\ + ted.\n\n\r\n\x05\x04\x02\x02\x02\x04\x12\x045\x040\x18\n\x0c\n\x05\x04\ + \x02\x02\x02\x05\x12\x035\x04\n\n\x0c\n\x05\x04\x02\x02\x02\x01\x12\x035\ + \x0b\x15\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x035\x18\x19\n\x0b\n\x04\ + \x04\x02\x02\x03\x12\x036\x04\x18\n\r\n\x05\x04\x02\x02\x03\x04\x12\x046\ + \x045\x1a\n\x0c\n\x05\x04\x02\x02\x03\x05\x12\x036\x04\n\n\x0c\n\x05\x04\ + \x02\x02\x03\x01\x12\x036\x0b\x13\n\x0c\n\x05\x04\x02\x02\x03\x03\x12\ + \x036\x16\x17\n\x86\x01\n\x02\x04\x03\x12\x04;\0>\x01\x1az\x20DownloadRe\ + sponse\x20contains\x20the\x20response\x20to\x20a\x20download\x20request\ + \n\x20which\x20allows\x20the\x20gRPC\x20server\x20to\x20stream\x20blobs\ + \x20to\x20the\x20client\n\n\n\n\x03\x04\x03\x01\x12\x03;\x08\x18\n-\n\ + \x04\x04\x03\x02\0\x12\x03=\x04\x12\x1a\x20\x20blob\x20is\x20a\x20single\ + \x20chunk\x20of\x20data\n\n\r\n\x05\x04\x03\x02\0\x04\x12\x04=\x04;\x1a\ + \n\x0c\n\x05\x04\x03\x02\0\x06\x12\x03=\x04\x08\n\x0c\n\x05\x04\x03\x02\ + \0\x01\x12\x03=\t\r\n\x0c\n\x05\x04\x03\x02\0\x03\x12\x03=\x10\x11\n,\n\ + \x02\x04\x04\x12\x04A\0J\x01\x1a\x20\x20Blob\x20is\x20a\x20chunk\x20of\ + \x20binary\x20data\n\n\n\n\x03\x04\x04\x01\x12\x03A\x08\x0c\nJ\n\x04\x04\ + \x04\x02\0\x12\x03C\x04\x16\x1a=\x20content\x20is\x20the\x20actual\x20bi\ + nary\x20data\x20contained\x20in\x20this\x20message\n\n\r\n\x05\x04\x04\ + \x02\0\x04\x12\x04C\x04A\x0e\n\x0c\n\x05\x04\x04\x02\0\x05\x12\x03C\x04\ + \t\n\x0c\n\x05\x04\x04\x02\0\x01\x12\x03C\n\x11\n\x0c\n\x05\x04\x04\x02\ + \0\x03\x12\x03C\x14\x15\n\x93\x02\n\x04\x04\x04\x02\x01\x12\x03H\x04\x1a\ + \x1a\x85\x02\x20Range\x20start\x20and\x20end\x20mirrors\x20developer.moz\ + illa.org/en-US/docs/Web/HTTP/Headers/Content-Range.\n\x20If\x20both\x20i\ + s\x20zero,\x20the\x20blobs\x20streams\x20contents\x20of\x20the\x20file\ + \x20from\x20start\x20to\x20finish.\n\x20The\x20unit\x20of\x20range\x20is\ + \x20always\x20in\x20bytes.\n\x20Currently,\x20DownloadResponse\x20suppor\ + t\x20blob\x20range.\n\n\r\n\x05\x04\x04\x02\x01\x04\x12\x04H\x04C\x16\n\ + \x0c\n\x05\x04\x04\x02\x01\x05\x12\x03H\x04\n\n\x0c\n\x05\x04\x04\x02\ + \x01\x01\x12\x03H\x0b\x15\n\x0c\n\x05\x04\x04\x02\x01\x03\x12\x03H\x18\ + \x19\n\x0b\n\x04\x04\x04\x02\x02\x12\x03I\x04\x18\n\r\n\x05\x04\x04\x02\ + \x02\x04\x12\x04I\x04H\x1a\n\x0c\n\x05\x04\x04\x02\x02\x05\x12\x03I\x04\ + \n\n\x0c\n\x05\x04\x04\x02\x02\x01\x12\x03I\x0b\x13\n\x0c\n\x05\x04\x04\ + \x02\x02\x03\x12\x03I\x16\x17\nU\n\x02\x04\x05\x12\x04M\0P\x01\x1aI\x20U\ + ploadRequest\x20is\x20used\x20to\x20decrease\x20the\x20reference\x20coun\ + t\x20on\x20UnixFS\x20objects\n\n\n\n\x03\x04\x05\x01\x12\x03M\x08\x15\ng\ + \n\x04\x04\x05\x02\0\x12\x03O\x04#\x1aZ\x20refIDs\x20is\x20a\x20map\x20o\ + f\x20reference\x20IDs\x20to\x20hash/cid\x20of\x20objects\x20to\x20remove\ + \x20those\x20reference\x20counts\n\n\r\n\x05\x04\x05\x02\0\x04\x12\x04O\ + \x04M\x16\n\x0c\n\x05\x04\x05\x02\0\x06\x12\x03O\x04\x17\n\x0c\n\x05\x04\ + \x05\x02\0\x01\x12\x03O\x18\x1e\n\x0c\n\x05\x04\x05\x02\0\x03\x12\x03O!\ + \"\nF\n\x02\x04\x06\x12\x04S\0W\x01\x1a:\x20RemoveResponse\x20contains\ + \x20the\x20response\x20to\x20a\x20remove\x20request\n\n\n\n\x03\x04\x06\ + \x01\x12\x03S\x08\x16\n\x96\x01\n\x04\x04\x06\x02\0\x12\x03V\x04\x15\x1a\ + \x88\x01\x20The\x20number\x20of\x20removal\x20operations\x20performed.\n\ + \x20A\x20missing\x20count\x20is\x20because\x20the\x20refID\x20to\x20hash\ + \x20pair\x20was\x20already\x20removed\x20or\x20was\x20never\x20added\x20\ + \n\n\r\n\x05\x04\x06\x02\0\x04\x12\x04V\x04S\x17\n\x0c\n\x05\x04\x06\x02\ + \0\x05\x12\x03V\x04\n\n\x0c\n\x05\x04\x06\x02\0\x01\x12\x03V\x0b\x10\n\ + \x0c\n\x05\x04\x06\x02\0\x03\x12\x03V\x13\x14b\x06proto3\ "; -static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/rs/src/file_grpc.rs b/rs/src/file_grpc.rs index 97fb7d9..0d1d0d4 100644 --- a/rs/src/file_grpc.rs +++ b/rs/src/file_grpc.rs @@ -32,6 +32,13 @@ const METHOD_FILE_API_DOWNLOAD_FILE: ::grpcio::Method = ::grpcio::Method { + ty: ::grpcio::MethodType::Unary, + name: "/pb.FileAPI/RemoveFile", + req_mar: ::grpcio::Marshaller { ser: ::grpcio::pb_ser, de: ::grpcio::pb_de }, + resp_mar: ::grpcio::Marshaller { ser: ::grpcio::pb_ser, de: ::grpcio::pb_de }, +}; + #[derive(Clone)] pub struct FileApiClient { client: ::grpcio::Client, @@ -59,7 +66,23 @@ impl FileApiClient { pub fn download_file(&self, req: &super::file::DownloadRequest) -> ::grpcio::Result<::grpcio::ClientSStreamReceiver> { self.download_file_opt(req, ::grpcio::CallOption::default()) } - pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { + + pub fn remove_file_opt(&self, req: &super::file::RemoveRequest, opt: ::grpcio::CallOption) -> ::grpcio::Result { + self.client.unary_call(&METHOD_FILE_API_REMOVE_FILE, req, opt) + } + + pub fn remove_file(&self, req: &super::file::RemoveRequest) -> ::grpcio::Result { + self.remove_file_opt(req, ::grpcio::CallOption::default()) + } + + pub fn remove_file_async_opt(&self, req: &super::file::RemoveRequest, opt: ::grpcio::CallOption) -> ::grpcio::Result<::grpcio::ClientUnaryReceiver> { + self.client.unary_call_async(&METHOD_FILE_API_REMOVE_FILE, req, opt) + } + + pub fn remove_file_async(&self, req: &super::file::RemoveRequest) -> ::grpcio::Result<::grpcio::ClientUnaryReceiver> { + self.remove_file_async_opt(req, ::grpcio::CallOption::default()) + } + pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { self.client.spawn(f) } } @@ -67,6 +90,7 @@ impl FileApiClient { pub trait FileApi { fn upload_file(&mut self, ctx: ::grpcio::RpcContext, stream: ::grpcio::RequestStream, sink: ::grpcio::ClientStreamingSink); fn download_file(&mut self, ctx: ::grpcio::RpcContext, req: super::file::DownloadRequest, sink: ::grpcio::ServerStreamingSink); + fn remove_file(&mut self, ctx: ::grpcio::RpcContext, req: super::file::RemoveRequest, sink: ::grpcio::UnarySink); } pub fn create_file_api(s: S) -> ::grpcio::Service { @@ -75,9 +99,13 @@ pub fn create_file_api(s: S) -> ::grpcio::S builder = builder.add_client_streaming_handler(&METHOD_FILE_API_UPLOAD_FILE, move |ctx, req, resp| { instance.upload_file(ctx, req, resp) }); - let mut instance = s; + let mut instance = s.clone(); builder = builder.add_server_streaming_handler(&METHOD_FILE_API_DOWNLOAD_FILE, move |ctx, req, resp| { instance.download_file(ctx, req, resp) }); + let mut instance = s; + builder = builder.add_unary_handler(&METHOD_FILE_API_REMOVE_FILE, move |ctx, req, resp| { + instance.remove_file(ctx, req, resp) + }); builder.build() } diff --git a/rs/src/namesys.rs b/rs/src/namesys.rs index a768ac8..7ed3a23 100644 --- a/rs/src/namesys.rs +++ b/rs/src/namesys.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `namesys.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct NameSysResolveRequest { @@ -218,7 +215,7 @@ impl ::protobuf::Message for NameSysResolveRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -231,50 +228,40 @@ impl ::protobuf::Message for NameSysResolveRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "name", - |m: &NameSysResolveRequest| { &m.name }, - |m: &mut NameSysResolveRequest| { &mut m.name }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( - "depth", - |m: &NameSysResolveRequest| { &m.depth }, - |m: &mut NameSysResolveRequest| { &mut m.depth }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( - "dhtRecordCount", - |m: &NameSysResolveRequest| { &m.dhtRecordCount }, - |m: &mut NameSysResolveRequest| { &mut m.dhtRecordCount }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "dhtTimeout", - |m: &NameSysResolveRequest| { &m.dhtTimeout }, - |m: &mut NameSysResolveRequest| { &mut m.dhtTimeout }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "NameSysResolveRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &NameSysResolveRequest| { &m.name }, + |m: &mut NameSysResolveRequest| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( + "depth", + |m: &NameSysResolveRequest| { &m.depth }, + |m: &mut NameSysResolveRequest| { &mut m.depth }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( + "dhtRecordCount", + |m: &NameSysResolveRequest| { &m.dhtRecordCount }, + |m: &mut NameSysResolveRequest| { &mut m.dhtRecordCount }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "dhtTimeout", + |m: &NameSysResolveRequest| { &m.dhtTimeout }, + |m: &mut NameSysResolveRequest| { &mut m.dhtTimeout }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "NameSysResolveRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static NameSysResolveRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const NameSysResolveRequest, - }; - unsafe { - instance.get(NameSysResolveRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(NameSysResolveRequest::new) } } @@ -295,8 +282,8 @@ impl ::std::fmt::Debug for NameSysResolveRequest { } impl ::protobuf::reflect::ProtobufValue for NameSysResolveRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -441,7 +428,7 @@ impl ::protobuf::Message for NameSysResolveResult { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -454,40 +441,30 @@ impl ::protobuf::Message for NameSysResolveResult { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "path", - |m: &NameSysResolveResult| { &m.path }, - |m: &mut NameSysResolveResult| { &mut m.path }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "error", - |m: &NameSysResolveResult| { &m.error }, - |m: &mut NameSysResolveResult| { &mut m.error }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "NameSysResolveResult", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "path", + |m: &NameSysResolveResult| { &m.path }, + |m: &mut NameSysResolveResult| { &mut m.path }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "error", + |m: &NameSysResolveResult| { &m.error }, + |m: &mut NameSysResolveResult| { &mut m.error }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "NameSysResolveResult", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static NameSysResolveResult { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const NameSysResolveResult, - }; - unsafe { - instance.get(NameSysResolveResult::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(NameSysResolveResult::new) } } @@ -506,8 +483,8 @@ impl ::std::fmt::Debug for NameSysResolveResult { } impl ::protobuf::reflect::ProtobufValue for NameSysResolveResult { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -710,7 +687,7 @@ impl ::protobuf::Message for NameSysPublishRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -723,50 +700,40 @@ impl ::protobuf::Message for NameSysPublishRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "privateKey", - |m: &NameSysPublishRequest| { &m.privateKey }, - |m: &mut NameSysPublishRequest| { &mut m.privateKey }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "value", - |m: &NameSysPublishRequest| { &m.value }, - |m: &mut NameSysPublishRequest| { &mut m.value }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "eol", - |m: &NameSysPublishRequest| { &m.eol }, - |m: &mut NameSysPublishRequest| { &mut m.eol }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "ttl", - |m: &NameSysPublishRequest| { &m.ttl }, - |m: &mut NameSysPublishRequest| { &mut m.ttl }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "NameSysPublishRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "privateKey", + |m: &NameSysPublishRequest| { &m.privateKey }, + |m: &mut NameSysPublishRequest| { &mut m.privateKey }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "value", + |m: &NameSysPublishRequest| { &m.value }, + |m: &mut NameSysPublishRequest| { &mut m.value }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "eol", + |m: &NameSysPublishRequest| { &m.eol }, + |m: &mut NameSysPublishRequest| { &mut m.eol }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "ttl", + |m: &NameSysPublishRequest| { &m.ttl }, + |m: &mut NameSysPublishRequest| { &mut m.ttl }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "NameSysPublishRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static NameSysPublishRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const NameSysPublishRequest, - }; - unsafe { - instance.get(NameSysPublishRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(NameSysPublishRequest::new) } } @@ -787,8 +754,8 @@ impl ::std::fmt::Debug for NameSysPublishRequest { } impl ::protobuf::reflect::ProtobufValue for NameSysPublishRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -806,92 +773,88 @@ static file_descriptor_proto_data: &'static [u8] = b"\ eRequest\x1a\x18.pb.NameSysResolveResult\"\0\x12N\n\x13NameSysResolveAsy\ nc\x12\x19.pb.NameSysResolveRequest\x1a\x18.pb.NameSysResolveResult\"\00\ \x01\x128\n\x0eNameSysPublish\x12\x19.pb.NameSysPublishRequest\x1a\t.pb.\ - Empty\"\0J\xf6\x0f\n\x06\x12\x04\0\02\x01\n\x08\n\x01\x0c\x12\x03\0\0\ + Empty\"\0J\x8d\x10\n\x06\x12\x04\0\02\x01\n\x08\n\x01\x0c\x12\x03\0\0\ \x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\n\t\n\x02\x03\0\x12\x03\x02\x07\ - \x13\n?\n\x02\x06\0\x12\x04\x05\0\r\x01\x1a3\x20NameSysAPI\x20provides\ - \x20a\x20generic\x20name\x20resolution\x20API\n\n\n\n\x03\x06\0\x01\x12\ - \x03\x05\x08\x12\n\\\n\x04\x06\0\x02\0\x12\x03\x07\x04P\x1aO\x20NameSysR\ - esolve\x20is\x20used\x20to\x20resolve\x20a\x20name,\x20waiting\x20for\ - \x20the\x20request\x20to\x20complete\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\ + \x13\n@\n\x02\x06\0\x12\x04\x05\0\r\x01\x1a4\x20NameSysAPI\x20provides\ + \x20a\x20generic\x20name\x20resolution\x20API\r\n\n\n\n\x03\x06\0\x01\ + \x12\x03\x05\x08\x12\n]\n\x04\x06\0\x02\0\x12\x03\x07\x04P\x1aP\x20NameS\ + ysResolve\x20is\x20used\x20to\x20resolve\x20a\x20name,\x20waiting\x20for\ + \x20the\x20request\x20to\x20complete\r\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\ \x03\x07\x08\x16\n\x0c\n\x05\x06\0\x02\0\x02\x12\x03\x07\x17,\n\x0c\n\ - \x05\x06\0\x02\0\x03\x12\x03\x077K\n\xa3\x01\n\x04\x06\0\x02\x01\x12\x03\ - \n\x04\\\x1a\x95\x01\x20NameSysResolveAsync\x20is\x20like\x20Resolve,\ - \x20except\x20instead\x20of\x20waiting\x20for\x20the\x20request\n\x20to\ - \x20complete,\x20we\x20send\x20back\x20a\x20stream\x20which\x20we\x20wil\ - l\x20send\x20the\x20result\x20on\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x03\ - \n\x08\x1b\n\x0c\n\x05\x06\0\x02\x01\x02\x12\x03\n\x1c1\n\x0c\n\x05\x06\ - \0\x02\x01\x06\x12\x03\n\n\x02\x04\x02\x12\ - \x04&\02\x01\x1a2\x20NameSysPublishRequest\x20is\x20used\x20to\x20publis\ - h\x20a\x20value\n\n\n\n\x03\x04\x02\x01\x12\x03&\x08\x1d\n5\n\x04\x04\ - \x02\x02\0\x12\x03(\x04\x19\x1a(\x20the\x20private\x20key\x20(name)\x20f\ - or\x20this\x20record\n\n\r\n\x05\x04\x02\x02\0\x04\x12\x04(\x04&\x1f\n\ - \x0c\n\x05\x04\x02\x02\0\x05\x12\x03(\x04\t\n\x0c\n\x05\x04\x02\x02\0\ - \x01\x12\x03(\n\x14\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x03(\x17\x18\n'\n\ - \x04\x04\x02\x02\x01\x12\x03*\x04\x15\x1a\x1a\x20the\x20value\x20of\x20t\ - his\x20record\n\n\r\n\x05\x04\x02\x02\x01\x04\x12\x04*\x04(\x19\n\x0c\n\ - \x05\x04\x02\x02\x01\x05\x12\x03*\x04\n\n\x0c\n\x05\x04\x02\x02\x01\x01\ - \x12\x03*\x0b\x10\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03*\x13\x14\n\x80\ - \x01\n\x04\x04\x02\x02\x02\x12\x03.\x04\x13\x1as\x20the\x20eol\x20for\ - \x20this\x20publish,\x20if\x200\x20implies\n\x20as\x20NameSys::Publish\ - \x20call,\x20if\x20non\x200\x20implies\n\x20a\x20NameSys:PublishWithEOL\ - \x20call\n\n\r\n\x05\x04\x02\x02\x02\x04\x12\x04.\x04*\x15\n\x0c\n\x05\ - \x04\x02\x02\x02\x05\x12\x03.\x04\t\n\x0c\n\x05\x04\x02\x02\x02\x01\x12\ - \x03.\x0b\x0e\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x03.\x11\x12\nO\n\x04\ - \x04\x02\x02\x03\x12\x031\x04\x13\x1aB\x20if\x20set,\x20allows\x20us\x20\ - to\x20override\x20default\n\x20ttl\x20value\x20of\x20ipns\x20records\n\n\ - \r\n\x05\x04\x02\x02\x03\x04\x12\x041\x04.\x13\n\x0c\n\x05\x04\x02\x02\ - \x03\x05\x12\x031\x04\t\n\x0c\n\x05\x04\x02\x02\x03\x01\x12\x031\x0b\x0e\ - \n\x0c\n\x05\x04\x02\x02\x03\x03\x12\x031\x11\x12b\x06proto3\ + \x05\x06\0\x02\0\x03\x12\x03\x077K\n\xa5\x01\n\x04\x06\0\x02\x01\x12\x03\ + \n\x04\\\x1a\x97\x01\x20NameSysResolveAsync\x20is\x20like\x20Resolve,\ + \x20except\x20instead\x20of\x20waiting\x20for\x20the\x20request\r\n\x20t\ + o\x20complete,\x20we\x20send\x20back\x20a\x20stream\x20which\x20we\x20wi\ + ll\x20send\x20the\x20result\x20on\r\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\ + \x03\n\x08\x1b\n\x0c\n\x05\x06\0\x02\x01\x02\x12\x03\n\x1c1\n\x0c\n\x05\ + \x06\0\x02\x01\x06\x12\x03\n = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/rs/src/namesys_grpc.rs b/rs/src/namesys_grpc.rs index 50aea18..bbe8d4a 100644 --- a/rs/src/namesys_grpc.rs +++ b/rs/src/namesys_grpc.rs @@ -90,7 +90,7 @@ impl NameSysApiClient { pub fn name_sys_publish_async(&self, req: &super::namesys::NameSysPublishRequest) -> ::grpcio::Result<::grpcio::ClientUnaryReceiver> { self.name_sys_publish_async_opt(req, ::grpcio::CallOption::default()) } - pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { + pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { self.client.spawn(f) } } diff --git a/rs/src/node.rs b/rs/src/node.rs index 100f6d8..5772f81 100644 --- a/rs/src/node.rs +++ b/rs/src/node.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `node.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct P2PRequest { @@ -332,7 +329,7 @@ impl ::protobuf::Message for P2PRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != P2PREQTYPE::CLOSE { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } if self.all != false { os.write_bool(2, self.all)?; @@ -380,7 +377,7 @@ impl ::protobuf::Message for P2PRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -393,75 +390,65 @@ impl ::protobuf::Message for P2PRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &P2PRequest| { &m.requestType }, - |m: &mut P2PRequest| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "all", - |m: &P2PRequest| { &m.all }, - |m: &mut P2PRequest| { &mut m.all }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "verbose", - |m: &P2PRequest| { &m.verbose }, - |m: &mut P2PRequest| { &mut m.verbose }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "protocolName", - |m: &P2PRequest| { &m.protocolName }, - |m: &mut P2PRequest| { &mut m.protocolName }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "listenAddress", - |m: &P2PRequest| { &m.listenAddress }, - |m: &mut P2PRequest| { &mut m.listenAddress }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "targetAddress", - |m: &P2PRequest| { &m.targetAddress }, - |m: &mut P2PRequest| { &mut m.targetAddress }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "remoteAddress", - |m: &P2PRequest| { &m.remoteAddress }, - |m: &mut P2PRequest| { &mut m.remoteAddress }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "allowCustomProtocols", - |m: &P2PRequest| { &m.allowCustomProtocols }, - |m: &mut P2PRequest| { &mut m.allowCustomProtocols }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "reportPeerID", - |m: &P2PRequest| { &m.reportPeerID }, - |m: &mut P2PRequest| { &mut m.reportPeerID }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "P2PRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &P2PRequest| { &m.requestType }, + |m: &mut P2PRequest| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "all", + |m: &P2PRequest| { &m.all }, + |m: &mut P2PRequest| { &mut m.all }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "verbose", + |m: &P2PRequest| { &m.verbose }, + |m: &mut P2PRequest| { &mut m.verbose }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "protocolName", + |m: &P2PRequest| { &m.protocolName }, + |m: &mut P2PRequest| { &mut m.protocolName }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "listenAddress", + |m: &P2PRequest| { &m.listenAddress }, + |m: &mut P2PRequest| { &mut m.listenAddress }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "targetAddress", + |m: &P2PRequest| { &m.targetAddress }, + |m: &mut P2PRequest| { &mut m.targetAddress }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "remoteAddress", + |m: &P2PRequest| { &m.remoteAddress }, + |m: &mut P2PRequest| { &mut m.remoteAddress }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "allowCustomProtocols", + |m: &P2PRequest| { &m.allowCustomProtocols }, + |m: &mut P2PRequest| { &mut m.allowCustomProtocols }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "reportPeerID", + |m: &P2PRequest| { &m.reportPeerID }, + |m: &mut P2PRequest| { &mut m.reportPeerID }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "P2PRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static P2PRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const P2PRequest, - }; - unsafe { - instance.get(P2PRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(P2PRequest::new) } } @@ -487,8 +474,8 @@ impl ::std::fmt::Debug for P2PRequest { } impl ::protobuf::reflect::ProtobufValue for P2PRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -658,7 +645,7 @@ impl ::protobuf::Message for P2PResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != P2PREQTYPE::CLOSE { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } for v in &self.names { os.write_string(2, &v)?; @@ -693,7 +680,7 @@ impl ::protobuf::Message for P2PResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -706,50 +693,40 @@ impl ::protobuf::Message for P2PResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &P2PResponse| { &m.requestType }, - |m: &mut P2PResponse| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "names", - |m: &P2PResponse| { &m.names }, - |m: &mut P2PResponse| { &mut m.names }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "connsClosed", - |m: &P2PResponse| { &m.connsClosed }, - |m: &mut P2PResponse| { &mut m.connsClosed }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "streamInfos", - |m: &P2PResponse| { &m.streamInfos }, - |m: &mut P2PResponse| { &mut m.streamInfos }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "P2PResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &P2PResponse| { &m.requestType }, + |m: &mut P2PResponse| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "names", + |m: &P2PResponse| { &m.names }, + |m: &mut P2PResponse| { &mut m.names }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "connsClosed", + |m: &P2PResponse| { &m.connsClosed }, + |m: &mut P2PResponse| { &mut m.connsClosed }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "streamInfos", + |m: &P2PResponse| { &m.streamInfos }, + |m: &mut P2PResponse| { &mut m.streamInfos }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "P2PResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static P2PResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const P2PResponse, - }; - unsafe { - instance.get(P2PResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(P2PResponse::new) } } @@ -770,8 +747,8 @@ impl ::std::fmt::Debug for P2PResponse { } impl ::protobuf::reflect::ProtobufValue for P2PResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -981,7 +958,7 @@ impl ::protobuf::Message for P2PLsInfo { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -994,50 +971,40 @@ impl ::protobuf::Message for P2PLsInfo { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "protocolName", - |m: &P2PLsInfo| { &m.protocolName }, - |m: &mut P2PLsInfo| { &mut m.protocolName }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "listenAddress", - |m: &P2PLsInfo| { &m.listenAddress }, - |m: &mut P2PLsInfo| { &mut m.listenAddress }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "targetAddress", - |m: &P2PLsInfo| { &m.targetAddress }, - |m: &mut P2PLsInfo| { &mut m.targetAddress }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "local", - |m: &P2PLsInfo| { &m.local }, - |m: &mut P2PLsInfo| { &mut m.local }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "P2PLsInfo", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "protocolName", + |m: &P2PLsInfo| { &m.protocolName }, + |m: &mut P2PLsInfo| { &mut m.protocolName }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "listenAddress", + |m: &P2PLsInfo| { &m.listenAddress }, + |m: &mut P2PLsInfo| { &mut m.listenAddress }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "targetAddress", + |m: &P2PLsInfo| { &m.targetAddress }, + |m: &mut P2PLsInfo| { &mut m.targetAddress }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "local", + |m: &P2PLsInfo| { &m.local }, + |m: &mut P2PLsInfo| { &mut m.local }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "P2PLsInfo", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static P2PLsInfo { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const P2PLsInfo, - }; - unsafe { - instance.get(P2PLsInfo::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(P2PLsInfo::new) } } @@ -1058,8 +1025,8 @@ impl ::std::fmt::Debug for P2PLsInfo { } impl ::protobuf::reflect::ProtobufValue for P2PLsInfo { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1167,7 +1134,7 @@ impl ::protobuf::Message for GetPeersResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1180,35 +1147,25 @@ impl ::protobuf::Message for GetPeersResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "peerIDs", - |m: &GetPeersResponse| { &m.peerIDs }, - |m: &mut GetPeersResponse| { &mut m.peerIDs }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "GetPeersResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "peerIDs", + |m: &GetPeersResponse| { &m.peerIDs }, + |m: &mut GetPeersResponse| { &mut m.peerIDs }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "GetPeersResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static GetPeersResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const GetPeersResponse, - }; - unsafe { - instance.get(GetPeersResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(GetPeersResponse::new) } } @@ -1226,8 +1183,8 @@ impl ::std::fmt::Debug for GetPeersResponse { } impl ::protobuf::reflect::ProtobufValue for GetPeersResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1365,7 +1322,7 @@ impl ::protobuf::Message for ConnMgmtRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != CONNMGMTREQTYPE::CM_CONNECT { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } for v in &self.multiAddrs { os.write_string(2, &v)?; @@ -1395,7 +1352,7 @@ impl ::protobuf::Message for ConnMgmtRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1408,45 +1365,35 @@ impl ::protobuf::Message for ConnMgmtRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &ConnMgmtRequest| { &m.requestType }, - |m: &mut ConnMgmtRequest| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "multiAddrs", - |m: &ConnMgmtRequest| { &m.multiAddrs }, - |m: &mut ConnMgmtRequest| { &mut m.multiAddrs }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "peerIDs", - |m: &ConnMgmtRequest| { &m.peerIDs }, - |m: &mut ConnMgmtRequest| { &mut m.peerIDs }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ConnMgmtRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &ConnMgmtRequest| { &m.requestType }, + |m: &mut ConnMgmtRequest| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "multiAddrs", + |m: &ConnMgmtRequest| { &m.multiAddrs }, + |m: &mut ConnMgmtRequest| { &mut m.multiAddrs }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "peerIDs", + |m: &ConnMgmtRequest| { &m.peerIDs }, + |m: &mut ConnMgmtRequest| { &mut m.peerIDs }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ConnMgmtRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ConnMgmtRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ConnMgmtRequest, - }; - unsafe { - instance.get(ConnMgmtRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ConnMgmtRequest::new) } } @@ -1466,8 +1413,8 @@ impl ::std::fmt::Debug for ConnMgmtRequest { } impl ::protobuf::reflect::ProtobufValue for ConnMgmtRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1633,7 +1580,7 @@ impl ::protobuf::Message for ConnMgmtResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != CONNMGMTREQTYPE::CM_CONNECT { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } ::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeBool>(2, &self.connected, os)?; ::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>(3, &self.status, os)?; @@ -1662,7 +1609,7 @@ impl ::protobuf::Message for ConnMgmtResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1675,50 +1622,40 @@ impl ::protobuf::Message for ConnMgmtResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &ConnMgmtResponse| { &m.requestType }, - |m: &mut ConnMgmtResponse| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeBool>( - "connected", - |m: &ConnMgmtResponse| { &m.connected }, - |m: &mut ConnMgmtResponse| { &mut m.connected }, - )); - fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>( - "status", - |m: &ConnMgmtResponse| { &m.status }, - |m: &mut ConnMgmtResponse| { &mut m.status }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "peerIDs", - |m: &ConnMgmtResponse| { &m.peerIDs }, - |m: &mut ConnMgmtResponse| { &mut m.peerIDs }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ConnMgmtResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &ConnMgmtResponse| { &m.requestType }, + |m: &mut ConnMgmtResponse| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeBool>( + "connected", + |m: &ConnMgmtResponse| { &m.connected }, + |m: &mut ConnMgmtResponse| { &mut m.connected }, + )); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>( + "status", + |m: &ConnMgmtResponse| { &m.status }, + |m: &mut ConnMgmtResponse| { &mut m.status }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "peerIDs", + |m: &ConnMgmtResponse| { &m.peerIDs }, + |m: &mut ConnMgmtResponse| { &mut m.peerIDs }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ConnMgmtResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ConnMgmtResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ConnMgmtResponse, - }; - unsafe { - instance.get(ConnMgmtResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ConnMgmtResponse::new) } } @@ -1739,8 +1676,8 @@ impl ::std::fmt::Debug for ConnMgmtResponse { } impl ::protobuf::reflect::ProtobufValue for ConnMgmtResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1878,7 +1815,7 @@ impl ::protobuf::Message for ConnMgmtStatus { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1891,40 +1828,30 @@ impl ::protobuf::Message for ConnMgmtStatus { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "disconnected", - |m: &ConnMgmtStatus| { &m.disconnected }, - |m: &mut ConnMgmtStatus| { &mut m.disconnected }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "reason", - |m: &ConnMgmtStatus| { &m.reason }, - |m: &mut ConnMgmtStatus| { &mut m.reason }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ConnMgmtStatus", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "disconnected", + |m: &ConnMgmtStatus| { &m.disconnected }, + |m: &mut ConnMgmtStatus| { &mut m.disconnected }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "reason", + |m: &ConnMgmtStatus| { &m.reason }, + |m: &mut ConnMgmtStatus| { &mut m.reason }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ConnMgmtStatus", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ConnMgmtStatus { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ConnMgmtStatus, - }; - unsafe { - instance.get(ConnMgmtStatus::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ConnMgmtStatus::new) } } @@ -1943,8 +1870,8 @@ impl ::std::fmt::Debug for ConnMgmtStatus { } impl ::protobuf::reflect::ProtobufValue for ConnMgmtStatus { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -2040,10 +1967,10 @@ impl ::protobuf::Message for ExtrasRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != EXTRASREQTYPE::EX_ENABLE { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } if self.extrasFeature != EXTRASTYPE::IDENTIFY { - os.write_enum(2, self.extrasFeature.value())?; + os.write_enum(2, ::protobuf::ProtobufEnum::value(&self.extrasFeature))?; } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) @@ -2067,7 +1994,7 @@ impl ::protobuf::Message for ExtrasRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -2080,40 +2007,30 @@ impl ::protobuf::Message for ExtrasRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &ExtrasRequest| { &m.requestType }, - |m: &mut ExtrasRequest| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "extrasFeature", - |m: &ExtrasRequest| { &m.extrasFeature }, - |m: &mut ExtrasRequest| { &mut m.extrasFeature }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ExtrasRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &ExtrasRequest| { &m.requestType }, + |m: &mut ExtrasRequest| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "extrasFeature", + |m: &ExtrasRequest| { &m.extrasFeature }, + |m: &mut ExtrasRequest| { &mut m.extrasFeature }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ExtrasRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ExtrasRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ExtrasRequest, - }; - unsafe { - instance.get(ExtrasRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ExtrasRequest::new) } } @@ -2132,8 +2049,8 @@ impl ::std::fmt::Debug for ExtrasRequest { } impl ::protobuf::reflect::ProtobufValue for ExtrasRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -2146,6 +2063,9 @@ pub struct BlockstoreRequest { pub data: ::protobuf::RepeatedField<::std::vec::Vec>, pub cidVersion: ::std::string::String, pub hashFunc: ::std::string::String, + pub refID: ::std::string::String, + pub progressive: bool, + pub replace: bool, // special fields pub unknown_fields: ::protobuf::UnknownFields, pub cached_size: ::protobuf::CachedSize, @@ -2303,6 +2223,62 @@ impl BlockstoreRequest { pub fn take_hashFunc(&mut self) -> ::std::string::String { ::std::mem::replace(&mut self.hashFunc, ::std::string::String::new()) } + + // string refID = 8; + + + pub fn get_refID(&self) -> &str { + &self.refID + } + pub fn clear_refID(&mut self) { + self.refID.clear(); + } + + // Param is passed by value, moved + pub fn set_refID(&mut self, v: ::std::string::String) { + self.refID = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_refID(&mut self) -> &mut ::std::string::String { + &mut self.refID + } + + // Take field + pub fn take_refID(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.refID, ::std::string::String::new()) + } + + // bool progressive = 9; + + + pub fn get_progressive(&self) -> bool { + self.progressive + } + pub fn clear_progressive(&mut self) { + self.progressive = false; + } + + // Param is passed by value, moved + pub fn set_progressive(&mut self, v: bool) { + self.progressive = v; + } + + // bool replace = 10; + + + pub fn get_replace(&self) -> bool { + self.replace + } + pub fn clear_replace(&mut self) { + self.replace = false; + } + + // Param is passed by value, moved + pub fn set_replace(&mut self, v: bool) { + self.replace = v; + } } impl ::protobuf::Message for BlockstoreRequest { @@ -2332,6 +2308,23 @@ impl ::protobuf::Message for BlockstoreRequest { 7 => { ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.hashFunc)?; }, + 8 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.refID)?; + }, + 9 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.progressive = tmp; + }, + 10 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.replace = tmp; + }, _ => { ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; }, @@ -2362,6 +2355,15 @@ impl ::protobuf::Message for BlockstoreRequest { if !self.hashFunc.is_empty() { my_size += ::protobuf::rt::string_size(7, &self.hashFunc); } + if !self.refID.is_empty() { + my_size += ::protobuf::rt::string_size(8, &self.refID); + } + if self.progressive != false { + my_size += 2; + } + if self.replace != false { + my_size += 2; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -2369,10 +2371,10 @@ impl ::protobuf::Message for BlockstoreRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != BSREQTYPE::BS_DELETE { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } for v in &self.reqOpts { - os.write_enum(2, v.value())?; + os.write_enum(2, ::protobuf::ProtobufEnum::value(v))?; }; for v in &self.cids { os.write_string(3, &v)?; @@ -2386,6 +2388,15 @@ impl ::protobuf::Message for BlockstoreRequest { if !self.hashFunc.is_empty() { os.write_string(7, &self.hashFunc)?; } + if !self.refID.is_empty() { + os.write_string(8, &self.refID)?; + } + if self.progressive != false { + os.write_bool(9, self.progressive)?; + } + if self.replace != false { + os.write_bool(10, self.replace)?; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2408,7 +2419,7 @@ impl ::protobuf::Message for BlockstoreRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -2421,60 +2432,65 @@ impl ::protobuf::Message for BlockstoreRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &BlockstoreRequest| { &m.requestType }, - |m: &mut BlockstoreRequest| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "reqOpts", - |m: &BlockstoreRequest| { &m.reqOpts }, - |m: &mut BlockstoreRequest| { &mut m.reqOpts }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "cids", - |m: &BlockstoreRequest| { &m.cids }, - |m: &mut BlockstoreRequest| { &mut m.cids }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "data", - |m: &BlockstoreRequest| { &m.data }, - |m: &mut BlockstoreRequest| { &mut m.data }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "cidVersion", - |m: &BlockstoreRequest| { &m.cidVersion }, - |m: &mut BlockstoreRequest| { &mut m.cidVersion }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "hashFunc", - |m: &BlockstoreRequest| { &m.hashFunc }, - |m: &mut BlockstoreRequest| { &mut m.hashFunc }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "BlockstoreRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &BlockstoreRequest| { &m.requestType }, + |m: &mut BlockstoreRequest| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "reqOpts", + |m: &BlockstoreRequest| { &m.reqOpts }, + |m: &mut BlockstoreRequest| { &mut m.reqOpts }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "cids", + |m: &BlockstoreRequest| { &m.cids }, + |m: &mut BlockstoreRequest| { &mut m.cids }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "data", + |m: &BlockstoreRequest| { &m.data }, + |m: &mut BlockstoreRequest| { &mut m.data }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "cidVersion", + |m: &BlockstoreRequest| { &m.cidVersion }, + |m: &mut BlockstoreRequest| { &mut m.cidVersion }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "hashFunc", + |m: &BlockstoreRequest| { &m.hashFunc }, + |m: &mut BlockstoreRequest| { &mut m.hashFunc }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "refID", + |m: &BlockstoreRequest| { &m.refID }, + |m: &mut BlockstoreRequest| { &mut m.refID }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "progressive", + |m: &BlockstoreRequest| { &m.progressive }, + |m: &mut BlockstoreRequest| { &mut m.progressive }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "replace", + |m: &BlockstoreRequest| { &m.replace }, + |m: &mut BlockstoreRequest| { &mut m.replace }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "BlockstoreRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static BlockstoreRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const BlockstoreRequest, - }; - unsafe { - instance.get(BlockstoreRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(BlockstoreRequest::new) } } @@ -2486,6 +2502,9 @@ impl ::protobuf::Clear for BlockstoreRequest { self.data.clear(); self.cidVersion.clear(); self.hashFunc.clear(); + self.refID.clear(); + self.progressive = false; + self.replace = false; self.unknown_fields.clear(); } } @@ -2497,8 +2516,8 @@ impl ::std::fmt::Debug for BlockstoreRequest { } impl ::protobuf::reflect::ProtobufValue for BlockstoreRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -2610,7 +2629,7 @@ impl ::protobuf::Message for BlockstoreResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != BSREQTYPE::BS_DELETE { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } for v in &self.blocks { os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; @@ -2639,7 +2658,7 @@ impl ::protobuf::Message for BlockstoreResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -2652,40 +2671,30 @@ impl ::protobuf::Message for BlockstoreResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &BlockstoreResponse| { &m.requestType }, - |m: &mut BlockstoreResponse| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "blocks", - |m: &BlockstoreResponse| { &m.blocks }, - |m: &mut BlockstoreResponse| { &mut m.blocks }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "BlockstoreResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &BlockstoreResponse| { &m.requestType }, + |m: &mut BlockstoreResponse| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "blocks", + |m: &BlockstoreResponse| { &m.blocks }, + |m: &mut BlockstoreResponse| { &mut m.blocks }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "BlockstoreResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static BlockstoreResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const BlockstoreResponse, - }; - unsafe { - instance.get(BlockstoreResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(BlockstoreResponse::new) } } @@ -2704,8 +2713,8 @@ impl ::std::fmt::Debug for BlockstoreResponse { } impl ::protobuf::reflect::ProtobufValue for BlockstoreResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -2879,7 +2888,7 @@ impl ::protobuf::Message for Block { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -2892,45 +2901,35 @@ impl ::protobuf::Message for Block { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "cid", - |m: &Block| { &m.cid }, - |m: &mut Block| { &mut m.cid }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "data", - |m: &Block| { &m.data }, - |m: &mut Block| { &mut m.data }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "size", - |m: &Block| { &m.size }, - |m: &mut Block| { &mut m.size }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "Block", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "cid", + |m: &Block| { &m.cid }, + |m: &mut Block| { &mut m.cid }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "data", + |m: &Block| { &m.data }, + |m: &mut Block| { &mut m.data }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "size", + |m: &Block| { &m.size }, + |m: &mut Block| { &mut m.size }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "Block", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static Block { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Block, - }; - unsafe { - instance.get(Block::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(Block::new) } } @@ -2950,8 +2949,8 @@ impl ::std::fmt::Debug for Block { } impl ::protobuf::reflect::ProtobufValue for Block { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -2966,6 +2965,9 @@ pub struct DagRequest { pub cidVersion: i64, pub hash: ::std::string::String, pub links: ::std::collections::HashMap<::std::string::String, ::std::string::String>, + pub refID: ::std::string::String, + pub progressive: bool, + pub replace: bool, // special fields pub unknown_fields: ::protobuf::UnknownFields, pub cached_size: ::protobuf::CachedSize, @@ -3166,6 +3168,62 @@ impl DagRequest { pub fn take_links(&mut self) -> ::std::collections::HashMap<::std::string::String, ::std::string::String> { ::std::mem::replace(&mut self.links, ::std::collections::HashMap::new()) } + + // string refID = 9; + + + pub fn get_refID(&self) -> &str { + &self.refID + } + pub fn clear_refID(&mut self) { + self.refID.clear(); + } + + // Param is passed by value, moved + pub fn set_refID(&mut self, v: ::std::string::String) { + self.refID = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_refID(&mut self) -> &mut ::std::string::String { + &mut self.refID + } + + // Take field + pub fn take_refID(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.refID, ::std::string::String::new()) + } + + // bool progressive = 10; + + + pub fn get_progressive(&self) -> bool { + self.progressive + } + pub fn clear_progressive(&mut self) { + self.progressive = false; + } + + // Param is passed by value, moved + pub fn set_progressive(&mut self, v: bool) { + self.progressive = v; + } + + // bool replace = 11; + + + pub fn get_replace(&self) -> bool { + self.replace + } + pub fn clear_replace(&mut self) { + self.replace = false; + } + + // Param is passed by value, moved + pub fn set_replace(&mut self, v: bool) { + self.replace = v; + } } impl ::protobuf::Message for DagRequest { @@ -3205,6 +3263,23 @@ impl ::protobuf::Message for DagRequest { 8 => { ::protobuf::rt::read_map_into::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>(wire_type, is, &mut self.links)?; }, + 9 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.refID)?; + }, + 10 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.progressive = tmp; + }, + 11 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.replace = tmp; + }, _ => { ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; }, @@ -3239,6 +3314,15 @@ impl ::protobuf::Message for DagRequest { my_size += ::protobuf::rt::string_size(7, &self.hash); } my_size += ::protobuf::rt::compute_map_size::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>(8, &self.links); + if !self.refID.is_empty() { + my_size += ::protobuf::rt::string_size(9, &self.refID); + } + if self.progressive != false { + my_size += 2; + } + if self.replace != false { + my_size += 2; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -3246,7 +3330,7 @@ impl ::protobuf::Message for DagRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != DAGREQTYPE::DAG_PUT { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } if !self.data.is_empty() { os.write_bytes(2, &self.data)?; @@ -3267,6 +3351,15 @@ impl ::protobuf::Message for DagRequest { os.write_string(7, &self.hash)?; } ::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>(8, &self.links, os)?; + if !self.refID.is_empty() { + os.write_string(9, &self.refID)?; + } + if self.progressive != false { + os.write_bool(10, self.progressive)?; + } + if self.replace != false { + os.write_bool(11, self.replace)?; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3289,7 +3382,7 @@ impl ::protobuf::Message for DagRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -3302,70 +3395,75 @@ impl ::protobuf::Message for DagRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &DagRequest| { &m.requestType }, - |m: &mut DagRequest| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "data", - |m: &DagRequest| { &m.data }, - |m: &mut DagRequest| { &mut m.data }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "objectEncoding", - |m: &DagRequest| { &m.objectEncoding }, - |m: &mut DagRequest| { &mut m.objectEncoding }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "serializationFormat", - |m: &DagRequest| { &m.serializationFormat }, - |m: &mut DagRequest| { &mut m.serializationFormat }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "hashFunc", - |m: &DagRequest| { &m.hashFunc }, - |m: &mut DagRequest| { &mut m.hashFunc }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "cidVersion", - |m: &DagRequest| { &m.cidVersion }, - |m: &mut DagRequest| { &mut m.cidVersion }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "hash", - |m: &DagRequest| { &m.hash }, - |m: &mut DagRequest| { &mut m.hash }, - )); - fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>( - "links", - |m: &DagRequest| { &m.links }, - |m: &mut DagRequest| { &mut m.links }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "DagRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &DagRequest| { &m.requestType }, + |m: &mut DagRequest| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "data", + |m: &DagRequest| { &m.data }, + |m: &mut DagRequest| { &mut m.data }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "objectEncoding", + |m: &DagRequest| { &m.objectEncoding }, + |m: &mut DagRequest| { &mut m.objectEncoding }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "serializationFormat", + |m: &DagRequest| { &m.serializationFormat }, + |m: &mut DagRequest| { &mut m.serializationFormat }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "hashFunc", + |m: &DagRequest| { &m.hashFunc }, + |m: &mut DagRequest| { &mut m.hashFunc }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "cidVersion", + |m: &DagRequest| { &m.cidVersion }, + |m: &mut DagRequest| { &mut m.cidVersion }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "hash", + |m: &DagRequest| { &m.hash }, + |m: &mut DagRequest| { &mut m.hash }, + )); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>( + "links", + |m: &DagRequest| { &m.links }, + |m: &mut DagRequest| { &mut m.links }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "refID", + |m: &DagRequest| { &m.refID }, + |m: &mut DagRequest| { &mut m.refID }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "progressive", + |m: &DagRequest| { &m.progressive }, + |m: &mut DagRequest| { &mut m.progressive }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "replace", + |m: &DagRequest| { &m.replace }, + |m: &mut DagRequest| { &mut m.replace }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "DagRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static DagRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const DagRequest, - }; - unsafe { - instance.get(DagRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(DagRequest::new) } } @@ -3379,6 +3477,9 @@ impl ::protobuf::Clear for DagRequest { self.cidVersion = 0; self.hash.clear(); self.links.clear(); + self.refID.clear(); + self.progressive = false; + self.replace = false; self.unknown_fields.clear(); } } @@ -3390,8 +3491,8 @@ impl ::std::fmt::Debug for DagRequest { } impl ::protobuf::reflect::ProtobufValue for DagRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -3403,6 +3504,7 @@ pub struct DagResponse { pub rawData: ::std::vec::Vec, pub links: ::protobuf::RepeatedField, pub nodeStats: ::std::collections::HashMap<::std::string::String, IPLDStat>, + pub count: u64, // special fields pub unknown_fields: ::protobuf::UnknownFields, pub cached_size: ::protobuf::CachedSize, @@ -3534,6 +3636,21 @@ impl DagResponse { pub fn take_nodeStats(&mut self) -> ::std::collections::HashMap<::std::string::String, IPLDStat> { ::std::mem::replace(&mut self.nodeStats, ::std::collections::HashMap::new()) } + + // uint64 count = 6; + + + pub fn get_count(&self) -> u64 { + self.count + } + pub fn clear_count(&mut self) { + self.count = 0; + } + + // Param is passed by value, moved + pub fn set_count(&mut self, v: u64) { + self.count = v; + } } impl ::protobuf::Message for DagResponse { @@ -3565,6 +3682,13 @@ impl ::protobuf::Message for DagResponse { 5 => { ::protobuf::rt::read_map_into::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>(wire_type, is, &mut self.nodeStats)?; }, + 6 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_uint64()?; + self.count = tmp; + }, _ => { ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; }, @@ -3591,6 +3715,9 @@ impl ::protobuf::Message for DagResponse { my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; }; my_size += ::protobuf::rt::compute_map_size::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>(5, &self.nodeStats); + if self.count != 0 { + my_size += ::protobuf::rt::value_size(6, self.count, ::protobuf::wire_format::WireTypeVarint); + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -3598,7 +3725,7 @@ impl ::protobuf::Message for DagResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != DAGREQTYPE::DAG_PUT { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } for v in &self.hashes { os.write_string(2, &v)?; @@ -3612,6 +3739,9 @@ impl ::protobuf::Message for DagResponse { v.write_to_with_cached_sizes(os)?; }; ::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>(5, &self.nodeStats, os)?; + if self.count != 0 { + os.write_uint64(6, self.count)?; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3634,7 +3764,7 @@ impl ::protobuf::Message for DagResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -3647,55 +3777,50 @@ impl ::protobuf::Message for DagResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &DagResponse| { &m.requestType }, - |m: &mut DagResponse| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "hashes", - |m: &DagResponse| { &m.hashes }, - |m: &mut DagResponse| { &mut m.hashes }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "rawData", - |m: &DagResponse| { &m.rawData }, - |m: &mut DagResponse| { &mut m.rawData }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "links", - |m: &DagResponse| { &m.links }, - |m: &mut DagResponse| { &mut m.links }, - )); - fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>( - "nodeStats", - |m: &DagResponse| { &m.nodeStats }, - |m: &mut DagResponse| { &mut m.nodeStats }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "DagResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &DagResponse| { &m.requestType }, + |m: &mut DagResponse| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "hashes", + |m: &DagResponse| { &m.hashes }, + |m: &mut DagResponse| { &mut m.hashes }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "rawData", + |m: &DagResponse| { &m.rawData }, + |m: &mut DagResponse| { &mut m.rawData }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "links", + |m: &DagResponse| { &m.links }, + |m: &mut DagResponse| { &mut m.links }, + )); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage>( + "nodeStats", + |m: &DagResponse| { &m.nodeStats }, + |m: &mut DagResponse| { &mut m.nodeStats }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "count", + |m: &DagResponse| { &m.count }, + |m: &mut DagResponse| { &mut m.count }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "DagResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static DagResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const DagResponse, - }; - unsafe { - instance.get(DagResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(DagResponse::new) } } @@ -3706,6 +3831,7 @@ impl ::protobuf::Clear for DagResponse { self.rawData.clear(); self.links.clear(); self.nodeStats.clear(); + self.count = 0; self.unknown_fields.clear(); } } @@ -3717,8 +3843,8 @@ impl ::std::fmt::Debug for DagResponse { } impl ::protobuf::reflect::ProtobufValue for DagResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -3936,7 +4062,7 @@ impl ::protobuf::Message for IPLDStat { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -3949,55 +4075,45 @@ impl ::protobuf::Message for IPLDStat { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "numLinks", - |m: &IPLDStat| { &m.numLinks }, - |m: &mut IPLDStat| { &mut m.numLinks }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "blockSize", - |m: &IPLDStat| { &m.blockSize }, - |m: &mut IPLDStat| { &mut m.blockSize }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "linkSize", - |m: &IPLDStat| { &m.linkSize }, - |m: &mut IPLDStat| { &mut m.linkSize }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "cumulativeSize", - |m: &IPLDStat| { &m.cumulativeSize }, - |m: &mut IPLDStat| { &mut m.cumulativeSize }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "dataSize", - |m: &IPLDStat| { &m.dataSize }, - |m: &mut IPLDStat| { &mut m.dataSize }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "IPLDStat", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "numLinks", + |m: &IPLDStat| { &m.numLinks }, + |m: &mut IPLDStat| { &mut m.numLinks }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "blockSize", + |m: &IPLDStat| { &m.blockSize }, + |m: &mut IPLDStat| { &mut m.blockSize }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "linkSize", + |m: &IPLDStat| { &m.linkSize }, + |m: &mut IPLDStat| { &mut m.linkSize }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "cumulativeSize", + |m: &IPLDStat| { &m.cumulativeSize }, + |m: &mut IPLDStat| { &mut m.cumulativeSize }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "dataSize", + |m: &IPLDStat| { &m.dataSize }, + |m: &mut IPLDStat| { &mut m.dataSize }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "IPLDStat", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static IPLDStat { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const IPLDStat, - }; - unsafe { - instance.get(IPLDStat::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(IPLDStat::new) } } @@ -4019,8 +4135,8 @@ impl ::std::fmt::Debug for IPLDStat { } impl ::protobuf::reflect::ProtobufValue for IPLDStat { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -4194,7 +4310,7 @@ impl ::protobuf::Message for IPLDLink { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -4207,45 +4323,35 @@ impl ::protobuf::Message for IPLDLink { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "hash", - |m: &IPLDLink| { &m.hash }, - |m: &mut IPLDLink| { &mut m.hash }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "name", - |m: &IPLDLink| { &m.name }, - |m: &mut IPLDLink| { &mut m.name }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( - "size", - |m: &IPLDLink| { &m.size }, - |m: &mut IPLDLink| { &mut m.size }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "IPLDLink", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "hash", + |m: &IPLDLink| { &m.hash }, + |m: &mut IPLDLink| { &mut m.hash }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &IPLDLink| { &m.name }, + |m: &mut IPLDLink| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "size", + |m: &IPLDLink| { &m.size }, + |m: &mut IPLDLink| { &mut m.size }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "IPLDLink", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static IPLDLink { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const IPLDLink, - }; - unsafe { - instance.get(IPLDLink::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(IPLDLink::new) } } @@ -4265,8 +4371,8 @@ impl ::std::fmt::Debug for IPLDLink { } impl ::protobuf::reflect::ProtobufValue for IPLDLink { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -4418,7 +4524,7 @@ impl ::protobuf::Message for IPLDNode { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -4431,40 +4537,30 @@ impl ::protobuf::Message for IPLDNode { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "links", - |m: &IPLDNode| { &m.links }, - |m: &mut IPLDNode| { &mut m.links }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "data", - |m: &IPLDNode| { &m.data }, - |m: &mut IPLDNode| { &mut m.data }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "IPLDNode", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "links", + |m: &IPLDNode| { &m.links }, + |m: &mut IPLDNode| { &mut m.links }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "data", + |m: &IPLDNode| { &m.data }, + |m: &mut IPLDNode| { &mut m.data }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "IPLDNode", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static IPLDNode { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const IPLDNode, - }; - unsafe { - instance.get(IPLDNode::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(IPLDNode::new) } } @@ -4483,8 +4579,8 @@ impl ::std::fmt::Debug for IPLDNode { } impl ::protobuf::reflect::ProtobufValue for IPLDNode { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -4624,7 +4720,7 @@ impl ::protobuf::Message for KeystoreRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != KSREQTYPE::KS_HAS { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } if !self.name.is_empty() { os.write_string(2, &self.name)?; @@ -4654,7 +4750,7 @@ impl ::protobuf::Message for KeystoreRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -4667,45 +4763,35 @@ impl ::protobuf::Message for KeystoreRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &KeystoreRequest| { &m.requestType }, - |m: &mut KeystoreRequest| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "name", - |m: &KeystoreRequest| { &m.name }, - |m: &mut KeystoreRequest| { &mut m.name }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "privateKey", - |m: &KeystoreRequest| { &m.privateKey }, - |m: &mut KeystoreRequest| { &mut m.privateKey }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "KeystoreRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &KeystoreRequest| { &m.requestType }, + |m: &mut KeystoreRequest| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &KeystoreRequest| { &m.name }, + |m: &mut KeystoreRequest| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "privateKey", + |m: &KeystoreRequest| { &m.privateKey }, + |m: &mut KeystoreRequest| { &mut m.privateKey }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "KeystoreRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static KeystoreRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const KeystoreRequest, - }; - unsafe { - instance.get(KeystoreRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(KeystoreRequest::new) } } @@ -4725,8 +4811,8 @@ impl ::std::fmt::Debug for KeystoreRequest { } impl ::protobuf::reflect::ProtobufValue for KeystoreRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -4891,7 +4977,7 @@ impl ::protobuf::Message for KeystoreResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != KSREQTYPE::KS_HAS { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } if !self.privateKey.is_empty() { os.write_bytes(2, &self.privateKey)?; @@ -4924,7 +5010,7 @@ impl ::protobuf::Message for KeystoreResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -4937,50 +5023,40 @@ impl ::protobuf::Message for KeystoreResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &KeystoreResponse| { &m.requestType }, - |m: &mut KeystoreResponse| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "privateKey", - |m: &KeystoreResponse| { &m.privateKey }, - |m: &mut KeystoreResponse| { &mut m.privateKey }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "keyNames", - |m: &KeystoreResponse| { &m.keyNames }, - |m: &mut KeystoreResponse| { &mut m.keyNames }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "has", - |m: &KeystoreResponse| { &m.has }, - |m: &mut KeystoreResponse| { &mut m.has }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "KeystoreResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &KeystoreResponse| { &m.requestType }, + |m: &mut KeystoreResponse| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "privateKey", + |m: &KeystoreResponse| { &m.privateKey }, + |m: &mut KeystoreResponse| { &mut m.privateKey }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "keyNames", + |m: &KeystoreResponse| { &m.keyNames }, + |m: &mut KeystoreResponse| { &mut m.keyNames }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "has", + |m: &KeystoreResponse| { &m.has }, + |m: &mut KeystoreResponse| { &mut m.has }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "KeystoreResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static KeystoreResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const KeystoreResponse, - }; - unsafe { - instance.get(KeystoreResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(KeystoreResponse::new) } } @@ -5001,8 +5077,8 @@ impl ::std::fmt::Debug for KeystoreResponse { } impl ::protobuf::reflect::ProtobufValue for KeystoreResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -5010,6 +5086,8 @@ impl ::protobuf::reflect::ProtobufValue for KeystoreResponse { pub struct PersistRequest { // message fields pub cids: ::protobuf::RepeatedField<::std::string::String>, + pub refID: ::std::string::String, + pub progressive: bool, // special fields pub unknown_fields: ::protobuf::UnknownFields, pub cached_size: ::protobuf::CachedSize, @@ -5050,6 +5128,47 @@ impl PersistRequest { pub fn take_cids(&mut self) -> ::protobuf::RepeatedField<::std::string::String> { ::std::mem::replace(&mut self.cids, ::protobuf::RepeatedField::new()) } + + // string refID = 2; + + + pub fn get_refID(&self) -> &str { + &self.refID + } + pub fn clear_refID(&mut self) { + self.refID.clear(); + } + + // Param is passed by value, moved + pub fn set_refID(&mut self, v: ::std::string::String) { + self.refID = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_refID(&mut self) -> &mut ::std::string::String { + &mut self.refID + } + + // Take field + pub fn take_refID(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.refID, ::std::string::String::new()) + } + + // bool progressive = 5; + + + pub fn get_progressive(&self) -> bool { + self.progressive + } + pub fn clear_progressive(&mut self) { + self.progressive = false; + } + + // Param is passed by value, moved + pub fn set_progressive(&mut self, v: bool) { + self.progressive = v; + } } impl ::protobuf::Message for PersistRequest { @@ -5064,6 +5183,16 @@ impl ::protobuf::Message for PersistRequest { 1 => { ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.cids)?; }, + 2 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.refID)?; + }, + 5 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.progressive = tmp; + }, _ => { ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; }, @@ -5079,6 +5208,12 @@ impl ::protobuf::Message for PersistRequest { for value in &self.cids { my_size += ::protobuf::rt::string_size(1, &value); }; + if !self.refID.is_empty() { + my_size += ::protobuf::rt::string_size(2, &self.refID); + } + if self.progressive != false { + my_size += 2; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -5088,6 +5223,12 @@ impl ::protobuf::Message for PersistRequest { for v in &self.cids { os.write_string(1, &v)?; }; + if !self.refID.is_empty() { + os.write_string(2, &self.refID)?; + } + if self.progressive != false { + os.write_bool(5, self.progressive)?; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -5110,7 +5251,7 @@ impl ::protobuf::Message for PersistRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -5123,41 +5264,43 @@ impl ::protobuf::Message for PersistRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "cids", - |m: &PersistRequest| { &m.cids }, - |m: &mut PersistRequest| { &mut m.cids }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "PersistRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "cids", + |m: &PersistRequest| { &m.cids }, + |m: &mut PersistRequest| { &mut m.cids }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "refID", + |m: &PersistRequest| { &m.refID }, + |m: &mut PersistRequest| { &mut m.refID }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "progressive", + |m: &PersistRequest| { &m.progressive }, + |m: &mut PersistRequest| { &mut m.progressive }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "PersistRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static PersistRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PersistRequest, - }; - unsafe { - instance.get(PersistRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(PersistRequest::new) } } impl ::protobuf::Clear for PersistRequest { fn clear(&mut self) { self.cids.clear(); + self.refID.clear(); + self.progressive = false; self.unknown_fields.clear(); } } @@ -5169,8 +5312,8 @@ impl ::std::fmt::Debug for PersistRequest { } impl ::protobuf::reflect::ProtobufValue for PersistRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -5305,7 +5448,7 @@ impl ::protobuf::Message for PersistResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -5318,40 +5461,30 @@ impl ::protobuf::Message for PersistResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeBool>( - "status", - |m: &PersistResponse| { &m.status }, - |m: &mut PersistResponse| { &mut m.status }, - )); - fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>( - "errors", - |m: &PersistResponse| { &m.errors }, - |m: &mut PersistResponse| { &mut m.errors }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "PersistResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeBool>( + "status", + |m: &PersistResponse| { &m.status }, + |m: &mut PersistResponse| { &mut m.status }, + )); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeString>( + "errors", + |m: &PersistResponse| { &m.errors }, + |m: &mut PersistResponse| { &mut m.errors }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "PersistResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static PersistResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PersistResponse, - }; - unsafe { - instance.get(PersistResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(PersistResponse::new) } } @@ -5370,8 +5503,8 @@ impl ::std::fmt::Debug for PersistResponse { } impl ::protobuf::reflect::ProtobufValue for PersistResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -5409,15 +5542,10 @@ impl ::protobuf::ProtobufEnum for P2PREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("P2PREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("P2PREQTYPE", file_descriptor_proto()) + }) } } @@ -5431,8 +5559,8 @@ impl ::std::default::Default for P2PREQTYPE { } impl ::protobuf::reflect::ProtobufValue for P2PREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5470,15 +5598,10 @@ impl ::protobuf::ProtobufEnum for CONNMGMTREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("CONNMGMTREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("CONNMGMTREQTYPE", file_descriptor_proto()) + }) } } @@ -5492,8 +5615,8 @@ impl ::std::default::Default for CONNMGMTREQTYPE { } impl ::protobuf::reflect::ProtobufValue for CONNMGMTREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5525,15 +5648,10 @@ impl ::protobuf::ProtobufEnum for EXTRASREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("EXTRASREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("EXTRASREQTYPE", file_descriptor_proto()) + }) } } @@ -5547,8 +5665,8 @@ impl ::std::default::Default for EXTRASREQTYPE { } impl ::protobuf::reflect::ProtobufValue for EXTRASREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5586,15 +5704,10 @@ impl ::protobuf::ProtobufEnum for EXTRASTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("EXTRASTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("EXTRASTYPE", file_descriptor_proto()) + }) } } @@ -5608,8 +5721,8 @@ impl ::std::default::Default for EXTRASTYPE { } impl ::protobuf::reflect::ProtobufValue for EXTRASTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5665,15 +5778,10 @@ impl ::protobuf::ProtobufEnum for BSREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("BSREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("BSREQTYPE", file_descriptor_proto()) + }) } } @@ -5687,8 +5795,8 @@ impl ::std::default::Default for BSREQTYPE { } impl ::protobuf::reflect::ProtobufValue for BSREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5720,15 +5828,10 @@ impl ::protobuf::ProtobufEnum for BSREQOPTS { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("BSREQOPTS", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("BSREQOPTS", file_descriptor_proto()) + }) } } @@ -5742,8 +5845,8 @@ impl ::std::default::Default for BSREQOPTS { } impl ::protobuf::reflect::ProtobufValue for BSREQOPTS { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5755,6 +5858,7 @@ pub enum DAGREQTYPE { DAG_ADD_LINKS = 3, DAG_GET_LINKS = 4, DAG_STAT = 5, + DAG_REMOVE = 6, } impl ::protobuf::ProtobufEnum for DAGREQTYPE { @@ -5770,6 +5874,7 @@ impl ::protobuf::ProtobufEnum for DAGREQTYPE { 3 => ::std::option::Option::Some(DAGREQTYPE::DAG_ADD_LINKS), 4 => ::std::option::Option::Some(DAGREQTYPE::DAG_GET_LINKS), 5 => ::std::option::Option::Some(DAGREQTYPE::DAG_STAT), + 6 => ::std::option::Option::Some(DAGREQTYPE::DAG_REMOVE), _ => ::std::option::Option::None } } @@ -5782,20 +5887,16 @@ impl ::protobuf::ProtobufEnum for DAGREQTYPE { DAGREQTYPE::DAG_ADD_LINKS, DAGREQTYPE::DAG_GET_LINKS, DAGREQTYPE::DAG_STAT, + DAGREQTYPE::DAG_REMOVE, ]; values } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("DAGREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("DAGREQTYPE", file_descriptor_proto()) + }) } } @@ -5809,8 +5910,8 @@ impl ::std::default::Default for DAGREQTYPE { } impl ::protobuf::reflect::ProtobufValue for DAGREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5851,15 +5952,10 @@ impl ::protobuf::ProtobufEnum for KSREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("KSREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("KSREQTYPE", file_descriptor_proto()) + }) } } @@ -5873,8 +5969,8 @@ impl ::std::default::Default for KSREQTYPE { } impl ::protobuf::reflect::ProtobufValue for KSREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -5912,405 +6008,433 @@ static file_descriptor_proto_data: &'static [u8] = b"\ \x12\x16\n\x06reason\x18\x02\x20\x01(\tR\x06reason\"z\n\rExtrasRequest\ \x123\n\x0brequestType\x18\x01\x20\x01(\x0e2\x11.pb.EXTRASREQTYPER\x0bre\ questType\x124\n\rextrasFeature\x18\x02\x20\x01(\x0e2\x0e.pb.EXTRASTYPER\ - \rextrasFeature\"\xd1\x01\n\x11BlockstoreRequest\x12/\n\x0brequestType\ + \rextrasFeature\"\xa3\x02\n\x11BlockstoreRequest\x12/\n\x0brequestType\ \x18\x01\x20\x01(\x0e2\r.pb.BSREQTYPER\x0brequestType\x12'\n\x07reqOpts\ \x18\x02\x20\x03(\x0e2\r.pb.BSREQOPTSR\x07reqOpts\x12\x12\n\x04cids\x18\ \x03\x20\x03(\tR\x04cids\x12\x12\n\x04data\x18\x04\x20\x03(\x0cR\x04data\ \x12\x1e\n\ncidVersion\x18\x05\x20\x01(\tR\ncidVersion\x12\x1a\n\x08hash\ - Func\x18\x07\x20\x01(\tR\x08hashFunc\"h\n\x12BlockstoreResponse\x12/\n\ - \x0brequestType\x18\x01\x20\x01(\x0e2\r.pb.BSREQTYPER\x0brequestType\x12\ - !\n\x06blocks\x18\x02\x20\x03(\x0b2\t.pb.BlockR\x06blocks\"A\n\x05Block\ - \x12\x10\n\x03cid\x18\x01\x20\x01(\tR\x03cid\x12\x12\n\x04data\x18\x02\ - \x20\x01(\x0cR\x04data\x12\x12\n\x04size\x18\x03\x20\x01(\x03R\x04size\"\ - \xe7\x02\n\nDagRequest\x120\n\x0brequestType\x18\x01\x20\x01(\x0e2\x0e.p\ - b.DAGREQTYPER\x0brequestType\x12\x12\n\x04data\x18\x02\x20\x01(\x0cR\x04\ - data\x12&\n\x0eobjectEncoding\x18\x03\x20\x01(\tR\x0eobjectEncoding\x120\ - \n\x13serializationFormat\x18\x04\x20\x01(\tR\x13serializationFormat\x12\ - \x1a\n\x08hashFunc\x18\x05\x20\x01(\tR\x08hashFunc\x12\x1e\n\ncidVersion\ - \x18\x06\x20\x01(\x03R\ncidVersion\x12\x12\n\x04hash\x18\x07\x20\x01(\tR\ - \x04hash\x12/\n\x05links\x18\x08\x20\x03(\x0b2\x19.pb.DagRequest.LinksEn\ - tryR\x05links\x1a8\n\nLinksEntry\x12\x10\n\x03key\x18\x01\x20\x01(\tR\ - \x03key\x12\x14\n\x05value\x18\x02\x20\x01(\tR\x05value:\x028\x01\"\x9f\ - \x02\n\x0bDagResponse\x120\n\x0brequestType\x18\x01\x20\x01(\x0e2\x0e.pb\ - .DAGREQTYPER\x0brequestType\x12\x16\n\x06hashes\x18\x02\x20\x03(\tR\x06h\ - ashes\x12\x18\n\x07rawData\x18\x03\x20\x01(\x0cR\x07rawData\x12\"\n\x05l\ - inks\x18\x04\x20\x03(\x0b2\x0c.pb.IPLDLinkR\x05links\x12<\n\tnodeStats\ - \x18\x05\x20\x03(\x0b2\x1e.pb.DagResponse.NodeStatsEntryR\tnodeStats\x1a\ - J\n\x0eNodeStatsEntry\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03key\x12\"\ - \n\x05value\x18\x02\x20\x01(\x0b2\x0c.pb.IPLDStatR\x05value:\x028\x01\"\ - \xa4\x01\n\x08IPLDStat\x12\x1a\n\x08numLinks\x18\x01\x20\x01(\x03R\x08nu\ - mLinks\x12\x1c\n\tblockSize\x18\x02\x20\x01(\x03R\tblockSize\x12\x1a\n\ - \x08linkSize\x18\x03\x20\x01(\x03R\x08linkSize\x12&\n\x0ecumulativeSize\ - \x18\x04\x20\x01(\x03R\x0ecumulativeSize\x12\x1a\n\x08dataSize\x18\x05\ - \x20\x01(\x03R\x08dataSize\"F\n\x08IPLDLink\x12\x12\n\x04hash\x18\x01\ - \x20\x01(\x0cR\x04hash\x12\x12\n\x04name\x18\x02\x20\x01(\tR\x04name\x12\ - \x12\n\x04size\x18\x03\x20\x01(\x04R\x04size\"B\n\x08IPLDNode\x12\"\n\ - \x05links\x18\x02\x20\x03(\x0b2\x0c.pb.IPLDLinkR\x05links\x12\x12\n\x04d\ - ata\x18\x01\x20\x01(\x0cR\x04data\"v\n\x0fKeystoreRequest\x12/\n\x0brequ\ - estType\x18\x01\x20\x01(\x0e2\r.pb.KSREQTYPER\x0brequestType\x12\x12\n\ - \x04name\x18\x02\x20\x01(\tR\x04name\x12\x1e\n\nprivateKey\x18\x03\x20\ - \x01(\x0cR\nprivateKey\"\x91\x01\n\x10KeystoreResponse\x12/\n\x0brequest\ - Type\x18\x01\x20\x01(\x0e2\r.pb.KSREQTYPER\x0brequestType\x12\x1e\n\npri\ - vateKey\x18\x02\x20\x01(\x0cR\nprivateKey\x12\x1a\n\x08keyNames\x18\x03\ - \x20\x03(\tR\x08keyNames\x12\x10\n\x03has\x18\x04\x20\x01(\x08R\x03has\"\ - $\n\x0ePersistRequest\x12\x12\n\x04cids\x18\x01\x20\x03(\tR\x04cids\"\ - \xf9\x01\n\x0fPersistResponse\x127\n\x06status\x18\x01\x20\x03(\x0b2\x1f\ - .pb.PersistResponse.StatusEntryR\x06status\x127\n\x06errors\x18\x02\x20\ - \x03(\x0b2\x1f.pb.PersistResponse.ErrorsEntryR\x06errors\x1a9\n\x0bStatu\ - sEntry\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03key\x12\x14\n\x05value\ - \x18\x02\x20\x01(\x08R\x05value:\x028\x01\x1a9\n\x0bErrorsEntry\x12\x10\ - \n\x03key\x18\x01\x20\x01(\tR\x03key\x12\x14\n\x05value\x18\x02\x20\x01(\ - \tR\x05value:\x028\x01*8\n\nP2PREQTYPE\x12\t\n\x05CLOSE\x10\0\x12\x0b\n\ - \x07FORWARD\x10\x01\x12\n\n\x06LISTEN\x10\x02\x12\x06\n\x02LS\x10\x03*U\ - \n\x0fCONNMGMTREQTYPE\x12\x0e\n\nCM_CONNECT\x10\0\x12\x11\n\rCM_DISCONNE\ - CT\x10\x01\x12\r\n\tCM_STATUS\x10\x02\x12\x10\n\x0cCM_GET_PEERS\x10\x03*\ - .\n\rEXTRASREQTYPE\x12\r\n\tEX_ENABLE\x10\0\x12\x0e\n\nEX_DISABLE\x10\ - \x01*?\n\nEXTRASTYPE\x12\x0c\n\x08IDENTIFY\x10\0\x12\n\n\x06PUBSUB\x10\ - \x01\x12\r\n\tDISCOVERY\x10\x02\x12\x08\n\x04MDNS\x10\x03*\xbb\x01\n\tBS\ - REQTYPE\x12\r\n\tBS_DELETE\x10\0\x12\n\n\x06BS_PUT\x10\x01\x12\x0f\n\x0b\ - BS_PUT_MANY\x10\x02\x12\n\n\x06BS_GET\x10\x03\x12\x0f\n\x0bBS_GET_MANY\ - \x10\x04\x12\x0e\n\nBS_GET_ALL\x10\x05\x12\x10\n\x0cBS_GET_STATS\x10\x06\ - \x12\n\n\x06BS_HAS\x10\x07\x12\x1a\n\x16BS_HASH_ON_READ_ENABLE\x10\x08\ - \x12\x1b\n\x17BS_HASH_ON_READ_DISABLE\x10\t*&\n\tBSREQOPTS\x12\x0b\n\x07\ - DEFAULT\x10\0\x12\x0c\n\x08BS_FORCE\x10\x01*l\n\nDAGREQTYPE\x12\x0b\n\ - \x07DAG_PUT\x10\0\x12\x0b\n\x07DAG_GET\x10\x01\x12\x10\n\x0cDAG_NEW_NODE\ - \x10\x02\x12\x11\n\rDAG_ADD_LINKS\x10\x03\x12\x11\n\rDAG_GET_LINKS\x10\ - \x04\x12\x0c\n\x08DAG_STAT\x10\x05*K\n\tKSREQTYPE\x12\n\n\x06KS_HAS\x10\ - \0\x12\n\n\x06KS_GET\x10\x01\x12\n\n\x06KS_PUT\x10\x02\x12\r\n\tKS_DELET\ - E\x10\x03\x12\x0b\n\x07KS_LIST\x10\x042\xb7\x03\n\x07NodeAPI\x127\n\x08C\ - onnMgmt\x12\x13.pb.ConnMgmtRequest\x1a\x14.pb.ConnMgmtResponse\"\0\x12(\ - \n\x06Extras\x12\x11.pb.ExtrasRequest\x1a\t.pb.Empty\"\0\x12(\n\x03P2P\ - \x12\x0e.pb.P2PRequest\x1a\x0f.pb.P2PResponse\"\0\x12=\n\nBlockstore\x12\ - \x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreResponse\"\0\x12G\n\x10Bl\ - ockstoreStream\x12\x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreRespons\ - e\"\0(\x010\x01\x12(\n\x03Dag\x12\x0e.pb.DagRequest\x1a\x0f.pb.DagRespon\ - se\"\0\x127\n\x08Keystore\x12\x13.pb.KeystoreRequest\x1a\x14.pb.Keystore\ - Response\"\0\x124\n\x07Persist\x12\x12.pb.PersistRequest\x1a\x13.pb.Pers\ - istResponse\"\0J\x9b\x83\x01\n\x07\x12\x05\0\0\x82\x03\x01\n\x08\n\x01\ - \x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\n\t\n\x02\x03\0\ - \x12\x03\x02\x07\x13\nO\n\x02\x06\0\x12\x04\x05\0\x19\x01\x1aC\x20NodeAP\ - I\x20provide\x20an\x20API\x20to\x20control\x20the\x20underlying\x20custo\ - m\x20ipfs\x20node\n\n\n\n\x03\x06\0\x01\x12\x03\x05\x08\x0f\n@\n\x04\x06\ - \0\x02\0\x12\x03\x07\x04@\x1a3\x20ConnMgmt\x20provides\x20control\x20ove\ - r\x20libp2p\x20connections\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\x07\x08\ - \x10\n\x0c\n\x05\x06\0\x02\0\x02\x12\x03\x07\x11\x20\n\x0c\n\x05\x06\0\ - \x02\0\x03\x12\x03\x07+;\nC\n\x04\x06\0\x02\x01\x12\x03\t\x041\x1a6\x20E\ - xtras\x20provide\x20control\x20over\x20node\x20extras\x20capabilities\n\ - \n\x0c\n\x05\x06\0\x02\x01\x01\x12\x03\t\x08\x0e\n\x0c\n\x05\x06\0\x02\ - \x01\x02\x12\x03\t\x0f\x1c\n\x0c\n\x05\x06\0\x02\x01\x03\x12\x03\t',\n\ - \xdf\x01\n\x04\x06\0\x02\x02\x12\x03\r\x041\x1a\xd1\x01\x20P2P\x20allows\ - \x20control\x20of\x20generalized\x20p2p\x20streams\x20for\x20tcp/udp\x20\ - based\x20protocol.\n\x20By\x20using\x20this\x20RPC,\x20we\x20can\x20tunn\ - el\x20traffic\x20similar\x20to\x20ssh\x20tunneling\n\x20except\x20using\ - \x20libp2p\x20as\x20the\x20transport\x20layer,\x20and\x20and\x20tcp/udp\ - \x20port.\n\n\x0c\n\x05\x06\0\x02\x02\x01\x12\x03\r\x08\x0b\n\x0c\n\x05\ - \x06\0\x02\x02\x02\x12\x03\r\x0c\x16\n\x0c\n\x05\x06\0\x02\x02\x03\x12\ - \x03\r!,\nR\n\x04\x06\0\x02\x03\x12\x03\x0f\x04F\x1aE\x20Blockstore\x20a\ - llows\x20low-level\x20management\x20of\x20the\x20underlying\x20blockstor\ - e\n\n\x0c\n\x05\x06\0\x02\x03\x01\x12\x03\x0f\x08\x12\n\x0c\n\x05\x06\0\ - \x02\x03\x02\x12\x03\x0f\x13$\n\x0c\n\x05\x06\0\x02\x03\x03\x12\x03\x0f/\ - A\n\x87\x01\n\x04\x06\0\x02\x04\x12\x03\x12\x04Z\x1az\x20BlockstoreStrea\ - m\x20is\x20akin\x20to\x20Blockstore,\x20except\x20streamable\n\x20Once\ - \x20v4\x20is\x20out,\x20condense\x20this\x20+\x20blockstore\x20into\x20a\ - \x20single\x20call\n\n\x0c\n\x05\x06\0\x02\x04\x01\x12\x03\x12\x08\x18\n\ - \x0c\n\x05\x06\0\x02\x04\x05\x12\x03\x12\x19\x1f\n\x0c\n\x05\x06\0\x02\ - \x04\x02\x12\x03\x12\x201\n\x0c\n\x05\x06\0\x02\x04\x06\x12\x03\x12\x01\x1aR\x20P2PRequest\x20is\x20a\x20request\x20m\ - essage\x20holding\x20the\x20details\x20of\x20a\x20particular\x20P2P\x20r\ - pc\x20call\n\n\n\n\x03\x04\0\x01\x12\x03(\x08\x12\n)\n\x04\x04\0\x02\0\ - \x12\x03*\x04\x1f\x1a\x1c\x20indicates\x20the\x20request\x20type\n\n\r\n\ - \x05\x04\0\x02\0\x04\x12\x04*\x04(\x14\n\x0c\n\x05\x04\0\x02\0\x06\x12\ - \x03*\x04\x0e\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03*\x0f\x1a\n\x0c\n\x05\ - \x04\0\x02\0\x03\x12\x03*\x1d\x1e\n(\n\x04\x04\0\x02\x01\x12\x03,\x04\ - \x11\x1a\x1b\x20used\x20by:\x20P2PREQTYPE.CLOSE\n\n\r\n\x05\x04\0\x02\ - \x01\x04\x12\x04,\x04*\x1f\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03,\x04\ - \x08\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03,\t\x0c\n\x0c\n\x05\x04\0\x02\ - \x01\x03\x12\x03,\x0f\x10\n%\n\x04\x04\0\x02\x02\x12\x03.\x04\x15\x1a\ - \x18\x20used\x20by:\x20P2PREQTYPE.LS\n\n\r\n\x05\x04\0\x02\x02\x04\x12\ - \x04.\x04,\x11\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x03.\x04\x08\n\x0c\n\ - \x05\x04\0\x02\x02\x01\x12\x03.\t\x10\n\x0c\n\x05\x04\0\x02\x02\x03\x12\ - \x03.\x13\x14\nO\n\x04\x04\0\x02\x03\x12\x030\x04\x1c\x1aB\x20used\x20by\ - :\x20P2PREQTYPE.CLOSE,\x20P2PREQTYPE.FORWARD,\x20P2PREQTYPE.LISTEN\n\n\r\ - \n\x05\x04\0\x02\x03\x04\x12\x040\x04.\x15\n\x0c\n\x05\x04\0\x02\x03\x05\ - \x12\x030\x04\n\n\x0c\n\x05\x04\0\x02\x03\x01\x12\x030\x0b\x17\n\x0c\n\ - \x05\x04\0\x02\x03\x03\x12\x030\x1a\x1b\n^\n\x04\x04\0\x02\x04\x12\x033\ - \x04\x1d\x1aQ\x20used\x20by:\x20P2PREQTYPE.CLOSE,\x20P2PREQTYPE.FORWARD\ - \n\x20must\x20be\x20specified\x20as\x20a\x20multiaddr\n\n\r\n\x05\x04\0\ - \x02\x04\x04\x12\x043\x040\x1c\n\x0c\n\x05\x04\0\x02\x04\x05\x12\x033\ - \x04\n\n\x0c\n\x05\x04\0\x02\x04\x01\x12\x033\x0b\x18\n\x0c\n\x05\x04\0\ - \x02\x04\x03\x12\x033\x1b\x1c\n^\n\x04\x04\0\x02\x05\x12\x036\x04\x1d\ - \x1aQ\x20used\x20by:\x20P2PREQTYPE.CLOSE,\x20P2PREQTYPE.FORWARD\n\x20mus\ - t\x20be\x20specified\x20as\x20a\x20multiaddr\n\n\r\n\x05\x04\0\x02\x05\ - \x04\x12\x046\x043\x1d\n\x0c\n\x05\x04\0\x02\x05\x05\x12\x036\x04\n\n\ - \x0c\n\x05\x04\0\x02\x05\x01\x12\x036\x0b\x18\n\x0c\n\x05\x04\0\x02\x05\ - \x03\x12\x036\x1b\x1c\nK\n\x04\x04\0\x02\x06\x12\x039\x04\x1d\x1a>\x20us\ - ed\x20by:\x20P2PREQTYPE.LISTEN\n\x20must\x20be\x20specified\x20as\x20a\ - \x20multiaddr\n\n\r\n\x05\x04\0\x02\x06\x04\x12\x049\x046\x1d\n\x0c\n\ - \x05\x04\0\x02\x06\x05\x12\x039\x04\n\n\x0c\n\x05\x04\0\x02\x06\x01\x12\ - \x039\x0b\x18\n\x0c\n\x05\x04\0\x02\x06\x03\x12\x039\x1b\x1c\n=\n\x04\ - \x04\0\x02\x07\x12\x03;\x04\"\x1a0\x20used\x20by:\x20P2PREQTYPE.LISTEN,\ - \x20P2PREQTYPE.FORWARD\n\n\r\n\x05\x04\0\x02\x07\x04\x12\x04;\x049\x1d\n\ - \x0c\n\x05\x04\0\x02\x07\x05\x12\x03;\x04\x08\n\x0c\n\x05\x04\0\x02\x07\ - \x01\x12\x03;\t\x1d\n\x0c\n\x05\x04\0\x02\x07\x03\x12\x03;\x20!\n)\n\x04\ - \x04\0\x02\x08\x12\x03=\x04\x1a\x1a\x1c\x20used\x20by:\x20P2PREQTYPE.LIS\ - TEN\n\n\r\n\x05\x04\0\x02\x08\x04\x12\x04=\x04;\"\n\x0c\n\x05\x04\0\x02\ - \x08\x05\x12\x03=\x04\x08\n\x0c\n\x05\x04\0\x02\x08\x01\x12\x03=\t\x15\n\ - \x0c\n\x05\x04\0\x02\x08\x03\x12\x03=\x18\x19\nX\n\x02\x04\x01\x12\x04A\ - \0I\x01\x1aL\x20P2PResponse\x20is\x20a\x20response\x20message\x20sent\ - \x20in\x20response\x20to\x20a\x20P2PRequest\x20message\n\n\n\n\x03\x04\ - \x01\x01\x12\x03A\x08\x13\n\x0b\n\x04\x04\x01\x02\0\x12\x03B\x04\x1f\n\r\ - \n\x05\x04\x01\x02\0\x04\x12\x04B\x04A\x15\n\x0c\n\x05\x04\x01\x02\0\x06\ - \x12\x03B\x04\x0e\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03B\x0f\x1a\n\x0c\n\ - \x05\x04\x01\x02\0\x03\x12\x03B\x1d\x1e\n)\n\x04\x04\x01\x02\x01\x12\x03\ - D\x04\x1e\x1a\x1c\x20sent\x20by:\x20P2PREQTYPE.LISTEN\n\n\x0c\n\x05\x04\ - \x01\x02\x01\x04\x12\x03D\x04\x0c\n\x0c\n\x05\x04\x01\x02\x01\x05\x12\ - \x03D\r\x13\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03D\x14\x19\n\x0c\n\x05\ - \x04\x01\x02\x01\x03\x12\x03D\x1c\x1d\nU\n\x04\x04\x01\x02\x02\x12\x03F\ - \x04\x1a\x1aH\x20sent\x20by:\x20P2PREQTYPE.CLOSE\x20to\x20indicate\x20th\ - e\x20number\x20of\x20connections\x20closed\n\n\r\n\x05\x04\x01\x02\x02\ - \x04\x12\x04F\x04D\x1e\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\x03F\x04\t\n\ - \x0c\n\x05\x04\x01\x02\x02\x01\x12\x03F\n\x15\n\x0c\n\x05\x04\x01\x02\ - \x02\x03\x12\x03F\x18\x19\nO\n\x04\x04\x01\x02\x03\x12\x03H\x04'\x1aB\ - \x20sent\x20by:\x20P2PREQTYPE.LS\x20and\x20contains\x20all\x20known\x20s\ - tream\x20information\n\n\x0c\n\x05\x04\x01\x02\x03\x04\x12\x03H\x04\x0c\ - \n\x0c\n\x05\x04\x01\x02\x03\x06\x12\x03H\r\x16\n\x0c\n\x05\x04\x01\x02\ - \x03\x01\x12\x03H\x17\"\n\x0c\n\x05\x04\x01\x02\x03\x03\x12\x03H%&\nF\n\ - \x02\x04\x02\x12\x04L\0R\x01\x1a:\x20P2PLsInfo\x20contains\x20informatio\ - n\x20about\x20a\x20single\x20p2p\x20stream\n\n\n\n\x03\x04\x02\x01\x12\ - \x03L\x08\x11\n\x0b\n\x04\x04\x02\x02\0\x12\x03M\x04\x1c\n\r\n\x05\x04\ - \x02\x02\0\x04\x12\x04M\x04L\x13\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03M\ - \x04\n\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x03M\x0b\x17\n\x0c\n\x05\x04\ - \x02\x02\0\x03\x12\x03M\x1a\x1b\n\x0b\n\x04\x04\x02\x02\x01\x12\x03N\x04\ - \x1d\n\r\n\x05\x04\x02\x02\x01\x04\x12\x04N\x04M\x1c\n\x0c\n\x05\x04\x02\ - \x02\x01\x05\x12\x03N\x04\n\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x03N\x0b\ - \x18\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03N\x1b\x1c\n\x0b\n\x04\x04\ - \x02\x02\x02\x12\x03O\x04\x1d\n\r\n\x05\x04\x02\x02\x02\x04\x12\x04O\x04\ - N\x1d\n\x0c\n\x05\x04\x02\x02\x02\x05\x12\x03O\x04\n\n\x0c\n\x05\x04\x02\ - \x02\x02\x01\x12\x03O\x0b\x18\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x03O\ - \x1b\x1c\nP\n\x04\x04\x02\x02\x03\x12\x03Q\x04\x13\x1aC\x20indicates\x20\ - whether\x20or\x20not\x20this\x20is\x20a\x20p2p\x20listener\x20or\x20loca\ - l\x20listener\n\n\r\n\x05\x04\x02\x02\x03\x04\x12\x04Q\x04O\x1d\n\x0c\n\ - \x05\x04\x02\x02\x03\x05\x12\x03Q\x04\x08\n\x0c\n\x05\x04\x02\x02\x03\ - \x01\x12\x03Q\t\x0e\n\x0c\n\x05\x04\x02\x02\x03\x03\x12\x03Q\x11\x12\nW\ - \n\x02\x04\x03\x12\x04U\0X\x01\x1aK\x20GetPeersResponse\x20is\x20a\x20re\ - sponse\x20to\x20GetPeers\x20containing\x20a\x20slice\x20of\x20peer\x20ID\ - s\n\n\n\n\x03\x04\x03\x01\x12\x03U\x08\x18\n\"\n\x04\x04\x03\x02\0\x12\ - \x03W\x04\x20\x1a\x15\x20a\x20slice\x20of\x20peer\x20IDs\n\n\x0c\n\x05\ - \x04\x03\x02\0\x04\x12\x03W\x04\x0c\n\x0c\n\x05\x04\x03\x02\0\x05\x12\ - \x03W\r\x13\n\x0c\n\x05\x04\x03\x02\0\x01\x12\x03W\x14\x1b\n\x0c\n\x05\ - \x04\x03\x02\0\x03\x12\x03W\x1e\x1f\nW\n\x02\x05\x01\x12\x04[\0e\x01\x1a\ - K\x20CONNMGMTREQTYPE\x20indicates\x20the\x20particular\x20ConnMgmt\x20re\ - quest\x20being\x20performed\n\n\n\n\x03\x05\x01\x01\x12\x03[\x05\x14\n=\ - \n\x04\x05\x01\x02\0\x12\x03]\x04\x13\x1a0\x20CM_CONNECT\x20is\x20used\ - \x20to\x20connect\x20to\x20a\x20libp2p\x20peer\n\n\x0c\n\x05\x05\x01\x02\ - \0\x01\x12\x03]\x04\x0e\n\x0c\n\x05\x05\x01\x02\0\x02\x12\x03]\x11\x12\n\ - E\n\x04\x05\x01\x02\x01\x12\x03_\x04\x16\x1a8\x20CM_DISCONNECT\x20is\x20\ - used\x20to\x20disconnect\x20from\x20a\x20libp2p\x20peer\n\n\x0c\n\x05\ - \x05\x01\x02\x01\x01\x12\x03_\x04\x11\n\x0c\n\x05\x05\x01\x02\x01\x02\ - \x12\x03_\x14\x15\n\x9f\x01\n\x04\x05\x01\x02\x02\x12\x03b\x04\x12\x1a\ - \x91\x01\x20CM_STATUS\x20is\x20used\x20to\x20return\x20status\x20informa\ - tion\x20about\x20libp2p\x20peer\x20connections\n\x20useful\x20for\x20det\ - ermining\x20whether\x20or\x20not\x20we\x20are\x20connected\x20to\x20some\ - one\n\n\x0c\n\x05\x05\x01\x02\x02\x01\x12\x03b\x04\r\n\x0c\n\x05\x05\x01\ - \x02\x02\x02\x12\x03b\x10\x11\n<\n\x04\x05\x01\x02\x03\x12\x03d\x04\x15\ - \x1a/CM_GET_PEERS\x20is\x20used\x20to\x20return\x20all\x20known\x20peers\ - \n\n\x0c\n\x05\x05\x01\x02\x03\x01\x12\x03d\x04\x10\n\x0c\n\x05\x05\x01\ - \x02\x03\x02\x12\x03d\x13\x14\n\n\n\x02\x04\x04\x12\x04g\0p\x01\n\n\n\ - \x03\x04\x04\x01\x12\x03g\x08\x17\nU\n\x04\x04\x04\x02\0\x12\x03i\x04$\ - \x1aH\x20indicates\x20the\x20particular\x20connection\x20management\x20r\ - equest\x20being\x20performed\n\n\r\n\x05\x04\x04\x02\0\x04\x12\x04i\x04g\ - \x19\n\x0c\n\x05\x04\x04\x02\0\x06\x12\x03i\x04\x13\n\x0c\n\x05\x04\x04\ - \x02\0\x01\x12\x03i\x14\x1f\n\x0c\n\x05\x04\x04\x02\0\x03\x12\x03i\"#\n8\ - \n\x04\x04\x04\x02\x01\x12\x03l\x04#\x1a+\x20a\x20list\x20of\x20multiadd\ - rs\n\x20sent\x20by:\x20CM_CONNECT\n\n\x0c\n\x05\x04\x04\x02\x01\x04\x12\ - \x03l\x04\x0c\n\x0c\n\x05\x04\x04\x02\x01\x05\x12\x03l\r\x13\n\x0c\n\x05\ - \x04\x04\x02\x01\x01\x12\x03l\x14\x1e\n\x0c\n\x05\x04\x04\x02\x01\x03\ - \x12\x03l!\"\nR\n\x04\x04\x04\x02\x02\x12\x03o\x04\x20\x1aE\x20a\x20list\ - \x20of\x20peer\x20IDs\n\x20sent\x20by:\x20CM_DISCONNECT,\x20CM_STATUS,\ - \x20CM_GET_PEERS\n\n\x0c\n\x05\x04\x04\x02\x02\x04\x12\x03o\x04\x0c\n\ - \x0c\n\x05\x04\x04\x02\x02\x05\x12\x03o\r\x13\n\x0c\n\x05\x04\x04\x02\ - \x02\x01\x12\x03o\x14\x1b\n\x0c\n\x05\x04\x04\x02\x02\x03\x12\x03o\x1e\ - \x1f\n\n\n\x02\x04\x05\x12\x04r\0y\x01\n\n\n\x03\x04\x05\x01\x12\x03r\ - \x08\x18\nU\n\x04\x04\x05\x02\0\x12\x03t\x04$\x1aH\x20indicates\x20the\ - \x20particular\x20connection\x20management\x20request\x20being\x20perfor\ - med\n\n\r\n\x05\x04\x05\x02\0\x04\x12\x04t\x04r\x1a\n\x0c\n\x05\x04\x05\ - \x02\0\x06\x12\x03t\x04\x13\n\x0c\n\x05\x04\x05\x02\0\x01\x12\x03t\x14\ - \x1f\n\x0c\n\x05\x04\x05\x02\0\x03\x12\x03t\"#\n\x0b\n\x04\x04\x05\x02\ - \x01\x12\x03u\x04$\n\r\n\x05\x04\x05\x02\x01\x04\x12\x04u\x04t$\n\x0c\n\ - \x05\x04\x05\x02\x01\x06\x12\x03u\x04\x15\n\x0c\n\x05\x04\x05\x02\x01\ - \x01\x12\x03u\x16\x1f\n\x0c\n\x05\x04\x05\x02\x01\x03\x12\x03u\"#\nh\n\ - \x04\x04\x05\x02\x02\x12\x03w\x04+\x1a[\x20a\x20map\x20of\x20the\x20peer\ - \x20id,\x20and\x20a\x20custom\x20message\x20indicating\x20success,\x20or\ - \x20why\x20there\x20was\x20a\x20failure\n\n\r\n\x05\x04\x05\x02\x02\x04\ - \x12\x04w\x04u$\n\x0c\n\x05\x04\x05\x02\x02\x06\x12\x03w\x04\x1f\n\x0c\n\ - \x05\x04\x05\x02\x02\x01\x12\x03w\x20&\n\x0c\n\x05\x04\x05\x02\x02\x03\ - \x12\x03w)*\n\x0b\n\x04\x04\x05\x02\x03\x12\x03x\x04\x20\n\x0c\n\x05\x04\ - \x05\x02\x03\x04\x12\x03x\x04\x0c\n\x0c\n\x05\x04\x05\x02\x03\x05\x12\ - \x03x\r\x13\n\x0c\n\x05\x04\x05\x02\x03\x01\x12\x03x\x14\x1b\n\x0c\n\x05\ - \x04\x05\x02\x03\x03\x12\x03x\x1e\x1f\nP\n\x02\x04\x06\x12\x05|\0\x81\ - \x01\x01\x1aC\x20Contains\x20status\x20information\x20about\x20a\x20part\ - icular\x20disconnect\x20attempt\n\n\n\n\x03\x04\x06\x01\x12\x03|\x08\x16\ - \n?\n\x04\x04\x06\x02\0\x12\x03~\x04\x1a\x1a2\x20indicate\x20whether\x20\ - or\x20not\x20we\x20actually\x20disconnected\n\n\r\n\x05\x04\x06\x02\0\ - \x04\x12\x04~\x04|\x18\n\x0c\n\x05\x04\x06\x02\0\x05\x12\x03~\x04\x08\n\ - \x0c\n\x05\x04\x06\x02\0\x01\x12\x03~\t\x15\n\x0c\n\x05\x04\x06\x02\0\ - \x03\x12\x03~\x18\x19\nD\n\x04\x04\x06\x02\x01\x12\x04\x80\x01\x04\x16\ - \x1a6\x20if\x20disconnected\x20is\x20false,\x20the\x20reason\x20why\x20i\ - t\x20is\x20false\n\n\x0e\n\x05\x04\x06\x02\x01\x04\x12\x05\x80\x01\x04~\ - \x1a\n\r\n\x05\x04\x06\x02\x01\x05\x12\x04\x80\x01\x04\n\n\r\n\x05\x04\ - \x06\x02\x01\x01\x12\x04\x80\x01\x0b\x11\n\r\n\x05\x04\x06\x02\x01\x03\ - \x12\x04\x80\x01\x14\x15\nU\n\x02\x05\x02\x12\x06\x84\x01\0\x89\x01\x01\ - \x1aG\x20EXTRASREQTYPE\x20indicates\x20the\x20particular\x20Extras\x20re\ - quest\x20being\x20performed\n\n\x0b\n\x03\x05\x02\x01\x12\x04\x84\x01\ - \x05\x12\nL\n\x04\x05\x02\x02\0\x12\x04\x86\x01\x04\x12\x1a>\x20EX_ENABL\ - E\x20is\x20used\x20to\x20enable\x20a\x20particular\x20node\x20extras\x20\ - feature\n\n\r\n\x05\x05\x02\x02\0\x01\x12\x04\x86\x01\x04\r\n\r\n\x05\ - \x05\x02\x02\0\x02\x12\x04\x86\x01\x10\x11\nN\n\x04\x05\x02\x02\x01\x12\ - \x04\x88\x01\x04\x13\x1a@\x20EX_DISABLE\x20is\x20used\x20to\x20disable\ - \x20a\x20particular\x20node\x20extras\x20feature\n\n\r\n\x05\x05\x02\x02\ - \x01\x01\x12\x04\x88\x01\x04\x0e\n\r\n\x05\x05\x02\x02\x01\x02\x12\x04\ - \x88\x01\x11\x12\n;\n\x02\x05\x03\x12\x06\x8c\x01\0\x95\x01\x01\x1a-\x20\ - EXTRASTYPE\x20denotes\x20a\x20particular\x20extras\x20type\n\n\x0b\n\x03\ - \x05\x03\x01\x12\x04\x8c\x01\x05\x0f\n0\n\x04\x05\x03\x02\0\x12\x04\x8e\ - \x01\x04\x11\x1a\"\x20IDENTIFY\x20is\x20the\x20identify\x20service\n\n\r\ - \n\x05\x05\x03\x02\0\x01\x12\x04\x8e\x01\x04\x0c\n\r\n\x05\x05\x03\x02\0\ - \x02\x12\x04\x8e\x01\x0f\x10\n2\n\x04\x05\x03\x02\x01\x12\x04\x90\x01\ - \x04\x0f\x1a$\x20PUBSUB\x20is\x20the\x20libp2p\x20pubsub\x20system\n\n\r\ - \n\x05\x05\x03\x02\x01\x01\x12\x04\x90\x01\x04\n\n\r\n\x05\x05\x03\x02\ - \x01\x02\x12\x04\x90\x01\r\x0e\n7\n\x04\x05\x03\x02\x02\x12\x04\x92\x01\ - \x04\x12\x1a)\x20DISCOVERY\x20is\x20a\x20libp2p\x20discovery\x20service\ - \n\n\r\n\x05\x05\x03\x02\x02\x01\x12\x04\x92\x01\x04\r\n\r\n\x05\x05\x03\ - \x02\x02\x02\x12\x04\x92\x01\x10\x11\n?\n\x04\x05\x03\x02\x03\x12\x04\ - \x94\x01\x04\r\x1a1\x20MDNS\x20is\x20used\x20to\x20discover\x20libp2p\ - \x20hosts\x20over\x20mdns\n\n\r\n\x05\x05\x03\x02\x03\x01\x12\x04\x94\ - \x01\x04\x08\n\r\n\x05\x05\x03\x02\x03\x02\x12\x04\x94\x01\x0b\x0c\n\x0c\ - \n\x02\x04\x07\x12\x06\x97\x01\0\x9c\x01\x01\n\x0b\n\x03\x04\x07\x01\x12\ - \x04\x97\x01\x08\x15\n5\n\x04\x04\x07\x02\0\x12\x04\x99\x01\x04\"\x1a'\ - \x20indicates\x20the\x20request\x20being\x20performed\n\n\x0f\n\x05\x04\ - \x07\x02\0\x04\x12\x06\x99\x01\x04\x97\x01\x17\n\r\n\x05\x04\x07\x02\0\ - \x06\x12\x04\x99\x01\x04\x11\n\r\n\x05\x04\x07\x02\0\x01\x12\x04\x99\x01\ - \x12\x1d\n\r\n\x05\x04\x07\x02\0\x03\x12\x04\x99\x01\x20!\nD\n\x04\x04\ - \x07\x02\x01\x12\x04\x9b\x01\x04!\x1a6\x20indicates\x20the\x20extras\x20\ - feature\x20this\x20request\x20applies\x20to\n\n\x0f\n\x05\x04\x07\x02\ - \x01\x04\x12\x06\x9b\x01\x04\x99\x01\"\n\r\n\x05\x04\x07\x02\x01\x06\x12\ - \x04\x9b\x01\x04\x0e\n\r\n\x05\x04\x07\x02\x01\x01\x12\x04\x9b\x01\x0f\ - \x1c\n\r\n\x05\x04\x07\x02\x01\x03\x12\x04\x9b\x01\x1f\x20\nA\n\x02\x05\ - \x04\x12\x06\xa0\x01\0\xb6\x01\x01\x1a3\x20BSREQTYPE\x20is\x20a\x20parti\ - cular\x20blockstore\x20request\x20type\n\n\x0b\n\x03\x05\x04\x01\x12\x04\ - \xa0\x01\x05\x0e\nB\n\x04\x05\x04\x02\0\x12\x04\xa2\x01\x04\x12\x1a4\x20\ - BS_DELETE\x20is\x20used\x20to\x20delete\x20a\x20block\x20from\x20the\x20\ - store\n\n\r\n\x05\x05\x04\x02\0\x01\x12\x04\xa2\x01\x04\r\n\r\n\x05\x05\ - \x04\x02\0\x02\x12\x04\xa2\x01\x10\x11\nA\n\x04\x05\x04\x02\x01\x12\x04\ - \xa4\x01\x04\x0f\x1a3\x20BS_PUT\x20is\x20used\x20to\x20put\x20a\x20singl\ - e\x20block\x20in\x20the\x20store\n\n\r\n\x05\x05\x04\x02\x01\x01\x12\x04\ - \xa4\x01\x04\n\n\r\n\x05\x05\x04\x02\x01\x02\x12\x04\xa4\x01\r\x0e\nC\n\ - \x04\x05\x04\x02\x02\x12\x04\xa6\x01\x04\x14\x1a5\x20BS_PUT_MANY\x20is\ - \x20used\x20to\x20put\x20many\x20blocks\x20in\x20the\x20store\n\n\r\n\ - \x05\x05\x04\x02\x02\x01\x12\x04\xa6\x01\x04\x0f\n\r\n\x05\x05\x04\x02\ - \x02\x02\x12\x04\xa6\x01\x12\x13\n<\n\x04\x05\x04\x02\x03\x12\x04\xa8\ - \x01\x04\x0f\x1a.\x20BS_GET\x20is\x20used\x20to\x20get\x20a\x20block\x20\ - from\x20the\x20store\n\n\r\n\x05\x05\x04\x02\x03\x01\x12\x04\xa8\x01\x04\ - \n\n\r\n\x05\x05\x04\x02\x03\x02\x12\x04\xa8\x01\r\x0e\nE\n\x04\x05\x04\ - \x02\x04\x12\x04\xaa\x01\x04\x14\x1a7\x20BS_GET_MANY\x20is\x20used\x20to\ - \x20get\x20many\x20blocks\x20from\x20the\x20store\n\n\r\n\x05\x05\x04\ - \x02\x04\x01\x12\x04\xaa\x01\x04\x0f\n\r\n\x05\x05\x04\x02\x04\x02\x12\ - \x04\xaa\x01\x12\x13\n~\n\x04\x05\x04\x02\x05\x12\x04\xad\x01\x04\x13\ - \x1ap\x20BS_GET_ALL\x20is\x20used\x20to\x20retrieve\x20all\x20blocks\x20\ - from\x20the\x20store\n\x20It\x20is\x20the\x20gRPC\x20equivalent\x20of\ - \x20Blockstore::AllKeysChan\n\n\r\n\x05\x05\x04\x02\x05\x01\x12\x04\xad\ - \x01\x04\x0e\n\r\n\x05\x05\x04\x02\x05\x02\x12\x04\xad\x01\x11\x12\nS\n\ - \x04\x05\x04\x02\x06\x12\x04\xaf\x01\x04\x15\x1aE\x20BS_GET_STATS\x20is\ - \x20used\x20to\x20retrieve\x20statistics\x20about\x20individual\x20block\ - s\n\n\r\n\x05\x05\x04\x02\x06\x01\x12\x04\xaf\x01\x04\x10\n\r\n\x05\x05\ - \x04\x02\x06\x02\x12\x04\xaf\x01\x13\x14\nK\n\x04\x05\x04\x02\x07\x12\ - \x04\xb1\x01\x04\x0f\x1a=\x20BS_HAS\x20is\x20used\x20to\x20retrieve\x20w\ - hether\x20or\x20not\x20we\x20have\x20the\x20block\n\n\r\n\x05\x05\x04\ - \x02\x07\x01\x12\x04\xb1\x01\x04\n\n\r\n\x05\x05\x04\x02\x07\x02\x12\x04\ - \xb1\x01\r\x0e\nE\n\x04\x05\x04\x02\x08\x12\x04\xb3\x01\x04\x1f\x1a7\x20\ - BS_HASH_ON_READ_ENABLE\x20is\x20used\x20to\x20enable\x20hash\x20on\x20re\ - ad\n\n\r\n\x05\x05\x04\x02\x08\x01\x12\x04\xb3\x01\x04\x1a\n\r\n\x05\x05\ - \x04\x02\x08\x02\x12\x04\xb3\x01\x1d\x1e\nG\n\x04\x05\x04\x02\t\x12\x04\ - \xb5\x01\x04\x20\x1a9\x20BS_HASH_ON_READ_DISABLE\x20is\x20used\x20to\x20\ - disable\x20hash\x20on\x20read\n\n\r\n\x05\x05\x04\x02\t\x01\x12\x04\xb5\ - \x01\x04\x1b\n\r\n\x05\x05\x04\x02\t\x02\x12\x04\xb5\x01\x1e\x1f\n=\n\ - \x02\x05\x05\x12\x06\xb9\x01\0\xbe\x01\x01\x1a/\x20BSREQOPTS\x20are\x20o\ - ptions\x20for\x20blockstore\x20requests\n\n\x0b\n\x03\x05\x05\x01\x12\ - \x04\xb9\x01\x05\x0e\n=\n\x04\x05\x05\x02\0\x12\x04\xbb\x01\x04\x10\x1a/\ - \x20DEFAULT\x20indicates\x20to\x20use\x20the\x20default\x20settings\n\n\ - \r\n\x05\x05\x05\x02\0\x01\x12\x04\xbb\x01\x04\x0b\n\r\n\x05\x05\x05\x02\ - \0\x02\x12\x04\xbb\x01\x0e\x0f\nY\n\x04\x05\x05\x02\x01\x12\x04\xbd\x01\ - \x04\x11\x1aK\x20BS_FORCE\x20indicates\x20to\x20force\x20the\x20request\ - \x20regardless\x20of\x20any\x20possible\x20issues\n\n\r\n\x05\x05\x05\ - \x02\x01\x01\x12\x04\xbd\x01\x04\x0c\n\r\n\x05\x05\x05\x02\x01\x02\x12\ - \x04\xbd\x01\x0f\x10\nJ\n\x02\x04\x08\x12\x06\xc1\x01\0\xd2\x01\x01\x1a<\ - \x20BlockstoreRequest\x20is\x20a\x20message\x20used\x20to\x20control\x20\ - blockstores\n\n\x0b\n\x03\x04\x08\x01\x12\x04\xc1\x01\x08\x19\nA\n\x04\ - \x04\x08\x02\0\x12\x04\xc3\x01\x04\x1e\x1a3\x20\x20indicates\x20the\x20p\ - articular\x20request\x20type\x20being\x20made\n\n\x0f\n\x05\x04\x08\x02\ - \0\x04\x12\x06\xc3\x01\x04\xc1\x01\x1b\n\r\n\x05\x04\x08\x02\0\x06\x12\ - \x04\xc3\x01\x04\r\n\r\n\x05\x04\x08\x02\0\x01\x12\x04\xc3\x01\x0e\x19\n\ - \r\n\x05\x04\x08\x02\0\x03\x12\x04\xc3\x01\x1c\x1d\n)\n\x04\x04\x08\x02\ - \x01\x12\x04\xc5\x01\x04#\x1a\x1b\x20optional\x20request\x20settings\n\n\ - \r\n\x05\x04\x08\x02\x01\x04\x12\x04\xc5\x01\x04\x0c\n\r\n\x05\x04\x08\ - \x02\x01\x06\x12\x04\xc5\x01\r\x16\n\r\n\x05\x04\x08\x02\x01\x01\x12\x04\ - \xc5\x01\x17\x1e\n\r\n\x05\x04\x08\x02\x01\x03\x12\x04\xc5\x01!\"\nU\n\ - \x04\x04\x08\x02\x02\x12\x04\xc8\x01\x04\x1d\x1aG\x20cids\x20of\x20block\ - s\n\x20sent\x20by:\x20BS_DELETE,\x20BS_GET,\x20BS_GET_MANY,\x20BS_GET_ST\ - ATS\n\n\r\n\x05\x04\x08\x02\x02\x04\x12\x04\xc8\x01\x04\x0c\n\r\n\x05\ - \x04\x08\x02\x02\x05\x12\x04\xc8\x01\r\x13\n\r\n\x05\x04\x08\x02\x02\x01\ - \x12\x04\xc8\x01\x14\x18\n\r\n\x05\x04\x08\x02\x02\x03\x12\x04\xc8\x01\ - \x1b\x1c\nE\n\x04\x04\x08\x02\x03\x12\x04\xcb\x01\x04\x1c\x1a7\x20the\ - \x20data\x20we\x20are\x20putting\n\x20sent\x20by:\x20BS_PUT,\x20BS_PUT_M\ - ANY\n\n\r\n\x05\x04\x08\x02\x03\x04\x12\x04\xcb\x01\x04\x0c\n\r\n\x05\ - \x04\x08\x02\x03\x05\x12\x04\xcb\x01\r\x12\n\r\n\x05\x04\x08\x02\x03\x01\ - \x12\x04\xcb\x01\x13\x17\n\r\n\x05\x04\x08\x02\x03\x03\x12\x04\xcb\x01\ - \x1a\x1b\nl\n\x04\x04\x08\x02\x04\x12\x04\xce\x01\x04\x1a\x1a^\x20the\ - \x20cid\x20version\x20to\x20use\x20when\x20constructing\x20blocks,\x20de\ - fault\x20is\x20v1\n\x20sent\x20by:\x20BS_PUT,\x20BS_PUT_MANY\n\n\x0f\n\ - \x05\x04\x08\x02\x04\x04\x12\x06\xce\x01\x04\xcb\x01\x1c\n\r\n\x05\x04\ - \x08\x02\x04\x05\x12\x04\xce\x01\x04\n\n\r\n\x05\x04\x08\x02\x04\x01\x12\ - \x04\xce\x01\x0b\x15\n\r\n\x05\x04\x08\x02\x04\x03\x12\x04\xce\x01\x18\ - \x19\nt\n\x04\x04\x08\x02\x05\x12\x04\xd1\x01\x04\x18\x1af\x20the\x20has\ - h\x20function\x20to\x20use\x20when\x20constructing\x20blocks,\x20default\ - \x20is\x20sha2-256\n\x20sent\x20by:\x20BS_PUT,\x20BS_PUT_MANY\n\n\x0f\n\ - \x05\x04\x08\x02\x05\x04\x12\x06\xd1\x01\x04\xce\x01\x1a\n\r\n\x05\x04\ - \x08\x02\x05\x05\x12\x04\xd1\x01\x04\n\n\r\n\x05\x04\x08\x02\x05\x01\x12\ - \x04\xd1\x01\x0b\x13\n\r\n\x05\x04\x08\x02\x05\x03\x12\x04\xd1\x01\x16\ - \x17\nH\n\x02\x04\t\x12\x06\xd5\x01\0\xe2\x01\x01\x1a:\x20BlockstoreResp\ - onse\x20is\x20a\x20response\x20to\x20a\x20BlockstoreqRequest\n\n\x0b\n\ - \x03\x04\t\x01\x12\x04\xd5\x01\x08\x1a\n@\n\x04\x04\t\x02\0\x12\x04\xd7\ + Func\x18\x07\x20\x01(\tR\x08hashFunc\x12\x14\n\x05refID\x18\x08\x20\x01(\ + \tR\x05refID\x12\x20\n\x0bprogressive\x18\t\x20\x01(\x08R\x0bprogressive\ + \x12\x18\n\x07replace\x18\n\x20\x01(\x08R\x07replace\"h\n\x12BlockstoreR\ + esponse\x12/\n\x0brequestType\x18\x01\x20\x01(\x0e2\r.pb.BSREQTYPER\x0br\ + equestType\x12!\n\x06blocks\x18\x02\x20\x03(\x0b2\t.pb.BlockR\x06blocks\ + \"A\n\x05Block\x12\x10\n\x03cid\x18\x01\x20\x01(\tR\x03cid\x12\x12\n\x04\ + data\x18\x02\x20\x01(\x0cR\x04data\x12\x12\n\x04size\x18\x03\x20\x01(\ + \x03R\x04size\"\xb9\x03\n\nDagRequest\x120\n\x0brequestType\x18\x01\x20\ + \x01(\x0e2\x0e.pb.DAGREQTYPER\x0brequestType\x12\x12\n\x04data\x18\x02\ + \x20\x01(\x0cR\x04data\x12&\n\x0eobjectEncoding\x18\x03\x20\x01(\tR\x0eo\ + bjectEncoding\x120\n\x13serializationFormat\x18\x04\x20\x01(\tR\x13seria\ + lizationFormat\x12\x1a\n\x08hashFunc\x18\x05\x20\x01(\tR\x08hashFunc\x12\ + \x1e\n\ncidVersion\x18\x06\x20\x01(\x03R\ncidVersion\x12\x12\n\x04hash\ + \x18\x07\x20\x01(\tR\x04hash\x12/\n\x05links\x18\x08\x20\x03(\x0b2\x19.p\ + b.DagRequest.LinksEntryR\x05links\x12\x14\n\x05refID\x18\t\x20\x01(\tR\ + \x05refID\x12\x20\n\x0bprogressive\x18\n\x20\x01(\x08R\x0bprogressive\ + \x12\x18\n\x07replace\x18\x0b\x20\x01(\x08R\x07replace\x1a8\n\nLinksEntr\ + y\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03key\x12\x14\n\x05value\x18\x02\ + \x20\x01(\tR\x05value:\x028\x01\"\xb5\x02\n\x0bDagResponse\x120\n\x0breq\ + uestType\x18\x01\x20\x01(\x0e2\x0e.pb.DAGREQTYPER\x0brequestType\x12\x16\ + \n\x06hashes\x18\x02\x20\x03(\tR\x06hashes\x12\x18\n\x07rawData\x18\x03\ + \x20\x01(\x0cR\x07rawData\x12\"\n\x05links\x18\x04\x20\x03(\x0b2\x0c.pb.\ + IPLDLinkR\x05links\x12<\n\tnodeStats\x18\x05\x20\x03(\x0b2\x1e.pb.DagRes\ + ponse.NodeStatsEntryR\tnodeStats\x12\x14\n\x05count\x18\x06\x20\x01(\x04\ + R\x05count\x1aJ\n\x0eNodeStatsEntry\x12\x10\n\x03key\x18\x01\x20\x01(\tR\ + \x03key\x12\"\n\x05value\x18\x02\x20\x01(\x0b2\x0c.pb.IPLDStatR\x05value\ + :\x028\x01\"\xa4\x01\n\x08IPLDStat\x12\x1a\n\x08numLinks\x18\x01\x20\x01\ + (\x03R\x08numLinks\x12\x1c\n\tblockSize\x18\x02\x20\x01(\x03R\tblockSize\ + \x12\x1a\n\x08linkSize\x18\x03\x20\x01(\x03R\x08linkSize\x12&\n\x0ecumul\ + ativeSize\x18\x04\x20\x01(\x03R\x0ecumulativeSize\x12\x1a\n\x08dataSize\ + \x18\x05\x20\x01(\x03R\x08dataSize\"F\n\x08IPLDLink\x12\x12\n\x04hash\ + \x18\x01\x20\x01(\x0cR\x04hash\x12\x12\n\x04name\x18\x02\x20\x01(\tR\x04\ + name\x12\x12\n\x04size\x18\x03\x20\x01(\x04R\x04size\"B\n\x08IPLDNode\ + \x12\"\n\x05links\x18\x02\x20\x03(\x0b2\x0c.pb.IPLDLinkR\x05links\x12\ + \x12\n\x04data\x18\x01\x20\x01(\x0cR\x04data\"v\n\x0fKeystoreRequest\x12\ + /\n\x0brequestType\x18\x01\x20\x01(\x0e2\r.pb.KSREQTYPER\x0brequestType\ + \x12\x12\n\x04name\x18\x02\x20\x01(\tR\x04name\x12\x1e\n\nprivateKey\x18\ + \x03\x20\x01(\x0cR\nprivateKey\"\x91\x01\n\x10KeystoreResponse\x12/\n\ + \x0brequestType\x18\x01\x20\x01(\x0e2\r.pb.KSREQTYPER\x0brequestType\x12\ + \x1e\n\nprivateKey\x18\x02\x20\x01(\x0cR\nprivateKey\x12\x1a\n\x08keyNam\ + es\x18\x03\x20\x03(\tR\x08keyNames\x12\x10\n\x03has\x18\x04\x20\x01(\x08\ + R\x03has\"\\\n\x0ePersistRequest\x12\x12\n\x04cids\x18\x01\x20\x03(\tR\ + \x04cids\x12\x14\n\x05refID\x18\x02\x20\x01(\tR\x05refID\x12\x20\n\x0bpr\ + ogressive\x18\x05\x20\x01(\x08R\x0bprogressive\"\xf9\x01\n\x0fPersistRes\ + ponse\x127\n\x06status\x18\x01\x20\x03(\x0b2\x1f.pb.PersistResponse.Stat\ + usEntryR\x06status\x127\n\x06errors\x18\x02\x20\x03(\x0b2\x1f.pb.Persist\ + Response.ErrorsEntryR\x06errors\x1a9\n\x0bStatusEntry\x12\x10\n\x03key\ + \x18\x01\x20\x01(\tR\x03key\x12\x14\n\x05value\x18\x02\x20\x01(\x08R\x05\ + value:\x028\x01\x1a9\n\x0bErrorsEntry\x12\x10\n\x03key\x18\x01\x20\x01(\ + \tR\x03key\x12\x14\n\x05value\x18\x02\x20\x01(\tR\x05value:\x028\x01*8\n\ + \nP2PREQTYPE\x12\t\n\x05CLOSE\x10\0\x12\x0b\n\x07FORWARD\x10\x01\x12\n\n\ + \x06LISTEN\x10\x02\x12\x06\n\x02LS\x10\x03*U\n\x0fCONNMGMTREQTYPE\x12\ + \x0e\n\nCM_CONNECT\x10\0\x12\x11\n\rCM_DISCONNECT\x10\x01\x12\r\n\tCM_ST\ + ATUS\x10\x02\x12\x10\n\x0cCM_GET_PEERS\x10\x03*.\n\rEXTRASREQTYPE\x12\r\ + \n\tEX_ENABLE\x10\0\x12\x0e\n\nEX_DISABLE\x10\x01*?\n\nEXTRASTYPE\x12\ + \x0c\n\x08IDENTIFY\x10\0\x12\n\n\x06PUBSUB\x10\x01\x12\r\n\tDISCOVERY\ + \x10\x02\x12\x08\n\x04MDNS\x10\x03*\xbb\x01\n\tBSREQTYPE\x12\r\n\tBS_DEL\ + ETE\x10\0\x12\n\n\x06BS_PUT\x10\x01\x12\x0f\n\x0bBS_PUT_MANY\x10\x02\x12\ + \n\n\x06BS_GET\x10\x03\x12\x0f\n\x0bBS_GET_MANY\x10\x04\x12\x0e\n\nBS_GE\ + T_ALL\x10\x05\x12\x10\n\x0cBS_GET_STATS\x10\x06\x12\n\n\x06BS_HAS\x10\ + \x07\x12\x1a\n\x16BS_HASH_ON_READ_ENABLE\x10\x08\x12\x1b\n\x17BS_HASH_ON\ + _READ_DISABLE\x10\t*&\n\tBSREQOPTS\x12\x0b\n\x07DEFAULT\x10\0\x12\x0c\n\ + \x08BS_FORCE\x10\x01*|\n\nDAGREQTYPE\x12\x0b\n\x07DAG_PUT\x10\0\x12\x0b\ + \n\x07DAG_GET\x10\x01\x12\x10\n\x0cDAG_NEW_NODE\x10\x02\x12\x11\n\rDAG_A\ + DD_LINKS\x10\x03\x12\x11\n\rDAG_GET_LINKS\x10\x04\x12\x0c\n\x08DAG_STAT\ + \x10\x05\x12\x0e\n\nDAG_REMOVE\x10\x06*K\n\tKSREQTYPE\x12\n\n\x06KS_HAS\ + \x10\0\x12\n\n\x06KS_GET\x10\x01\x12\n\n\x06KS_PUT\x10\x02\x12\r\n\tKS_D\ + ELETE\x10\x03\x12\x0b\n\x07KS_LIST\x10\x042\xb7\x03\n\x07NodeAPI\x127\n\ + \x08ConnMgmt\x12\x13.pb.ConnMgmtRequest\x1a\x14.pb.ConnMgmtResponse\"\0\ + \x12(\n\x06Extras\x12\x11.pb.ExtrasRequest\x1a\t.pb.Empty\"\0\x12(\n\x03\ + P2P\x12\x0e.pb.P2PRequest\x1a\x0f.pb.P2PResponse\"\0\x12=\n\nBlockstore\ + \x12\x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreResponse\"\0\x12G\n\ + \x10BlockstoreStream\x12\x15.pb.BlockstoreRequest\x1a\x16.pb.BlockstoreR\ + esponse\"\0(\x010\x01\x12(\n\x03Dag\x12\x0e.pb.DagRequest\x1a\x0f.pb.Dag\ + Response\"\0\x127\n\x08Keystore\x12\x13.pb.KeystoreRequest\x1a\x14.pb.Ke\ + ystoreResponse\"\0\x124\n\x07Persist\x12\x12.pb.PersistRequest\x1a\x13.p\ + b.PersistResponse\"\0J\x9e\x8f\x01\n\x07\x12\x05\0\0\x9b\x03\x01\n\x08\n\ + \x01\x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\n\t\n\x02\x03\ + \0\x12\x03\x02\x07\x13\nO\n\x02\x06\0\x12\x04\x05\0\x19\x01\x1aC\x20Node\ + API\x20provide\x20an\x20API\x20to\x20control\x20the\x20underlying\x20cus\ + tom\x20ipfs\x20node\n\n\n\n\x03\x06\0\x01\x12\x03\x05\x08\x0f\n@\n\x04\ + \x06\0\x02\0\x12\x03\x07\x04@\x1a3\x20ConnMgmt\x20provides\x20control\ + \x20over\x20libp2p\x20connections\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\ + \x07\x08\x10\n\x0c\n\x05\x06\0\x02\0\x02\x12\x03\x07\x11\x20\n\x0c\n\x05\ + \x06\0\x02\0\x03\x12\x03\x07+;\nC\n\x04\x06\0\x02\x01\x12\x03\t\x041\x1a\ + 6\x20Extras\x20provide\x20control\x20over\x20node\x20extras\x20capabilit\ + ies\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x03\t\x08\x0e\n\x0c\n\x05\x06\0\ + \x02\x01\x02\x12\x03\t\x0f\x1c\n\x0c\n\x05\x06\0\x02\x01\x03\x12\x03\t',\ + \n\xdf\x01\n\x04\x06\0\x02\x02\x12\x03\r\x041\x1a\xd1\x01\x20P2P\x20allo\ + ws\x20control\x20of\x20generalized\x20p2p\x20streams\x20for\x20tcp/udp\ + \x20based\x20protocol.\n\x20By\x20using\x20this\x20RPC,\x20we\x20can\x20\ + tunnel\x20traffic\x20similar\x20to\x20ssh\x20tunneling\n\x20except\x20us\ + ing\x20libp2p\x20as\x20the\x20transport\x20layer,\x20and\x20and\x20tcp/u\ + dp\x20port.\n\n\x0c\n\x05\x06\0\x02\x02\x01\x12\x03\r\x08\x0b\n\x0c\n\ + \x05\x06\0\x02\x02\x02\x12\x03\r\x0c\x16\n\x0c\n\x05\x06\0\x02\x02\x03\ + \x12\x03\r!,\nR\n\x04\x06\0\x02\x03\x12\x03\x0f\x04F\x1aE\x20Blockstore\ + \x20allows\x20low-level\x20management\x20of\x20the\x20underlying\x20bloc\ + kstore\n\n\x0c\n\x05\x06\0\x02\x03\x01\x12\x03\x0f\x08\x12\n\x0c\n\x05\ + \x06\0\x02\x03\x02\x12\x03\x0f\x13$\n\x0c\n\x05\x06\0\x02\x03\x03\x12\ + \x03\x0f/A\n\x87\x01\n\x04\x06\0\x02\x04\x12\x03\x12\x04Z\x1az\x20Blocks\ + toreStream\x20is\x20akin\x20to\x20Blockstore,\x20except\x20streamable\n\ + \x20Once\x20v4\x20is\x20out,\x20condense\x20this\x20+\x20blockstore\x20i\ + nto\x20a\x20single\x20call\n\n\x0c\n\x05\x06\0\x02\x04\x01\x12\x03\x12\ + \x08\x18\n\x0c\n\x05\x06\0\x02\x04\x05\x12\x03\x12\x19\x1f\n\x0c\n\x05\ + \x06\0\x02\x04\x02\x12\x03\x12\x201\n\x0c\n\x05\x06\0\x02\x04\x06\x12\ + \x03\x12\x01\x1aR\x20P2PRequest\x20is\x20a\x20reque\ + st\x20message\x20holding\x20the\x20details\x20of\x20a\x20particular\x20P\ + 2P\x20rpc\x20call\n\n\n\n\x03\x04\0\x01\x12\x03(\x08\x12\n)\n\x04\x04\0\ + \x02\0\x12\x03*\x04\x1f\x1a\x1c\x20indicates\x20the\x20request\x20type\n\ + \n\r\n\x05\x04\0\x02\0\x04\x12\x04*\x04(\x14\n\x0c\n\x05\x04\0\x02\0\x06\ + \x12\x03*\x04\x0e\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03*\x0f\x1a\n\x0c\n\ + \x05\x04\0\x02\0\x03\x12\x03*\x1d\x1e\n(\n\x04\x04\0\x02\x01\x12\x03,\ + \x04\x11\x1a\x1b\x20used\x20by:\x20P2PREQTYPE.CLOSE\n\n\r\n\x05\x04\0\ + \x02\x01\x04\x12\x04,\x04*\x1f\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03,\ + \x04\x08\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03,\t\x0c\n\x0c\n\x05\x04\0\ + \x02\x01\x03\x12\x03,\x0f\x10\n%\n\x04\x04\0\x02\x02\x12\x03.\x04\x15\ + \x1a\x18\x20used\x20by:\x20P2PREQTYPE.LS\n\n\r\n\x05\x04\0\x02\x02\x04\ + \x12\x04.\x04,\x11\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x03.\x04\x08\n\x0c\ + \n\x05\x04\0\x02\x02\x01\x12\x03.\t\x10\n\x0c\n\x05\x04\0\x02\x02\x03\ + \x12\x03.\x13\x14\nO\n\x04\x04\0\x02\x03\x12\x030\x04\x1c\x1aB\x20used\ + \x20by:\x20P2PREQTYPE.CLOSE,\x20P2PREQTYPE.FORWARD,\x20P2PREQTYPE.LISTEN\ + \n\n\r\n\x05\x04\0\x02\x03\x04\x12\x040\x04.\x15\n\x0c\n\x05\x04\0\x02\ + \x03\x05\x12\x030\x04\n\n\x0c\n\x05\x04\0\x02\x03\x01\x12\x030\x0b\x17\n\ + \x0c\n\x05\x04\0\x02\x03\x03\x12\x030\x1a\x1b\n^\n\x04\x04\0\x02\x04\x12\ + \x033\x04\x1d\x1aQ\x20used\x20by:\x20P2PREQTYPE.CLOSE,\x20P2PREQTYPE.FOR\ + WARD\n\x20must\x20be\x20specified\x20as\x20a\x20multiaddr\n\n\r\n\x05\ + \x04\0\x02\x04\x04\x12\x043\x040\x1c\n\x0c\n\x05\x04\0\x02\x04\x05\x12\ + \x033\x04\n\n\x0c\n\x05\x04\0\x02\x04\x01\x12\x033\x0b\x18\n\x0c\n\x05\ + \x04\0\x02\x04\x03\x12\x033\x1b\x1c\n^\n\x04\x04\0\x02\x05\x12\x036\x04\ + \x1d\x1aQ\x20used\x20by:\x20P2PREQTYPE.CLOSE,\x20P2PREQTYPE.FORWARD\n\ + \x20must\x20be\x20specified\x20as\x20a\x20multiaddr\n\n\r\n\x05\x04\0\ + \x02\x05\x04\x12\x046\x043\x1d\n\x0c\n\x05\x04\0\x02\x05\x05\x12\x036\ + \x04\n\n\x0c\n\x05\x04\0\x02\x05\x01\x12\x036\x0b\x18\n\x0c\n\x05\x04\0\ + \x02\x05\x03\x12\x036\x1b\x1c\nK\n\x04\x04\0\x02\x06\x12\x039\x04\x1d\ + \x1a>\x20used\x20by:\x20P2PREQTYPE.LISTEN\n\x20must\x20be\x20specified\ + \x20as\x20a\x20multiaddr\n\n\r\n\x05\x04\0\x02\x06\x04\x12\x049\x046\x1d\ + \n\x0c\n\x05\x04\0\x02\x06\x05\x12\x039\x04\n\n\x0c\n\x05\x04\0\x02\x06\ + \x01\x12\x039\x0b\x18\n\x0c\n\x05\x04\0\x02\x06\x03\x12\x039\x1b\x1c\n=\ + \n\x04\x04\0\x02\x07\x12\x03;\x04\"\x1a0\x20used\x20by:\x20P2PREQTYPE.LI\ + STEN,\x20P2PREQTYPE.FORWARD\n\n\r\n\x05\x04\0\x02\x07\x04\x12\x04;\x049\ + \x1d\n\x0c\n\x05\x04\0\x02\x07\x05\x12\x03;\x04\x08\n\x0c\n\x05\x04\0\ + \x02\x07\x01\x12\x03;\t\x1d\n\x0c\n\x05\x04\0\x02\x07\x03\x12\x03;\x20!\ + \n)\n\x04\x04\0\x02\x08\x12\x03=\x04\x1a\x1a\x1c\x20used\x20by:\x20P2PRE\ + QTYPE.LISTEN\n\n\r\n\x05\x04\0\x02\x08\x04\x12\x04=\x04;\"\n\x0c\n\x05\ + \x04\0\x02\x08\x05\x12\x03=\x04\x08\n\x0c\n\x05\x04\0\x02\x08\x01\x12\ + \x03=\t\x15\n\x0c\n\x05\x04\0\x02\x08\x03\x12\x03=\x18\x19\nX\n\x02\x04\ + \x01\x12\x04A\0I\x01\x1aL\x20P2PResponse\x20is\x20a\x20response\x20messa\ + ge\x20sent\x20in\x20response\x20to\x20a\x20P2PRequest\x20message\n\n\n\n\ + \x03\x04\x01\x01\x12\x03A\x08\x13\n\x0b\n\x04\x04\x01\x02\0\x12\x03B\x04\ + \x1f\n\r\n\x05\x04\x01\x02\0\x04\x12\x04B\x04A\x15\n\x0c\n\x05\x04\x01\ + \x02\0\x06\x12\x03B\x04\x0e\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03B\x0f\ + \x1a\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03B\x1d\x1e\n)\n\x04\x04\x01\x02\ + \x01\x12\x03D\x04\x1e\x1a\x1c\x20sent\x20by:\x20P2PREQTYPE.LISTEN\n\n\ + \x0c\n\x05\x04\x01\x02\x01\x04\x12\x03D\x04\x0c\n\x0c\n\x05\x04\x01\x02\ + \x01\x05\x12\x03D\r\x13\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03D\x14\x19\ + \n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03D\x1c\x1d\nU\n\x04\x04\x01\x02\ + \x02\x12\x03F\x04\x1a\x1aH\x20sent\x20by:\x20P2PREQTYPE.CLOSE\x20to\x20i\ + ndicate\x20the\x20number\x20of\x20connections\x20closed\n\n\r\n\x05\x04\ + \x01\x02\x02\x04\x12\x04F\x04D\x1e\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\ + \x03F\x04\t\n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x03F\n\x15\n\x0c\n\x05\ + \x04\x01\x02\x02\x03\x12\x03F\x18\x19\nO\n\x04\x04\x01\x02\x03\x12\x03H\ + \x04'\x1aB\x20sent\x20by:\x20P2PREQTYPE.LS\x20and\x20contains\x20all\x20\ + known\x20stream\x20information\n\n\x0c\n\x05\x04\x01\x02\x03\x04\x12\x03\ + H\x04\x0c\n\x0c\n\x05\x04\x01\x02\x03\x06\x12\x03H\r\x16\n\x0c\n\x05\x04\ + \x01\x02\x03\x01\x12\x03H\x17\"\n\x0c\n\x05\x04\x01\x02\x03\x03\x12\x03H\ + %&\nF\n\x02\x04\x02\x12\x04L\0R\x01\x1a:\x20P2PLsInfo\x20contains\x20inf\ + ormation\x20about\x20a\x20single\x20p2p\x20stream\n\n\n\n\x03\x04\x02\ + \x01\x12\x03L\x08\x11\n\x0b\n\x04\x04\x02\x02\0\x12\x03M\x04\x1c\n\r\n\ + \x05\x04\x02\x02\0\x04\x12\x04M\x04L\x13\n\x0c\n\x05\x04\x02\x02\0\x05\ + \x12\x03M\x04\n\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x03M\x0b\x17\n\x0c\n\ + \x05\x04\x02\x02\0\x03\x12\x03M\x1a\x1b\n\x0b\n\x04\x04\x02\x02\x01\x12\ + \x03N\x04\x1d\n\r\n\x05\x04\x02\x02\x01\x04\x12\x04N\x04M\x1c\n\x0c\n\ + \x05\x04\x02\x02\x01\x05\x12\x03N\x04\n\n\x0c\n\x05\x04\x02\x02\x01\x01\ + \x12\x03N\x0b\x18\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03N\x1b\x1c\n\x0b\ + \n\x04\x04\x02\x02\x02\x12\x03O\x04\x1d\n\r\n\x05\x04\x02\x02\x02\x04\ + \x12\x04O\x04N\x1d\n\x0c\n\x05\x04\x02\x02\x02\x05\x12\x03O\x04\n\n\x0c\ + \n\x05\x04\x02\x02\x02\x01\x12\x03O\x0b\x18\n\x0c\n\x05\x04\x02\x02\x02\ + \x03\x12\x03O\x1b\x1c\nP\n\x04\x04\x02\x02\x03\x12\x03Q\x04\x13\x1aC\x20\ + indicates\x20whether\x20or\x20not\x20this\x20is\x20a\x20p2p\x20listener\ + \x20or\x20local\x20listener\n\n\r\n\x05\x04\x02\x02\x03\x04\x12\x04Q\x04\ + O\x1d\n\x0c\n\x05\x04\x02\x02\x03\x05\x12\x03Q\x04\x08\n\x0c\n\x05\x04\ + \x02\x02\x03\x01\x12\x03Q\t\x0e\n\x0c\n\x05\x04\x02\x02\x03\x03\x12\x03Q\ + \x11\x12\nW\n\x02\x04\x03\x12\x04U\0X\x01\x1aK\x20GetPeersResponse\x20is\ + \x20a\x20response\x20to\x20GetPeers\x20containing\x20a\x20slice\x20of\ + \x20peer\x20IDs\n\n\n\n\x03\x04\x03\x01\x12\x03U\x08\x18\n\"\n\x04\x04\ + \x03\x02\0\x12\x03W\x04\x20\x1a\x15\x20a\x20slice\x20of\x20peer\x20IDs\n\ + \n\x0c\n\x05\x04\x03\x02\0\x04\x12\x03W\x04\x0c\n\x0c\n\x05\x04\x03\x02\ + \0\x05\x12\x03W\r\x13\n\x0c\n\x05\x04\x03\x02\0\x01\x12\x03W\x14\x1b\n\ + \x0c\n\x05\x04\x03\x02\0\x03\x12\x03W\x1e\x1f\nW\n\x02\x05\x01\x12\x04[\ + \0e\x01\x1aK\x20CONNMGMTREQTYPE\x20indicates\x20the\x20particular\x20Con\ + nMgmt\x20request\x20being\x20performed\n\n\n\n\x03\x05\x01\x01\x12\x03[\ + \x05\x14\n=\n\x04\x05\x01\x02\0\x12\x03]\x04\x13\x1a0\x20CM_CONNECT\x20i\ + s\x20used\x20to\x20connect\x20to\x20a\x20libp2p\x20peer\n\n\x0c\n\x05\ + \x05\x01\x02\0\x01\x12\x03]\x04\x0e\n\x0c\n\x05\x05\x01\x02\0\x02\x12\ + \x03]\x11\x12\nE\n\x04\x05\x01\x02\x01\x12\x03_\x04\x16\x1a8\x20CM_DISCO\ + NNECT\x20is\x20used\x20to\x20disconnect\x20from\x20a\x20libp2p\x20peer\n\ + \n\x0c\n\x05\x05\x01\x02\x01\x01\x12\x03_\x04\x11\n\x0c\n\x05\x05\x01\ + \x02\x01\x02\x12\x03_\x14\x15\n\x9f\x01\n\x04\x05\x01\x02\x02\x12\x03b\ + \x04\x12\x1a\x91\x01\x20CM_STATUS\x20is\x20used\x20to\x20return\x20statu\ + s\x20information\x20about\x20libp2p\x20peer\x20connections\n\x20useful\ + \x20for\x20determining\x20whether\x20or\x20not\x20we\x20are\x20connected\ + \x20to\x20someone\n\n\x0c\n\x05\x05\x01\x02\x02\x01\x12\x03b\x04\r\n\x0c\ + \n\x05\x05\x01\x02\x02\x02\x12\x03b\x10\x11\n<\n\x04\x05\x01\x02\x03\x12\ + \x03d\x04\x15\x1a/CM_GET_PEERS\x20is\x20used\x20to\x20return\x20all\x20k\ + nown\x20peers\n\n\x0c\n\x05\x05\x01\x02\x03\x01\x12\x03d\x04\x10\n\x0c\n\ + \x05\x05\x01\x02\x03\x02\x12\x03d\x13\x14\n\n\n\x02\x04\x04\x12\x04g\0p\ + \x01\n\n\n\x03\x04\x04\x01\x12\x03g\x08\x17\nU\n\x04\x04\x04\x02\0\x12\ + \x03i\x04$\x1aH\x20indicates\x20the\x20particular\x20connection\x20manag\ + ement\x20request\x20being\x20performed\n\n\r\n\x05\x04\x04\x02\0\x04\x12\ + \x04i\x04g\x19\n\x0c\n\x05\x04\x04\x02\0\x06\x12\x03i\x04\x13\n\x0c\n\ + \x05\x04\x04\x02\0\x01\x12\x03i\x14\x1f\n\x0c\n\x05\x04\x04\x02\0\x03\ + \x12\x03i\"#\n8\n\x04\x04\x04\x02\x01\x12\x03l\x04#\x1a+\x20a\x20list\ + \x20of\x20multiaddrs\n\x20sent\x20by:\x20CM_CONNECT\n\n\x0c\n\x05\x04\ + \x04\x02\x01\x04\x12\x03l\x04\x0c\n\x0c\n\x05\x04\x04\x02\x01\x05\x12\ + \x03l\r\x13\n\x0c\n\x05\x04\x04\x02\x01\x01\x12\x03l\x14\x1e\n\x0c\n\x05\ + \x04\x04\x02\x01\x03\x12\x03l!\"\nR\n\x04\x04\x04\x02\x02\x12\x03o\x04\ + \x20\x1aE\x20a\x20list\x20of\x20peer\x20IDs\n\x20sent\x20by:\x20CM_DISCO\ + NNECT,\x20CM_STATUS,\x20CM_GET_PEERS\n\n\x0c\n\x05\x04\x04\x02\x02\x04\ + \x12\x03o\x04\x0c\n\x0c\n\x05\x04\x04\x02\x02\x05\x12\x03o\r\x13\n\x0c\n\ + \x05\x04\x04\x02\x02\x01\x12\x03o\x14\x1b\n\x0c\n\x05\x04\x04\x02\x02\ + \x03\x12\x03o\x1e\x1f\n\n\n\x02\x04\x05\x12\x04r\0y\x01\n\n\n\x03\x04\ + \x05\x01\x12\x03r\x08\x18\nU\n\x04\x04\x05\x02\0\x12\x03t\x04$\x1aH\x20i\ + ndicates\x20the\x20particular\x20connection\x20management\x20request\x20\ + being\x20performed\n\n\r\n\x05\x04\x05\x02\0\x04\x12\x04t\x04r\x1a\n\x0c\ + \n\x05\x04\x05\x02\0\x06\x12\x03t\x04\x13\n\x0c\n\x05\x04\x05\x02\0\x01\ + \x12\x03t\x14\x1f\n\x0c\n\x05\x04\x05\x02\0\x03\x12\x03t\"#\n\x0b\n\x04\ + \x04\x05\x02\x01\x12\x03u\x04$\n\r\n\x05\x04\x05\x02\x01\x04\x12\x04u\ + \x04t$\n\x0c\n\x05\x04\x05\x02\x01\x06\x12\x03u\x04\x15\n\x0c\n\x05\x04\ + \x05\x02\x01\x01\x12\x03u\x16\x1f\n\x0c\n\x05\x04\x05\x02\x01\x03\x12\ + \x03u\"#\nh\n\x04\x04\x05\x02\x02\x12\x03w\x04+\x1a[\x20a\x20map\x20of\ + \x20the\x20peer\x20id,\x20and\x20a\x20custom\x20message\x20indicating\ + \x20success,\x20or\x20why\x20there\x20was\x20a\x20failure\n\n\r\n\x05\ + \x04\x05\x02\x02\x04\x12\x04w\x04u$\n\x0c\n\x05\x04\x05\x02\x02\x06\x12\ + \x03w\x04\x1f\n\x0c\n\x05\x04\x05\x02\x02\x01\x12\x03w\x20&\n\x0c\n\x05\ + \x04\x05\x02\x02\x03\x12\x03w)*\n\x0b\n\x04\x04\x05\x02\x03\x12\x03x\x04\ + \x20\n\x0c\n\x05\x04\x05\x02\x03\x04\x12\x03x\x04\x0c\n\x0c\n\x05\x04\ + \x05\x02\x03\x05\x12\x03x\r\x13\n\x0c\n\x05\x04\x05\x02\x03\x01\x12\x03x\ + \x14\x1b\n\x0c\n\x05\x04\x05\x02\x03\x03\x12\x03x\x1e\x1f\nP\n\x02\x04\ + \x06\x12\x05|\0\x81\x01\x01\x1aC\x20Contains\x20status\x20information\ + \x20about\x20a\x20particular\x20disconnect\x20attempt\n\n\n\n\x03\x04\ + \x06\x01\x12\x03|\x08\x16\n?\n\x04\x04\x06\x02\0\x12\x03~\x04\x1a\x1a2\ + \x20indicate\x20whether\x20or\x20not\x20we\x20actually\x20disconnected\n\ + \n\r\n\x05\x04\x06\x02\0\x04\x12\x04~\x04|\x18\n\x0c\n\x05\x04\x06\x02\0\ + \x05\x12\x03~\x04\x08\n\x0c\n\x05\x04\x06\x02\0\x01\x12\x03~\t\x15\n\x0c\ + \n\x05\x04\x06\x02\0\x03\x12\x03~\x18\x19\nD\n\x04\x04\x06\x02\x01\x12\ + \x04\x80\x01\x04\x16\x1a6\x20if\x20disconnected\x20is\x20false,\x20the\ + \x20reason\x20why\x20it\x20is\x20false\n\n\x0e\n\x05\x04\x06\x02\x01\x04\ + \x12\x05\x80\x01\x04~\x1a\n\r\n\x05\x04\x06\x02\x01\x05\x12\x04\x80\x01\ + \x04\n\n\r\n\x05\x04\x06\x02\x01\x01\x12\x04\x80\x01\x0b\x11\n\r\n\x05\ + \x04\x06\x02\x01\x03\x12\x04\x80\x01\x14\x15\nU\n\x02\x05\x02\x12\x06\ + \x84\x01\0\x89\x01\x01\x1aG\x20EXTRASREQTYPE\x20indicates\x20the\x20part\ + icular\x20Extras\x20request\x20being\x20performed\n\n\x0b\n\x03\x05\x02\ + \x01\x12\x04\x84\x01\x05\x12\nL\n\x04\x05\x02\x02\0\x12\x04\x86\x01\x04\ + \x12\x1a>\x20EX_ENABLE\x20is\x20used\x20to\x20enable\x20a\x20particular\ + \x20node\x20extras\x20feature\n\n\r\n\x05\x05\x02\x02\0\x01\x12\x04\x86\ + \x01\x04\r\n\r\n\x05\x05\x02\x02\0\x02\x12\x04\x86\x01\x10\x11\nN\n\x04\ + \x05\x02\x02\x01\x12\x04\x88\x01\x04\x13\x1a@\x20EX_DISABLE\x20is\x20use\ + d\x20to\x20disable\x20a\x20particular\x20node\x20extras\x20feature\n\n\r\ + \n\x05\x05\x02\x02\x01\x01\x12\x04\x88\x01\x04\x0e\n\r\n\x05\x05\x02\x02\ + \x01\x02\x12\x04\x88\x01\x11\x12\n;\n\x02\x05\x03\x12\x06\x8c\x01\0\x95\ + \x01\x01\x1a-\x20EXTRASTYPE\x20denotes\x20a\x20particular\x20extras\x20t\ + ype\n\n\x0b\n\x03\x05\x03\x01\x12\x04\x8c\x01\x05\x0f\n0\n\x04\x05\x03\ + \x02\0\x12\x04\x8e\x01\x04\x11\x1a\"\x20IDENTIFY\x20is\x20the\x20identif\ + y\x20service\n\n\r\n\x05\x05\x03\x02\0\x01\x12\x04\x8e\x01\x04\x0c\n\r\n\ + \x05\x05\x03\x02\0\x02\x12\x04\x8e\x01\x0f\x10\n2\n\x04\x05\x03\x02\x01\ + \x12\x04\x90\x01\x04\x0f\x1a$\x20PUBSUB\x20is\x20the\x20libp2p\x20pubsub\ + \x20system\n\n\r\n\x05\x05\x03\x02\x01\x01\x12\x04\x90\x01\x04\n\n\r\n\ + \x05\x05\x03\x02\x01\x02\x12\x04\x90\x01\r\x0e\n7\n\x04\x05\x03\x02\x02\ + \x12\x04\x92\x01\x04\x12\x1a)\x20DISCOVERY\x20is\x20a\x20libp2p\x20disco\ + very\x20service\n\n\r\n\x05\x05\x03\x02\x02\x01\x12\x04\x92\x01\x04\r\n\ + \r\n\x05\x05\x03\x02\x02\x02\x12\x04\x92\x01\x10\x11\n?\n\x04\x05\x03\ + \x02\x03\x12\x04\x94\x01\x04\r\x1a1\x20MDNS\x20is\x20used\x20to\x20disco\ + ver\x20libp2p\x20hosts\x20over\x20mdns\n\n\r\n\x05\x05\x03\x02\x03\x01\ + \x12\x04\x94\x01\x04\x08\n\r\n\x05\x05\x03\x02\x03\x02\x12\x04\x94\x01\ + \x0b\x0c\n\x0c\n\x02\x04\x07\x12\x06\x97\x01\0\x9c\x01\x01\n\x0b\n\x03\ + \x04\x07\x01\x12\x04\x97\x01\x08\x15\n5\n\x04\x04\x07\x02\0\x12\x04\x99\ + \x01\x04\"\x1a'\x20indicates\x20the\x20request\x20being\x20performed\n\n\ + \x0f\n\x05\x04\x07\x02\0\x04\x12\x06\x99\x01\x04\x97\x01\x17\n\r\n\x05\ + \x04\x07\x02\0\x06\x12\x04\x99\x01\x04\x11\n\r\n\x05\x04\x07\x02\0\x01\ + \x12\x04\x99\x01\x12\x1d\n\r\n\x05\x04\x07\x02\0\x03\x12\x04\x99\x01\x20\ + !\nD\n\x04\x04\x07\x02\x01\x12\x04\x9b\x01\x04!\x1a6\x20indicates\x20the\ + \x20extras\x20feature\x20this\x20request\x20applies\x20to\n\n\x0f\n\x05\ + \x04\x07\x02\x01\x04\x12\x06\x9b\x01\x04\x99\x01\"\n\r\n\x05\x04\x07\x02\ + \x01\x06\x12\x04\x9b\x01\x04\x0e\n\r\n\x05\x04\x07\x02\x01\x01\x12\x04\ + \x9b\x01\x0f\x1c\n\r\n\x05\x04\x07\x02\x01\x03\x12\x04\x9b\x01\x1f\x20\n\ + A\n\x02\x05\x04\x12\x06\xa0\x01\0\xb6\x01\x01\x1a3\x20BSREQTYPE\x20is\ + \x20a\x20particular\x20blockstore\x20request\x20type\n\n\x0b\n\x03\x05\ + \x04\x01\x12\x04\xa0\x01\x05\x0e\nB\n\x04\x05\x04\x02\0\x12\x04\xa2\x01\ + \x04\x12\x1a4\x20BS_DELETE\x20is\x20used\x20to\x20delete\x20a\x20block\ + \x20from\x20the\x20store\n\n\r\n\x05\x05\x04\x02\0\x01\x12\x04\xa2\x01\ + \x04\r\n\r\n\x05\x05\x04\x02\0\x02\x12\x04\xa2\x01\x10\x11\nA\n\x04\x05\ + \x04\x02\x01\x12\x04\xa4\x01\x04\x0f\x1a3\x20BS_PUT\x20is\x20used\x20to\ + \x20put\x20a\x20single\x20block\x20in\x20the\x20store\n\n\r\n\x05\x05\ + \x04\x02\x01\x01\x12\x04\xa4\x01\x04\n\n\r\n\x05\x05\x04\x02\x01\x02\x12\ + \x04\xa4\x01\r\x0e\nC\n\x04\x05\x04\x02\x02\x12\x04\xa6\x01\x04\x14\x1a5\ + \x20BS_PUT_MANY\x20is\x20used\x20to\x20put\x20many\x20blocks\x20in\x20th\ + e\x20store\n\n\r\n\x05\x05\x04\x02\x02\x01\x12\x04\xa6\x01\x04\x0f\n\r\n\ + \x05\x05\x04\x02\x02\x02\x12\x04\xa6\x01\x12\x13\n<\n\x04\x05\x04\x02\ + \x03\x12\x04\xa8\x01\x04\x0f\x1a.\x20BS_GET\x20is\x20used\x20to\x20get\ + \x20a\x20block\x20from\x20the\x20store\n\n\r\n\x05\x05\x04\x02\x03\x01\ + \x12\x04\xa8\x01\x04\n\n\r\n\x05\x05\x04\x02\x03\x02\x12\x04\xa8\x01\r\ + \x0e\nE\n\x04\x05\x04\x02\x04\x12\x04\xaa\x01\x04\x14\x1a7\x20BS_GET_MAN\ + Y\x20is\x20used\x20to\x20get\x20many\x20blocks\x20from\x20the\x20store\n\ + \n\r\n\x05\x05\x04\x02\x04\x01\x12\x04\xaa\x01\x04\x0f\n\r\n\x05\x05\x04\ + \x02\x04\x02\x12\x04\xaa\x01\x12\x13\n~\n\x04\x05\x04\x02\x05\x12\x04\ + \xad\x01\x04\x13\x1ap\x20BS_GET_ALL\x20is\x20used\x20to\x20retrieve\x20a\ + ll\x20blocks\x20from\x20the\x20store\n\x20It\x20is\x20the\x20gRPC\x20equ\ + ivalent\x20of\x20Blockstore::AllKeysChan\n\n\r\n\x05\x05\x04\x02\x05\x01\ + \x12\x04\xad\x01\x04\x0e\n\r\n\x05\x05\x04\x02\x05\x02\x12\x04\xad\x01\ + \x11\x12\nS\n\x04\x05\x04\x02\x06\x12\x04\xaf\x01\x04\x15\x1aE\x20BS_GET\ + _STATS\x20is\x20used\x20to\x20retrieve\x20statistics\x20about\x20individ\ + ual\x20blocks\n\n\r\n\x05\x05\x04\x02\x06\x01\x12\x04\xaf\x01\x04\x10\n\ + \r\n\x05\x05\x04\x02\x06\x02\x12\x04\xaf\x01\x13\x14\nK\n\x04\x05\x04\ + \x02\x07\x12\x04\xb1\x01\x04\x0f\x1a=\x20BS_HAS\x20is\x20used\x20to\x20r\ + etrieve\x20whether\x20or\x20not\x20we\x20have\x20the\x20block\n\n\r\n\ + \x05\x05\x04\x02\x07\x01\x12\x04\xb1\x01\x04\n\n\r\n\x05\x05\x04\x02\x07\ + \x02\x12\x04\xb1\x01\r\x0e\nE\n\x04\x05\x04\x02\x08\x12\x04\xb3\x01\x04\ + \x1f\x1a7\x20BS_HASH_ON_READ_ENABLE\x20is\x20used\x20to\x20enable\x20has\ + h\x20on\x20read\n\n\r\n\x05\x05\x04\x02\x08\x01\x12\x04\xb3\x01\x04\x1a\ + \n\r\n\x05\x05\x04\x02\x08\x02\x12\x04\xb3\x01\x1d\x1e\nG\n\x04\x05\x04\ + \x02\t\x12\x04\xb5\x01\x04\x20\x1a9\x20BS_HASH_ON_READ_DISABLE\x20is\x20\ + used\x20to\x20disable\x20hash\x20on\x20read\n\n\r\n\x05\x05\x04\x02\t\ + \x01\x12\x04\xb5\x01\x04\x1b\n\r\n\x05\x05\x04\x02\t\x02\x12\x04\xb5\x01\ + \x1e\x1f\n=\n\x02\x05\x05\x12\x06\xb9\x01\0\xbe\x01\x01\x1a/\x20BSREQOPT\ + S\x20are\x20options\x20for\x20blockstore\x20requests\n\n\x0b\n\x03\x05\ + \x05\x01\x12\x04\xb9\x01\x05\x0e\n=\n\x04\x05\x05\x02\0\x12\x04\xbb\x01\ + \x04\x10\x1a/\x20DEFAULT\x20indicates\x20to\x20use\x20the\x20default\x20\ + settings\n\n\r\n\x05\x05\x05\x02\0\x01\x12\x04\xbb\x01\x04\x0b\n\r\n\x05\ + \x05\x05\x02\0\x02\x12\x04\xbb\x01\x0e\x0f\nY\n\x04\x05\x05\x02\x01\x12\ + \x04\xbd\x01\x04\x11\x1aK\x20BS_FORCE\x20indicates\x20to\x20force\x20the\ + \x20request\x20regardless\x20of\x20any\x20possible\x20issues\n\n\r\n\x05\ + \x05\x05\x02\x01\x01\x12\x04\xbd\x01\x04\x0c\n\r\n\x05\x05\x05\x02\x01\ + \x02\x12\x04\xbd\x01\x0f\x10\nJ\n\x02\x04\x08\x12\x06\xc1\x01\0\xdb\x01\ + \x01\x1a<\x20BlockstoreRequest\x20is\x20a\x20message\x20used\x20to\x20co\ + ntrol\x20blockstores\n\n\x0b\n\x03\x04\x08\x01\x12\x04\xc1\x01\x08\x19\n\ + A\n\x04\x04\x08\x02\0\x12\x04\xc3\x01\x04\x1e\x1a3\x20\x20indicates\x20t\ + he\x20particular\x20request\x20type\x20being\x20made\n\n\x0f\n\x05\x04\ + \x08\x02\0\x04\x12\x06\xc3\x01\x04\xc1\x01\x1b\n\r\n\x05\x04\x08\x02\0\ + \x06\x12\x04\xc3\x01\x04\r\n\r\n\x05\x04\x08\x02\0\x01\x12\x04\xc3\x01\ + \x0e\x19\n\r\n\x05\x04\x08\x02\0\x03\x12\x04\xc3\x01\x1c\x1d\n)\n\x04\ + \x04\x08\x02\x01\x12\x04\xc5\x01\x04#\x1a\x1b\x20optional\x20request\x20\ + settings\n\n\r\n\x05\x04\x08\x02\x01\x04\x12\x04\xc5\x01\x04\x0c\n\r\n\ + \x05\x04\x08\x02\x01\x06\x12\x04\xc5\x01\r\x16\n\r\n\x05\x04\x08\x02\x01\ + \x01\x12\x04\xc5\x01\x17\x1e\n\r\n\x05\x04\x08\x02\x01\x03\x12\x04\xc5\ + \x01!\"\nU\n\x04\x04\x08\x02\x02\x12\x04\xc8\x01\x04\x1d\x1aG\x20cids\ + \x20of\x20blocks\n\x20sent\x20by:\x20BS_DELETE,\x20BS_GET,\x20BS_GET_MAN\ + Y,\x20BS_GET_STATS\n\n\r\n\x05\x04\x08\x02\x02\x04\x12\x04\xc8\x01\x04\ + \x0c\n\r\n\x05\x04\x08\x02\x02\x05\x12\x04\xc8\x01\r\x13\n\r\n\x05\x04\ + \x08\x02\x02\x01\x12\x04\xc8\x01\x14\x18\n\r\n\x05\x04\x08\x02\x02\x03\ + \x12\x04\xc8\x01\x1b\x1c\nE\n\x04\x04\x08\x02\x03\x12\x04\xcb\x01\x04\ + \x1c\x1a7\x20the\x20data\x20we\x20are\x20putting\n\x20sent\x20by:\x20BS_\ + PUT,\x20BS_PUT_MANY\n\n\r\n\x05\x04\x08\x02\x03\x04\x12\x04\xcb\x01\x04\ + \x0c\n\r\n\x05\x04\x08\x02\x03\x05\x12\x04\xcb\x01\r\x12\n\r\n\x05\x04\ + \x08\x02\x03\x01\x12\x04\xcb\x01\x13\x17\n\r\n\x05\x04\x08\x02\x03\x03\ + \x12\x04\xcb\x01\x1a\x1b\nl\n\x04\x04\x08\x02\x04\x12\x04\xce\x01\x04\ + \x1a\x1a^\x20the\x20cid\x20version\x20to\x20use\x20when\x20constructing\ + \x20blocks,\x20default\x20is\x20v1\n\x20sent\x20by:\x20BS_PUT,\x20BS_PUT\ + _MANY\n\n\x0f\n\x05\x04\x08\x02\x04\x04\x12\x06\xce\x01\x04\xcb\x01\x1c\ + \n\r\n\x05\x04\x08\x02\x04\x05\x12\x04\xce\x01\x04\n\n\r\n\x05\x04\x08\ + \x02\x04\x01\x12\x04\xce\x01\x0b\x15\n\r\n\x05\x04\x08\x02\x04\x03\x12\ + \x04\xce\x01\x18\x19\nt\n\x04\x04\x08\x02\x05\x12\x04\xd1\x01\x04\x18\ + \x1af\x20the\x20hash\x20function\x20to\x20use\x20when\x20constructing\ + \x20blocks,\x20default\x20is\x20sha2-256\n\x20sent\x20by:\x20BS_PUT,\x20\ + BS_PUT_MANY\n\n\x0f\n\x05\x04\x08\x02\x05\x04\x12\x06\xd1\x01\x04\xce\ + \x01\x1a\n\r\n\x05\x04\x08\x02\x05\x05\x12\x04\xd1\x01\x04\n\n\r\n\x05\ + \x04\x08\x02\x05\x01\x12\x04\xd1\x01\x0b\x13\n\r\n\x05\x04\x08\x02\x05\ + \x03\x12\x04\xd1\x01\x16\x17\n\xaf\x02\n\x04\x04\x08\x02\x06\x12\x04\xd6\ + \x01\x04\x15\x1a\xa0\x02\x20reference\x20ID\x20to\x20mark\x20the\x20bloc\ + ks\x20of\x20this\x20operation\x20with\n\x20when\x20sent\x20by\x20BS_PUT,\ + \x20BS_PUT_MANY:\x20only\x20put\x20if\x20the\x20id\x20is\x20not\x20marke\ + d\x20on\x20block,\x20otherwise\x20noop\n\x20when\x20sent\x20by\x20BS_GET\ + ,\x20BS_GET_MANY:\x20only\x20get\x20if\x20the\x20id\x20is\x20marked\x20o\ + n\x20block\n\x20when\x20sent\x20by\x20BS_DELETE:\x20only\x20delete\x20if\ + \x20the\x20id\x20is\x20marked\x20on\x20block\n\n\x0f\n\x05\x04\x08\x02\ + \x06\x04\x12\x06\xd6\x01\x04\xd1\x01\x18\n\r\n\x05\x04\x08\x02\x06\x05\ + \x12\x04\xd6\x01\x04\n\n\r\n\x05\x04\x08\x02\x06\x01\x12\x04\xd6\x01\x0b\ + \x10\n\r\n\x05\x04\x08\x02\x06\x03\x12\x04\xd6\x01\x13\x14\n:\n\x04\x04\ + \x08\x02\x07\x12\x04\xd8\x01\x04\x19\x1a,\x20if\x20refID\x20is\x20set,\ + \x20allows\x20progressive\x20upload\n\n\x0f\n\x05\x04\x08\x02\x07\x04\ + \x12\x06\xd8\x01\x04\xd6\x01\x15\n\r\n\x05\x04\x08\x02\x07\x05\x12\x04\ + \xd8\x01\x04\x08\n\r\n\x05\x04\x08\x02\x07\x01\x12\x04\xd8\x01\t\x14\n\r\ + \n\x05\x04\x08\x02\x07\x03\x12\x04\xd8\x01\x17\x18\nO\n\x04\x04\x08\x02\ + \x08\x12\x04\xda\x01\x04\x16\x1aA\x20if\x20refID\x20is\x20set,\x20remove\ + \x20the\x20any\x20existing\x20blocks\x20with\x20same\x20refID\n\n\x0f\n\ + \x05\x04\x08\x02\x08\x04\x12\x06\xda\x01\x04\xd8\x01\x19\n\r\n\x05\x04\ + \x08\x02\x08\x05\x12\x04\xda\x01\x04\x08\n\r\n\x05\x04\x08\x02\x08\x01\ + \x12\x04\xda\x01\t\x10\n\r\n\x05\x04\x08\x02\x08\x03\x12\x04\xda\x01\x13\ + \x15\nG\n\x02\x04\t\x12\x06\xde\x01\0\xeb\x01\x01\x1a9\x20BlockstoreResp\ + onse\x20is\x20a\x20response\x20to\x20a\x20BlockstoreRequest\n\n\x0b\n\ + \x03\x04\t\x01\x12\x04\xde\x01\x08\x1a\n@\n\x04\x04\t\x02\0\x12\x04\xe0\ \x01\x04\x1e\x1a2\x20indicates\x20the\x20particular\x20request\x20type\ - \x20being\x20made\n\n\x0f\n\x05\x04\t\x02\0\x04\x12\x06\xd7\x01\x04\xd5\ - \x01\x1c\n\r\n\x05\x04\t\x02\0\x06\x12\x04\xd7\x01\x04\r\n\r\n\x05\x04\t\ - \x02\0\x01\x12\x04\xd7\x01\x0e\x19\n\r\n\x05\x04\t\x02\0\x03\x12\x04\xd7\ - \x01\x1c\x1d\n\xf7\x02\n\x04\x04\t\x02\x01\x12\x04\xe1\x01\x04\x1e\x1a\ + \x20being\x20made\n\n\x0f\n\x05\x04\t\x02\0\x04\x12\x06\xe0\x01\x04\xde\ + \x01\x1c\n\r\n\x05\x04\t\x02\0\x06\x12\x04\xe0\x01\x04\r\n\r\n\x05\x04\t\ + \x02\0\x01\x12\x04\xe0\x01\x0e\x19\n\r\n\x05\x04\t\x02\0\x03\x12\x04\xe0\ + \x01\x1c\x1d\n\xf7\x02\n\x04\x04\t\x02\x01\x12\x04\xea\x01\x04\x1e\x1a\ \xe8\x02\x20a\x20copy\x20of\x20blocks\x20from\x20the\x20blockstore\n\x20\ sent\x20by:\x20BS_PUT,\x20BS_PUT_MANY,\x20BS_GET,\x20BS_GET_MANY,\x20BS_\ GET_STATS,\x20BS_GET_ALL\n\n\x20in\x20the\x20case\x20of\x20BS_PUT,\x20an\ @@ -6319,271 +6443,299 @@ static file_descriptor_proto_data: &'static [u8] = b"\ s\n\n\x20in\x20the\x20case\x20of\x20BS_GET_STATS\x20only\x20the\x20cid,\ \x20and\x20size\x20params\n\x20will\x20be\x20filled\x20out,\x20since\x20\ we\x20are\x20just\x20interested\x20in\x20the\x20size\n\n\r\n\x05\x04\t\ - \x02\x01\x04\x12\x04\xe1\x01\x04\x0c\n\r\n\x05\x04\t\x02\x01\x06\x12\x04\ - \xe1\x01\r\x12\n\r\n\x05\x04\t\x02\x01\x01\x12\x04\xe1\x01\x13\x19\n\r\n\ - \x05\x04\t\x02\x01\x03\x12\x04\xe1\x01\x1c\x1d\n\x0c\n\x02\x04\n\x12\x06\ - \xe4\x01\0\xed\x01\x01\n\x0b\n\x03\x04\n\x01\x12\x04\xe4\x01\x08\r\n2\n\ - \x04\x04\n\x02\0\x12\x04\xe6\x01\x04\x13\x1a$\x20cid\x20is\x20the\x20ide\ - ntifier\x20of\x20the\x20block\n\n\x0f\n\x05\x04\n\x02\0\x04\x12\x06\xe6\ - \x01\x04\xe4\x01\x0f\n\r\n\x05\x04\n\x02\0\x05\x12\x04\xe6\x01\x04\n\n\r\ - \n\x05\x04\n\x02\0\x01\x12\x04\xe6\x01\x0b\x0e\n\r\n\x05\x04\n\x02\0\x03\ - \x12\x04\xe6\x01\x11\x12\n8\n\x04\x04\n\x02\x01\x12\x04\xe8\x01\x04\x13\ + \x02\x01\x04\x12\x04\xea\x01\x04\x0c\n\r\n\x05\x04\t\x02\x01\x06\x12\x04\ + \xea\x01\r\x12\n\r\n\x05\x04\t\x02\x01\x01\x12\x04\xea\x01\x13\x19\n\r\n\ + \x05\x04\t\x02\x01\x03\x12\x04\xea\x01\x1c\x1d\n\x0c\n\x02\x04\n\x12\x06\ + \xed\x01\0\xf6\x01\x01\n\x0b\n\x03\x04\n\x01\x12\x04\xed\x01\x08\r\n2\n\ + \x04\x04\n\x02\0\x12\x04\xef\x01\x04\x13\x1a$\x20cid\x20is\x20the\x20ide\ + ntifier\x20of\x20the\x20block\n\n\x0f\n\x05\x04\n\x02\0\x04\x12\x06\xef\ + \x01\x04\xed\x01\x0f\n\r\n\x05\x04\n\x02\0\x05\x12\x04\xef\x01\x04\n\n\r\ + \n\x05\x04\n\x02\0\x01\x12\x04\xef\x01\x0b\x0e\n\r\n\x05\x04\n\x02\0\x03\ + \x12\x04\xef\x01\x11\x12\n8\n\x04\x04\n\x02\x01\x12\x04\xf1\x01\x04\x13\ \x1a*\x20data\x20is\x20the\x20actual\x20contents\x20of\x20the\x20block\n\ - \n\x0f\n\x05\x04\n\x02\x01\x04\x12\x06\xe8\x01\x04\xe6\x01\x13\n\r\n\x05\ - \x04\n\x02\x01\x05\x12\x04\xe8\x01\x04\t\n\r\n\x05\x04\n\x02\x01\x01\x12\ - \x04\xe8\x01\n\x0e\n\r\n\x05\x04\n\x02\x01\x03\x12\x04\xe8\x01\x11\x12\n\ - \x89\x01\n\x04\x04\n\x02\x02\x12\x04\xec\x01\x04\x13\x1a{\x20size\x20of\ + \n\x0f\n\x05\x04\n\x02\x01\x04\x12\x06\xf1\x01\x04\xef\x01\x13\n\r\n\x05\ + \x04\n\x02\x01\x05\x12\x04\xf1\x01\x04\t\n\r\n\x05\x04\n\x02\x01\x01\x12\ + \x04\xf1\x01\n\x0e\n\r\n\x05\x04\n\x02\x01\x03\x12\x04\xf1\x01\x11\x12\n\ + \x8a\x01\n\x04\x04\n\x02\x02\x12\x04\xf5\x01\x04\x13\x1a|\x20size\x20of\ \x20the\x20block,\x20only\x20filled\x20out\x20by\x20BS_GET_STATS\n\x20si\ - nce\x20if\x20we\x20just\x20want\x20stats,\x20we\x20dont\x20want\x20to\ + nce\x20if\x20we\x20just\x20want\x20stats,\x20we\x20don't\x20want\x20to\ \x20\n\x20retrieve\x20all\x20the\x20data.\n\n\x0f\n\x05\x04\n\x02\x02\ - \x04\x12\x06\xec\x01\x04\xe8\x01\x13\n\r\n\x05\x04\n\x02\x02\x05\x12\x04\ - \xec\x01\x04\t\n\r\n\x05\x04\n\x02\x02\x01\x12\x04\xec\x01\n\x0e\n\r\n\ - \x05\x04\n\x02\x02\x03\x12\x04\xec\x01\x11\x12\nR\n\x02\x05\x06\x12\x06\ - \xf0\x01\0\xfd\x01\x01\x1aD\x20DAGREQTYPE\x20indicates\x20the\x20particu\ + \x04\x12\x06\xf5\x01\x04\xf1\x01\x13\n\r\n\x05\x04\n\x02\x02\x05\x12\x04\ + \xf5\x01\x04\t\n\r\n\x05\x04\n\x02\x02\x01\x12\x04\xf5\x01\n\x0e\n\r\n\ + \x05\x04\n\x02\x02\x03\x12\x04\xf5\x01\x11\x12\nR\n\x02\x05\x06\x12\x06\ + \xf9\x01\0\x88\x02\x01\x1aD\x20DAGREQTYPE\x20indicates\x20the\x20particu\ lar\x20DagAPI\x20request\x20being\x20performed\n\n\x0b\n\x03\x05\x06\x01\ - \x12\x04\xf0\x01\x05\x0f\n7\n\x04\x05\x06\x02\0\x12\x04\xf2\x01\x04\x10\ + \x12\x04\xf9\x01\x05\x0f\n7\n\x04\x05\x06\x02\0\x12\x04\xfb\x01\x04\x10\ \x1a)\x20DAG_PUT\x20is\x20used\x20to\x20add\x20new\x20IPLD\x20objects\n\ - \n\r\n\x05\x05\x06\x02\0\x01\x12\x04\xf2\x01\x04\x0b\n\r\n\x05\x05\x06\ - \x02\0\x02\x12\x04\xf2\x01\x0e\x0f\n<\n\x04\x05\x06\x02\x01\x12\x04\xf4\ + \n\r\n\x05\x05\x06\x02\0\x01\x12\x04\xfb\x01\x04\x0b\n\r\n\x05\x05\x06\ + \x02\0\x02\x12\x04\xfb\x01\x0e\x0f\n<\n\x04\x05\x06\x02\x01\x12\x04\xfd\ \x01\x04\x10\x1a.\x20DAG_GET\x20is\x20used\x20to\x20retrieve\x20IPLD\x20\ - object\x20data\n\n\r\n\x05\x05\x06\x02\x01\x01\x12\x04\xf4\x01\x04\x0b\n\ - \r\n\x05\x05\x06\x02\x01\x02\x12\x04\xf4\x01\x0e\x0f\nE\n\x04\x05\x06\ - \x02\x02\x12\x04\xf6\x01\x04\x15\x1a7\x20DAG_NEW_NODE\x20is\x20used\x20t\ + object\x20data\n\n\r\n\x05\x05\x06\x02\x01\x01\x12\x04\xfd\x01\x04\x0b\n\ + \r\n\x05\x05\x06\x02\x01\x02\x12\x04\xfd\x01\x0e\x0f\nE\n\x04\x05\x06\ + \x02\x02\x12\x04\xff\x01\x04\x15\x1a7\x20DAG_NEW_NODE\x20is\x20used\x20t\ o\x20create\x20a\x20new\x20IPLD\x20node\x20object\n\n\r\n\x05\x05\x06\ - \x02\x02\x01\x12\x04\xf6\x01\x04\x10\n\r\n\x05\x05\x06\x02\x02\x02\x12\ - \x04\xf6\x01\x13\x14\nI\n\x04\x05\x06\x02\x03\x12\x04\xf8\x01\x04\x16\ + \x02\x02\x01\x12\x04\xff\x01\x04\x10\n\r\n\x05\x05\x06\x02\x02\x02\x12\ + \x04\xff\x01\x13\x14\nI\n\x04\x05\x06\x02\x03\x12\x04\x81\x02\x04\x16\ \x1a;\x20DAG_ADD_LINKS\x20is\x20used\x20to\x20add\x20links\x20to\x20an\ - \x20IPLD\x20node\x20object\n\n\r\n\x05\x05\x06\x02\x03\x01\x12\x04\xf8\ - \x01\x04\x11\n\r\n\x05\x05\x06\x02\x03\x02\x12\x04\xf8\x01\x14\x15\n\\\n\ - \x04\x05\x06\x02\x04\x12\x04\xfa\x01\x04\x16\x1aN\x20DAG_GET_LINKS\x20is\ + \x20IPLD\x20node\x20object\n\n\r\n\x05\x05\x06\x02\x03\x01\x12\x04\x81\ + \x02\x04\x11\n\r\n\x05\x05\x06\x02\x03\x02\x12\x04\x81\x02\x14\x15\n\\\n\ + \x04\x05\x06\x02\x04\x12\x04\x83\x02\x04\x16\x1aN\x20DAG_GET_LINKS\x20is\ \x20used\x20to\x20retrieve\x20all\x20links\x20contained\x20in\x20an\x20I\ - PLD\x20node\x20object\n\n\r\n\x05\x05\x06\x02\x04\x01\x12\x04\xfa\x01\ - \x04\x11\n\r\n\x05\x05\x06\x02\x04\x02\x12\x04\xfa\x01\x14\x15\nG\n\x04\ - \x05\x06\x02\x05\x12\x04\xfc\x01\x04\x11\x1a9\x20DAG_STAT\x20is\x20used\ + PLD\x20node\x20object\n\n\r\n\x05\x05\x06\x02\x04\x01\x12\x04\x83\x02\ + \x04\x11\n\r\n\x05\x05\x06\x02\x04\x02\x12\x04\x83\x02\x14\x15\nG\n\x04\ + \x05\x06\x02\x05\x12\x04\x85\x02\x04\x11\x1a9\x20DAG_STAT\x20is\x20used\ \x20to\x20retrieve\x20ipld.NodeStats\x20information\n\n\r\n\x05\x05\x06\ - \x02\x05\x01\x12\x04\xfc\x01\x04\x0c\n\r\n\x05\x05\x06\x02\x05\x02\x12\ - \x04\xfc\x01\x0f\x10\nA\n\x02\x04\x0b\x12\x06\x80\x02\0\x99\x02\x01\x1a3\ - \x20Used\x20to\x20submit\x20a\x20request\x20to\x20Dag\x20or\x20DagStream\ - \x20RPCs\n\n\x0b\n\x03\x04\x0b\x01\x12\x04\x80\x02\x08\x12\nQ\n\x04\x04\ - \x0b\x02\0\x12\x04\x83\x02\x04\x1f\x1aC\x20indicates\x20the\x20request\ - \x20being\x20performed\n\x20sent\x20by:\x20all\x20request\x20types\n\n\ - \x0f\n\x05\x04\x0b\x02\0\x04\x12\x06\x83\x02\x04\x80\x02\x14\n\r\n\x05\ - \x04\x0b\x02\0\x06\x12\x04\x83\x02\x04\x0e\n\r\n\x05\x04\x0b\x02\0\x01\ - \x12\x04\x83\x02\x0f\x1a\n\r\n\x05\x04\x0b\x02\0\x03\x12\x04\x83\x02\x1d\ - \x1e\nL\n\x04\x04\x0b\x02\x01\x12\x04\x86\x02\x04\x13\x1a>\x20data\x20th\ - at\x20we\x20will\x20be\x20storing\n\x20sent\x20by:\x20DAG_PUT,\x20DAG_NE\ - W_NODE\n\n\x0f\n\x05\x04\x0b\x02\x01\x04\x12\x06\x86\x02\x04\x83\x02\x1f\ - \n\r\n\x05\x04\x0b\x02\x01\x05\x12\x04\x86\x02\x04\t\n\r\n\x05\x04\x0b\ - \x02\x01\x01\x12\x04\x86\x02\n\x0e\n\r\n\x05\x04\x0b\x02\x01\x03\x12\x04\ - \x86\x02\x11\x12\nX\n\x04\x04\x0b\x02\x02\x12\x04\x89\x02\x04\x1e\x1aJ\ - \x20the\x20object\x20encoding\x20type\x20(raw,\x20cbor,\x20protobuf,\x20\ - etc...)\n\x20sent\x20by:\x20DAG_PUT\n\n\x0f\n\x05\x04\x0b\x02\x02\x04\ - \x12\x06\x89\x02\x04\x86\x02\x13\n\r\n\x05\x04\x0b\x02\x02\x05\x12\x04\ - \x89\x02\x04\n\n\r\n\x05\x04\x0b\x02\x02\x01\x12\x04\x89\x02\x0b\x19\n\r\ - \n\x05\x04\x0b\x02\x02\x03\x12\x04\x89\x02\x1c\x1d\nX\n\x04\x04\x0b\x02\ - \x03\x12\x04\x8c\x02\x04#\x1aJ\x20the\x20serialization\x20format\x20(raw\ - ,\x20cbor,\x20protobuf,\x20etc...)\n\x20sent\x20by:\x20DAG_PUT\n\n\x0f\n\ - \x05\x04\x0b\x02\x03\x04\x12\x06\x8c\x02\x04\x89\x02\x1e\n\r\n\x05\x04\ - \x0b\x02\x03\x05\x12\x04\x8c\x02\x04\n\n\r\n\x05\x04\x0b\x02\x03\x01\x12\ - \x04\x8c\x02\x0b\x1e\n\r\n\x05\x04\x0b\x02\x03\x03\x12\x04\x8c\x02!\"\nw\ - \n\x04\x04\x0b\x02\x04\x12\x04\x8f\x02\x04\x18\x1ai\x20the\x20hash\x20fu\ - nction\x20to\x20to\x20use\x20(sha2-256,\x20sha3-512,\x20etc...)\n\x20sen\ - t\x20by:\x20DAG_PUT,\x20DAG_NEW_NODE,\x20DAG_ADD_LINKS\n\n\x0f\n\x05\x04\ - \x0b\x02\x04\x04\x12\x06\x8f\x02\x04\x8c\x02#\n\r\n\x05\x04\x0b\x02\x04\ - \x05\x12\x04\x8f\x02\x04\n\n\r\n\x05\x04\x0b\x02\x04\x01\x12\x04\x8f\x02\ - \x0b\x13\n\r\n\x05\x04\x0b\x02\x04\x03\x12\x04\x8f\x02\x16\x17\nM\n\x04\ - \x04\x0b\x02\x05\x12\x04\x92\x02\x04\x19\x1a?\x20the\x20cid\x20version\ - \x20to\x20use\x20(0,\x201)\n\x20sent\x20by:\x20DAG_PUT,\x20DAG_NEW_NODE\ - \n\n\x0f\n\x05\x04\x0b\x02\x05\x04\x12\x06\x92\x02\x04\x8f\x02\x18\n\r\n\ - \x05\x04\x0b\x02\x05\x05\x12\x04\x92\x02\x04\t\n\r\n\x05\x04\x0b\x02\x05\ - \x01\x12\x04\x92\x02\n\x14\n\r\n\x05\x04\x0b\x02\x05\x03\x12\x04\x92\x02\ - \x17\x18\nv\n\x04\x04\x0b\x02\x06\x12\x04\x95\x02\x04\x14\x1ah\x20the\ - \x20hash\x20of\x20the\x20object\x20we\x20are\x20processing\n\x20sent\x20\ - by:\x20DAG_GET,\x20DAG_NEW_NODe,\x20DAG_ADD_LINKS,\x20DAG_GET_LINKS\n\n\ - \x0f\n\x05\x04\x0b\x02\x06\x04\x12\x06\x95\x02\x04\x92\x02\x19\n\r\n\x05\ - \x04\x0b\x02\x06\x05\x12\x04\x95\x02\x04\n\n\r\n\x05\x04\x0b\x02\x06\x01\ - \x12\x04\x95\x02\x0b\x0f\n\r\n\x05\x04\x0b\x02\x06\x03\x12\x04\x95\x02\ - \x12\x13\nt\n\x04\x04\x0b\x02\x07\x12\x04\x98\x02\x04\"\x1af\x20indicate\ - s\x20links\x20and\x20their\x20names.\x20key\x20=\x20name,\x20value\x20=\ - \x20link\x20hash\n\x20sent\x20by:\x20DAG_NEW_NODE,\x20DAG_ADD_LINKS\n\n\ - \x0f\n\x05\x04\x0b\x02\x07\x04\x12\x06\x98\x02\x04\x95\x02\x14\n\r\n\x05\ - \x04\x0b\x02\x07\x06\x12\x04\x98\x02\x04\x17\n\r\n\x05\x04\x0b\x02\x07\ - \x01\x12\x04\x98\x02\x18\x1d\n\r\n\x05\x04\x0b\x02\x07\x03\x12\x04\x98\ - \x02\x20!\n:\n\x02\x04\x0c\x12\x06\x9c\x02\0\xac\x02\x01\x1a,\x20Used\ - \x20in\x20response\x20to\x20a\x20Dag\x20or\x20DagStream\x20RPC\n\n\x0b\n\ - \x03\x04\x0c\x01\x12\x04\x9c\x02\x08\x13\nQ\n\x04\x04\x0c\x02\0\x12\x04\ - \x9f\x02\x04\x1f\x1aC\x20indicates\x20the\x20request\x20being\x20perform\ - ed\n\x20sent\x20by:\x20all\x20request\x20types\n\n\x0f\n\x05\x04\x0c\x02\ - \0\x04\x12\x06\x9f\x02\x04\x9c\x02\x15\n\r\n\x05\x04\x0c\x02\0\x06\x12\ - \x04\x9f\x02\x04\x0e\n\r\n\x05\x04\x0c\x02\0\x01\x12\x04\x9f\x02\x0f\x1a\ - \n\r\n\x05\x04\x0c\x02\0\x03\x12\x04\x9f\x02\x1d\x1e\n\x80\x01\n\x04\x04\ - \x0c\x02\x01\x12\x04\xa2\x02\x04\x1f\x1ar\x20returns\x20the\x20hashes\ - \x20of\x20newly\x20generated\x20IPLD\x20objects\n\x20sent\x20by:\x20DAG_\ - PUT,\x20DAG_NEW_NODE,\x20DAG_ADD_LINKS,\x20DAG_GET_LINKS\n\n\r\n\x05\x04\ - \x0c\x02\x01\x04\x12\x04\xa2\x02\x04\x0c\n\r\n\x05\x04\x0c\x02\x01\x05\ - \x12\x04\xa2\x02\r\x13\n\r\n\x05\x04\x0c\x02\x01\x01\x12\x04\xa2\x02\x14\ - \x1a\n\r\n\x05\x04\x0c\x02\x01\x03\x12\x04\xa2\x02\x1d\x1e\nN\n\x04\x04\ - \x0c\x02\x02\x12\x04\xa5\x02\x04\x16\x1a@\x20the\x20actual\x20data\x20co\ - ntained\x20by\x20the\x20IPLD\x20object\n\x20sent\x20by:\x20DAG_GET\n\n\ - \x0f\n\x05\x04\x0c\x02\x02\x04\x12\x06\xa5\x02\x04\xa2\x02\x1f\n\r\n\x05\ - \x04\x0c\x02\x02\x05\x12\x04\xa5\x02\x04\t\n\r\n\x05\x04\x0c\x02\x02\x01\ - \x12\x04\xa5\x02\n\x11\n\r\n\x05\x04\x0c\x02\x02\x03\x12\x04\xa5\x02\x14\ - \x15\nV\n\x04\x04\x0c\x02\x03\x12\x04\xa8\x02\x04\x20\x1aH\x20the\x20lin\ - ks\x20contained\x20within\x20an\x20IPLD\x20node\x20object\n\x20sent\x20b\ - y:\x20DAG_GET_LINKS\n\n\r\n\x05\x04\x0c\x02\x03\x04\x12\x04\xa8\x02\x04\ - \x0c\n\r\n\x05\x04\x0c\x02\x03\x06\x12\x04\xa8\x02\r\x15\n\r\n\x05\x04\ - \x0c\x02\x03\x01\x12\x04\xa8\x02\x16\x1b\n\r\n\x05\x04\x0c\x02\x03\x03\ - \x12\x04\xa8\x02\x1e\x1f\nV\n\x04\x04\x0c\x02\x04\x12\x04\xab\x02\x04(\ + \x02\x05\x01\x12\x04\x85\x02\x04\x0c\n\r\n\x05\x05\x06\x02\x05\x02\x12\ + \x04\x85\x02\x0f\x10\n4\n\x04\x05\x06\x02\x06\x12\x04\x87\x02\x04\x13\ + \x1a&\x20DAG_REMOVE\x20is\x20the\x20inverse\x20of\x20DAG_PUT\n\n\r\n\x05\ + \x05\x06\x02\x06\x01\x12\x04\x87\x02\x04\x0e\n\r\n\x05\x05\x06\x02\x06\ + \x02\x12\x04\x87\x02\x11\x12\nA\n\x02\x04\x0b\x12\x06\x8b\x02\0\xab\x02\ + \x01\x1a3\x20Used\x20to\x20submit\x20a\x20request\x20to\x20Dag\x20or\x20\ + DagStream\x20RPCs\n\n\x0b\n\x03\x04\x0b\x01\x12\x04\x8b\x02\x08\x12\nQ\n\ + \x04\x04\x0b\x02\0\x12\x04\x8e\x02\x04\x1f\x1aC\x20indicates\x20the\x20r\ + equest\x20being\x20performed\n\x20sent\x20by:\x20all\x20request\x20types\ + \n\n\x0f\n\x05\x04\x0b\x02\0\x04\x12\x06\x8e\x02\x04\x8b\x02\x14\n\r\n\ + \x05\x04\x0b\x02\0\x06\x12\x04\x8e\x02\x04\x0e\n\r\n\x05\x04\x0b\x02\0\ + \x01\x12\x04\x8e\x02\x0f\x1a\n\r\n\x05\x04\x0b\x02\0\x03\x12\x04\x8e\x02\ + \x1d\x1e\nL\n\x04\x04\x0b\x02\x01\x12\x04\x91\x02\x04\x13\x1a>\x20data\ + \x20that\x20we\x20will\x20be\x20storing\n\x20sent\x20by:\x20DAG_PUT,\x20\ + DAG_NEW_NODE\n\n\x0f\n\x05\x04\x0b\x02\x01\x04\x12\x06\x91\x02\x04\x8e\ + \x02\x1f\n\r\n\x05\x04\x0b\x02\x01\x05\x12\x04\x91\x02\x04\t\n\r\n\x05\ + \x04\x0b\x02\x01\x01\x12\x04\x91\x02\n\x0e\n\r\n\x05\x04\x0b\x02\x01\x03\ + \x12\x04\x91\x02\x11\x12\nX\n\x04\x04\x0b\x02\x02\x12\x04\x94\x02\x04\ + \x1e\x1aJ\x20the\x20object\x20encoding\x20type\x20(raw,\x20cbor,\x20prot\ + obuf,\x20etc...)\n\x20sent\x20by:\x20DAG_PUT\n\n\x0f\n\x05\x04\x0b\x02\ + \x02\x04\x12\x06\x94\x02\x04\x91\x02\x13\n\r\n\x05\x04\x0b\x02\x02\x05\ + \x12\x04\x94\x02\x04\n\n\r\n\x05\x04\x0b\x02\x02\x01\x12\x04\x94\x02\x0b\ + \x19\n\r\n\x05\x04\x0b\x02\x02\x03\x12\x04\x94\x02\x1c\x1d\nX\n\x04\x04\ + \x0b\x02\x03\x12\x04\x97\x02\x04#\x1aJ\x20the\x20serialization\x20format\ + \x20(raw,\x20cbor,\x20protobuf,\x20etc...)\n\x20sent\x20by:\x20DAG_PUT\n\ + \n\x0f\n\x05\x04\x0b\x02\x03\x04\x12\x06\x97\x02\x04\x94\x02\x1e\n\r\n\ + \x05\x04\x0b\x02\x03\x05\x12\x04\x97\x02\x04\n\n\r\n\x05\x04\x0b\x02\x03\ + \x01\x12\x04\x97\x02\x0b\x1e\n\r\n\x05\x04\x0b\x02\x03\x03\x12\x04\x97\ + \x02!\"\nw\n\x04\x04\x0b\x02\x04\x12\x04\x9a\x02\x04\x18\x1ai\x20the\x20\ + hash\x20function\x20to\x20to\x20use\x20(sha2-256,\x20sha3-512,\x20etc...\ + )\n\x20sent\x20by:\x20DAG_PUT,\x20DAG_NEW_NODE,\x20DAG_ADD_LINKS\n\n\x0f\ + \n\x05\x04\x0b\x02\x04\x04\x12\x06\x9a\x02\x04\x97\x02#\n\r\n\x05\x04\ + \x0b\x02\x04\x05\x12\x04\x9a\x02\x04\n\n\r\n\x05\x04\x0b\x02\x04\x01\x12\ + \x04\x9a\x02\x0b\x13\n\r\n\x05\x04\x0b\x02\x04\x03\x12\x04\x9a\x02\x16\ + \x17\nM\n\x04\x04\x0b\x02\x05\x12\x04\x9d\x02\x04\x19\x1a?\x20the\x20cid\ + \x20version\x20to\x20use\x20(0,\x201)\n\x20sent\x20by:\x20DAG_PUT,\x20DA\ + G_NEW_NODE\n\n\x0f\n\x05\x04\x0b\x02\x05\x04\x12\x06\x9d\x02\x04\x9a\x02\ + \x18\n\r\n\x05\x04\x0b\x02\x05\x05\x12\x04\x9d\x02\x04\t\n\r\n\x05\x04\ + \x0b\x02\x05\x01\x12\x04\x9d\x02\n\x14\n\r\n\x05\x04\x0b\x02\x05\x03\x12\ + \x04\x9d\x02\x17\x18\n\x82\x01\n\x04\x04\x0b\x02\x06\x12\x04\xa0\x02\x04\ + \x14\x1at\x20the\x20hash\x20of\x20the\x20object\x20we\x20are\x20processi\ + ng\n\x20sent\x20by:\x20DAG_GET,\x20DAG_NEW_NODe,\x20DAG_ADD_LINKS,\x20DA\ + G_GET_LINKS,\x20DAG_REMOVE\n\n\x0f\n\x05\x04\x0b\x02\x06\x04\x12\x06\xa0\ + \x02\x04\x9d\x02\x19\n\r\n\x05\x04\x0b\x02\x06\x05\x12\x04\xa0\x02\x04\n\ + \n\r\n\x05\x04\x0b\x02\x06\x01\x12\x04\xa0\x02\x0b\x0f\n\r\n\x05\x04\x0b\ + \x02\x06\x03\x12\x04\xa0\x02\x12\x13\nt\n\x04\x04\x0b\x02\x07\x12\x04\ + \xa3\x02\x04\"\x1af\x20indicates\x20links\x20and\x20their\x20names.\x20k\ + ey\x20=\x20name,\x20value\x20=\x20link\x20hash\n\x20sent\x20by:\x20DAG_N\ + EW_NODE,\x20DAG_ADD_LINKS\n\n\x0f\n\x05\x04\x0b\x02\x07\x04\x12\x06\xa3\ + \x02\x04\xa0\x02\x14\n\r\n\x05\x04\x0b\x02\x07\x06\x12\x04\xa3\x02\x04\ + \x17\n\r\n\x05\x04\x0b\x02\x07\x01\x12\x04\xa3\x02\x18\x1d\n\r\n\x05\x04\ + \x0b\x02\x07\x03\x12\x04\xa3\x02\x20!\n]\n\x04\x04\x0b\x02\x08\x12\x04\ + \xa6\x02\x04\x15\x1aO\x20optional\x20reference\x20ID\x20to\x20mark\x20th\ + e\x20cid/hash\x20with\n\x20sent\x20by:\x20DAG_PUT,\x20DAG_REMOVE\n\n\x0f\ + \n\x05\x04\x0b\x02\x08\x04\x12\x06\xa6\x02\x04\xa3\x02\"\n\r\n\x05\x04\ + \x0b\x02\x08\x05\x12\x04\xa6\x02\x04\n\n\r\n\x05\x04\x0b\x02\x08\x01\x12\ + \x04\xa6\x02\x0b\x10\n\r\n\x05\x04\x0b\x02\x08\x03\x12\x04\xa6\x02\x13\ + \x14\n:\n\x04\x04\x0b\x02\t\x12\x04\xa8\x02\x04\x1a\x1a,\x20if\x20refID\ + \x20is\x20set,\x20allows\x20progressive\x20upload\n\n\x0f\n\x05\x04\x0b\ + \x02\t\x04\x12\x06\xa8\x02\x04\xa6\x02\x15\n\r\n\x05\x04\x0b\x02\t\x05\ + \x12\x04\xa8\x02\x04\x08\n\r\n\x05\x04\x0b\x02\t\x01\x12\x04\xa8\x02\t\ + \x14\n\r\n\x05\x04\x0b\x02\t\x03\x12\x04\xa8\x02\x17\x19\nM\n\x04\x04\ + \x0b\x02\n\x12\x04\xaa\x02\x04\x16\x1a?\x20if\x20refID\x20is\x20set,\x20\ + remove\x20the\x20any\x20existing\x20DAGs\x20with\x20same\x20refID\n\n\ + \x0f\n\x05\x04\x0b\x02\n\x04\x12\x06\xaa\x02\x04\xa8\x02\x1a\n\r\n\x05\ + \x04\x0b\x02\n\x05\x12\x04\xaa\x02\x04\x08\n\r\n\x05\x04\x0b\x02\n\x01\ + \x12\x04\xaa\x02\t\x10\n\r\n\x05\x04\x0b\x02\n\x03\x12\x04\xaa\x02\x13\ + \x15\n:\n\x02\x04\x0c\x12\x06\xae\x02\0\xc1\x02\x01\x1a,\x20Used\x20in\ + \x20response\x20to\x20a\x20Dag\x20or\x20DagStream\x20RPC\n\n\x0b\n\x03\ + \x04\x0c\x01\x12\x04\xae\x02\x08\x13\nQ\n\x04\x04\x0c\x02\0\x12\x04\xb1\ + \x02\x04\x1f\x1aC\x20indicates\x20the\x20request\x20being\x20performed\n\ + \x20sent\x20by:\x20all\x20request\x20types\n\n\x0f\n\x05\x04\x0c\x02\0\ + \x04\x12\x06\xb1\x02\x04\xae\x02\x15\n\r\n\x05\x04\x0c\x02\0\x06\x12\x04\ + \xb1\x02\x04\x0e\n\r\n\x05\x04\x0c\x02\0\x01\x12\x04\xb1\x02\x0f\x1a\n\r\ + \n\x05\x04\x0c\x02\0\x03\x12\x04\xb1\x02\x1d\x1e\n\x80\x01\n\x04\x04\x0c\ + \x02\x01\x12\x04\xb4\x02\x04\x1f\x1ar\x20returns\x20the\x20hashes\x20of\ + \x20newly\x20generated\x20IPLD\x20objects\n\x20sent\x20by:\x20DAG_PUT,\ + \x20DAG_NEW_NODE,\x20DAG_ADD_LINKS,\x20DAG_GET_LINKS\n\n\r\n\x05\x04\x0c\ + \x02\x01\x04\x12\x04\xb4\x02\x04\x0c\n\r\n\x05\x04\x0c\x02\x01\x05\x12\ + \x04\xb4\x02\r\x13\n\r\n\x05\x04\x0c\x02\x01\x01\x12\x04\xb4\x02\x14\x1a\ + \n\r\n\x05\x04\x0c\x02\x01\x03\x12\x04\xb4\x02\x1d\x1e\nN\n\x04\x04\x0c\ + \x02\x02\x12\x04\xb7\x02\x04\x16\x1a@\x20the\x20actual\x20data\x20contai\ + ned\x20by\x20the\x20IPLD\x20object\n\x20sent\x20by:\x20DAG_GET\n\n\x0f\n\ + \x05\x04\x0c\x02\x02\x04\x12\x06\xb7\x02\x04\xb4\x02\x1f\n\r\n\x05\x04\ + \x0c\x02\x02\x05\x12\x04\xb7\x02\x04\t\n\r\n\x05\x04\x0c\x02\x02\x01\x12\ + \x04\xb7\x02\n\x11\n\r\n\x05\x04\x0c\x02\x02\x03\x12\x04\xb7\x02\x14\x15\ + \nV\n\x04\x04\x0c\x02\x03\x12\x04\xba\x02\x04\x20\x1aH\x20the\x20links\ + \x20contained\x20within\x20an\x20IPLD\x20node\x20object\n\x20sent\x20by:\ + \x20DAG_GET_LINKS\n\n\r\n\x05\x04\x0c\x02\x03\x04\x12\x04\xba\x02\x04\ + \x0c\n\r\n\x05\x04\x0c\x02\x03\x06\x12\x04\xba\x02\r\x15\n\r\n\x05\x04\ + \x0c\x02\x03\x01\x12\x04\xba\x02\x16\x1b\n\r\n\x05\x04\x0c\x02\x03\x03\ + \x12\x04\xba\x02\x1e\x1f\nV\n\x04\x04\x0c\x02\x04\x12\x04\xbd\x02\x04(\ \x1aH\x20maps\x20ipld\x20cids\x20to\x20a\x20ipld.NodeStat\x20object\x20e\ quivalent\n\x20sent\x20by:\x20DAG_STAT\n\n\x0f\n\x05\x04\x0c\x02\x04\x04\ - \x12\x06\xab\x02\x04\xa8\x02\x20\n\r\n\x05\x04\x0c\x02\x04\x06\x12\x04\ - \xab\x02\x04\x19\n\r\n\x05\x04\x0c\x02\x04\x01\x12\x04\xab\x02\x1a#\n\r\ - \n\x05\x04\x0c\x02\x04\x03\x12\x04\xab\x02&'\ny\n\x02\x04\r\x12\x06\xb0\ - \x02\0\xbb\x02\x01\x1ak\x20IPLDStat\x20is\x20statistics\x20about\x20an\ - \x20individual\x20dag\x20node\n\x20it\x20is\x20a\x20protocol\x20buffer\ - \x20wrapper\x20around\x20ipld.NodeStat\n\n\x0b\n\x03\x04\r\x01\x12\x04\ - \xb0\x02\x08\x10\n-\n\x04\x04\r\x02\0\x12\x04\xb2\x02\x04\x17\x1a\x1f\ - \x20number\x20of\x20links\x20in\x20link\x20table\n\n\x0f\n\x05\x04\r\x02\ - \0\x04\x12\x06\xb2\x02\x04\xb0\x02\x12\n\r\n\x05\x04\r\x02\0\x05\x12\x04\ - \xb2\x02\x04\t\n\r\n\x05\x04\r\x02\0\x01\x12\x04\xb2\x02\n\x12\n\r\n\x05\ - \x04\r\x02\0\x03\x12\x04\xb2\x02\x15\x16\n-\n\x04\x04\r\x02\x01\x12\x04\ - \xb4\x02\x04\x18\x1a\x1f\x20size\x20of\x20the\x20raw,\x20encoded\x20data\ - \n\n\x0f\n\x05\x04\r\x02\x01\x04\x12\x06\xb4\x02\x04\xb2\x02\x17\n\r\n\ - \x05\x04\r\x02\x01\x05\x12\x04\xb4\x02\x04\t\n\r\n\x05\x04\r\x02\x01\x01\ - \x12\x04\xb4\x02\n\x13\n\r\n\x05\x04\r\x02\x01\x03\x12\x04\xb4\x02\x16\ - \x17\n)\n\x04\x04\r\x02\x02\x12\x04\xb6\x02\x04\x17\x1a\x1b\x20size\x20o\ - f\x20the\x20links\x20segment\n\n\x0f\n\x05\x04\r\x02\x02\x04\x12\x06\xb6\ - \x02\x04\xb4\x02\x18\n\r\n\x05\x04\r\x02\x02\x05\x12\x04\xb6\x02\x04\t\n\ - \r\n\x05\x04\r\x02\x02\x01\x12\x04\xb6\x02\n\x12\n\r\n\x05\x04\r\x02\x02\ - \x03\x12\x04\xb6\x02\x15\x16\n<\n\x04\x04\r\x02\x03\x12\x04\xb8\x02\x04\ - \x1d\x1a.\x20cumulative\x20size\x20of\x20object\x20and\x20its\x20referen\ - ces\n\n\x0f\n\x05\x04\r\x02\x03\x04\x12\x06\xb8\x02\x04\xb6\x02\x17\n\r\ - \n\x05\x04\r\x02\x03\x05\x12\x04\xb8\x02\x04\t\n\r\n\x05\x04\r\x02\x03\ - \x01\x12\x04\xb8\x02\n\x18\n\r\n\x05\x04\r\x02\x03\x03\x12\x04\xb8\x02\ - \x1b\x1c\n(\n\x04\x04\r\x02\x04\x12\x04\xba\x02\x04\x17\x1a\x1a\x20size\ - \x20of\x20the\x20data\x20segment\n\n\x0f\n\x05\x04\r\x02\x04\x04\x12\x06\ - \xba\x02\x04\xb8\x02\x1d\n\r\n\x05\x04\r\x02\x04\x05\x12\x04\xba\x02\x04\ - \t\n\r\n\x05\x04\r\x02\x04\x01\x12\x04\xba\x02\n\x12\n\r\n\x05\x04\r\x02\ - \x04\x03\x12\x04\xba\x02\x15\x16\n&\n\x02\x04\x0e\x12\x06\xbe\x02\0\xc5\ - \x02\x01\x1a\x18\x20An\x20IPFS\x20MerkleDAG\x20Link\n\n\x0b\n\x03\x04\ - \x0e\x01\x12\x04\xbe\x02\x08\x10\n.\n\x04\x04\x0e\x02\0\x12\x04\xc0\x02\ - \x04\x13\x1a\x20\x20multihash\x20of\x20the\x20target\x20object\n\n\x0f\n\ - \x05\x04\x0e\x02\0\x04\x12\x06\xc0\x02\x04\xbe\x02\x12\n\r\n\x05\x04\x0e\ - \x02\0\x05\x12\x04\xc0\x02\x04\t\n\r\n\x05\x04\x0e\x02\0\x01\x12\x04\xc0\ - \x02\n\x0e\n\r\n\x05\x04\x0e\x02\0\x03\x12\x04\xc0\x02\x11\x12\n<\n\x04\ - \x04\x0e\x02\x01\x12\x04\xc2\x02\x04\x14\x1a.\x20utf\x20string\x20name.\ - \x20should\x20be\x20unique\x20per\x20object\n\n\x0f\n\x05\x04\x0e\x02\ - \x01\x04\x12\x06\xc2\x02\x04\xc0\x02\x13\n\r\n\x05\x04\x0e\x02\x01\x05\ - \x12\x04\xc2\x02\x04\n\n\r\n\x05\x04\x0e\x02\x01\x01\x12\x04\xc2\x02\x0b\ - \x0f\n\r\n\x05\x04\x0e\x02\x01\x03\x12\x04\xc2\x02\x12\x13\n0\n\x04\x04\ - \x0e\x02\x02\x12\x04\xc4\x02\x04\x14\x1a\"\x20cumulative\x20size\x20of\ - \x20target\x20object\n\n\x0f\n\x05\x04\x0e\x02\x02\x04\x12\x06\xc4\x02\ - \x04\xc2\x02\x14\n\r\n\x05\x04\x0e\x02\x02\x05\x12\x04\xc4\x02\x04\n\n\r\ - \n\x05\x04\x0e\x02\x02\x01\x12\x04\xc4\x02\x0b\x0f\n\r\n\x05\x04\x0e\x02\ - \x02\x03\x12\x04\xc4\x02\x12\x13\n&\n\x02\x04\x0f\x12\x06\xc8\x02\0\xcd\ - \x02\x01\x1a\x18\x20An\x20IPFS\x20MerkleDAG\x20Node\n\n\x0b\n\x03\x04\ - \x0f\x01\x12\x04\xc8\x02\x08\x10\n%\n\x04\x04\x0f\x02\0\x12\x04\xca\x02\ - \x04\x20\x1a\x17\x20refs\x20to\x20other\x20objects\n\n\r\n\x05\x04\x0f\ - \x02\0\x04\x12\x04\xca\x02\x04\x0c\n\r\n\x05\x04\x0f\x02\0\x06\x12\x04\ - \xca\x02\r\x15\n\r\n\x05\x04\x0f\x02\0\x01\x12\x04\xca\x02\x16\x1b\n\r\n\ - \x05\x04\x0f\x02\0\x03\x12\x04\xca\x02\x1e\x1f\n\x20\n\x04\x04\x0f\x02\ - \x01\x12\x04\xcc\x02\x04\x13\x1a\x12\x20opaque\x20user\x20data\n\n\x0f\n\ - \x05\x04\x0f\x02\x01\x04\x12\x06\xcc\x02\x04\xca\x02\x20\n\r\n\x05\x04\ - \x0f\x02\x01\x05\x12\x04\xcc\x02\x04\t\n\r\n\x05\x04\x0f\x02\x01\x01\x12\ - \x04\xcc\x02\n\x0e\n\r\n\x05\x04\x0f\x02\x01\x03\x12\x04\xcc\x02\x11\x12\ - \nV\n\x02\x05\x07\x12\x06\xd0\x02\0\xdb\x02\x01\x1aH\x20KSREQTYPE\x20ind\ - icates\x20the\x20particular\x20KeystoreAPI\x20request\x20being\x20perfor\ - med\n\n\x0b\n\x03\x05\x07\x01\x12\x04\xd0\x02\x05\x0e\nI\n\x04\x05\x07\ - \x02\0\x12\x04\xd2\x02\x04\x0f\x1a;\x20KS_HAS\x20is\x20used\x20to\x20che\ - ck\x20if\x20the\x20key\x20exists\x20in\x20our\x20keystore\n\n\r\n\x05\ - \x05\x07\x02\0\x01\x12\x04\xd2\x02\x04\n\n\r\n\x05\x05\x07\x02\0\x02\x12\ - \x04\xd2\x02\r\x0e\nN\n\x04\x05\x07\x02\x01\x12\x04\xd4\x02\x04\x0f\x1a@\ - \x20KS_GET\x20is\x20used\x20to\x20retrieve\x20private\x20key\x20bytes\ - \x20from\x20our\x20keystore\n\n\r\n\x05\x05\x07\x02\x01\x01\x12\x04\xd4\ - \x02\x04\n\n\r\n\x05\x05\x07\x02\x01\x02\x12\x04\xd4\x02\r\x0e\nI\n\x04\ - \x05\x07\x02\x02\x12\x04\xd6\x02\x04\x0f\x1a;\x20KS_PUT\x20is\x20used\ - \x20to\x20store\x20private\x20key\x20bytes\x20in\x20our\x20keystore\n\n\ - \r\n\x05\x05\x07\x02\x02\x01\x12\x04\xd6\x02\x04\n\n\r\n\x05\x05\x07\x02\ - \x02\x02\x12\x04\xd6\x02\r\x0e\nJ\n\x04\x05\x07\x02\x03\x12\x04\xd8\x02\ - \x04\x12\x1a<\x20KS_DELETE\x20is\x20used\x20to\x20delete\x20private\x20k\ - eys\x20from\x20our\x20keystore\n\n\r\n\x05\x05\x07\x02\x03\x01\x12\x04\ - \xd8\x02\x04\r\n\r\n\x05\x05\x07\x02\x03\x02\x12\x04\xd8\x02\x10\x11\nN\ - \n\x04\x05\x07\x02\x04\x12\x04\xda\x02\x04\x10\x1a@\x20KS_LIST\x20is\x20\ - used\x20to\x20list\x20all\x20keys\x20in\x20our\x20keystore\x20by\x20thei\ - r\x20name\n\n\r\n\x05\x05\x07\x02\x04\x01\x12\x04\xda\x02\x04\x0b\n\r\n\ - \x05\x05\x07\x02\x04\x02\x12\x04\xda\x02\x0e\x0f\n8\n\x02\x04\x10\x12\ - \x06\xde\x02\0\xe7\x02\x01\x1a*\x20Used\x20to\x20submit\x20a\x20request\ - \x20to\x20Keystore\x20RPC\n\n\x0b\n\x03\x04\x10\x01\x12\x04\xde\x02\x08\ - \x17\n:\n\x04\x04\x10\x02\0\x12\x04\xe0\x02\x04\x1e\x1a,\x20indicates\ - \x20the\x20request\x20type\x20being\x20performed\n\n\x0f\n\x05\x04\x10\ - \x02\0\x04\x12\x06\xe0\x02\x04\xde\x02\x19\n\r\n\x05\x04\x10\x02\0\x06\ - \x12\x04\xe0\x02\x04\r\n\r\n\x05\x04\x10\x02\0\x01\x12\x04\xe0\x02\x0e\ - \x19\n\r\n\x05\x04\x10\x02\0\x03\x12\x04\xe0\x02\x1c\x1d\n^\n\x04\x04\ - \x10\x02\x01\x12\x04\xe3\x02\x04\x14\x1aP\x20name\x20of\x20the\x20key\ - \x20the\x20request\x20is\x20for\n\x20sent\x20by:\x20KS_HAS,\x20KS_GET,\ - \x20KS_PUT,\x20KS_DELETE\n\n\x0f\n\x05\x04\x10\x02\x01\x04\x12\x06\xe3\ - \x02\x04\xe0\x02\x1e\n\r\n\x05\x04\x10\x02\x01\x05\x12\x04\xe3\x02\x04\n\ - \n\r\n\x05\x04\x10\x02\x01\x01\x12\x04\xe3\x02\x0b\x0f\n\r\n\x05\x04\x10\ - \x02\x01\x03\x12\x04\xe3\x02\x12\x13\n=\n\x04\x04\x10\x02\x02\x12\x04\ - \xe6\x02\x04\x19\x1a/\x20the\x20actual\x20private\x20key\x20bytes\n\x20s\ - ent\x20by:\x20KS_PUT\n\n\x0f\n\x05\x04\x10\x02\x02\x04\x12\x06\xe6\x02\ - \x04\xe3\x02\x14\n\r\n\x05\x04\x10\x02\x02\x05\x12\x04\xe6\x02\x04\t\n\r\ - \n\x05\x04\x10\x02\x02\x01\x12\x04\xe6\x02\n\x14\n\r\n\x05\x04\x10\x02\ - \x02\x03\x12\x04\xe6\x02\x17\x18\n2\n\x02\x04\x11\x12\x06\xea\x02\0\xf6\ - \x02\x01\x1a$\x20Used\x20in\x20response\x20to\x20a\x20Keystore\x20RPC\n\ - \n\x0b\n\x03\x04\x11\x01\x12\x04\xea\x02\x08\x18\n:\n\x04\x04\x11\x02\0\ - \x12\x04\xec\x02\x04\x1e\x1a,\x20indicates\x20the\x20request\x20type\x20\ - being\x20performed\n\n\x0f\n\x05\x04\x11\x02\0\x04\x12\x06\xec\x02\x04\ - \xea\x02\x1a\n\r\n\x05\x04\x11\x02\0\x06\x12\x04\xec\x02\x04\r\n\r\n\x05\ - \x04\x11\x02\0\x01\x12\x04\xec\x02\x0e\x19\n\r\n\x05\x04\x11\x02\0\x03\ - \x12\x04\xec\x02\x1c\x1d\n6\n\x04\x04\x11\x02\x01\x12\x04\xef\x02\x04\ + \x12\x06\xbd\x02\x04\xba\x02\x20\n\r\n\x05\x04\x0c\x02\x04\x06\x12\x04\ + \xbd\x02\x04\x19\n\r\n\x05\x04\x0c\x02\x04\x01\x12\x04\xbd\x02\x1a#\n\r\ + \n\x05\x04\x0c\x02\x04\x03\x12\x04\xbd\x02&'\nP\n\x04\x04\x0c\x02\x05\ + \x12\x04\xc0\x02\x04\x15\x1aB\x20The\x20number\x20of\x20removal\x20opera\ + tions\x20performed.\n\x20sent\x20by:\x20DAG_REMOVE\n\n\x0f\n\x05\x04\x0c\ + \x02\x05\x04\x12\x06\xc0\x02\x04\xbd\x02(\n\r\n\x05\x04\x0c\x02\x05\x05\ + \x12\x04\xc0\x02\x04\n\n\r\n\x05\x04\x0c\x02\x05\x01\x12\x04\xc0\x02\x0b\ + \x10\n\r\n\x05\x04\x0c\x02\x05\x03\x12\x04\xc0\x02\x13\x14\ny\n\x02\x04\ + \r\x12\x06\xc5\x02\0\xd0\x02\x01\x1ak\x20IPLDStat\x20is\x20statistics\ + \x20about\x20an\x20individual\x20dag\x20node\n\x20it\x20is\x20a\x20proto\ + col\x20buffer\x20wrapper\x20around\x20ipld.NodeStat\n\n\x0b\n\x03\x04\r\ + \x01\x12\x04\xc5\x02\x08\x10\n-\n\x04\x04\r\x02\0\x12\x04\xc7\x02\x04\ + \x17\x1a\x1f\x20number\x20of\x20links\x20in\x20link\x20table\n\n\x0f\n\ + \x05\x04\r\x02\0\x04\x12\x06\xc7\x02\x04\xc5\x02\x12\n\r\n\x05\x04\r\x02\ + \0\x05\x12\x04\xc7\x02\x04\t\n\r\n\x05\x04\r\x02\0\x01\x12\x04\xc7\x02\n\ + \x12\n\r\n\x05\x04\r\x02\0\x03\x12\x04\xc7\x02\x15\x16\n-\n\x04\x04\r\ + \x02\x01\x12\x04\xc9\x02\x04\x18\x1a\x1f\x20size\x20of\x20the\x20raw,\ + \x20encoded\x20data\n\n\x0f\n\x05\x04\r\x02\x01\x04\x12\x06\xc9\x02\x04\ + \xc7\x02\x17\n\r\n\x05\x04\r\x02\x01\x05\x12\x04\xc9\x02\x04\t\n\r\n\x05\ + \x04\r\x02\x01\x01\x12\x04\xc9\x02\n\x13\n\r\n\x05\x04\r\x02\x01\x03\x12\ + \x04\xc9\x02\x16\x17\n)\n\x04\x04\r\x02\x02\x12\x04\xcb\x02\x04\x17\x1a\ + \x1b\x20size\x20of\x20the\x20links\x20segment\n\n\x0f\n\x05\x04\r\x02\ + \x02\x04\x12\x06\xcb\x02\x04\xc9\x02\x18\n\r\n\x05\x04\r\x02\x02\x05\x12\ + \x04\xcb\x02\x04\t\n\r\n\x05\x04\r\x02\x02\x01\x12\x04\xcb\x02\n\x12\n\r\ + \n\x05\x04\r\x02\x02\x03\x12\x04\xcb\x02\x15\x16\n<\n\x04\x04\r\x02\x03\ + \x12\x04\xcd\x02\x04\x1d\x1a.\x20cumulative\x20size\x20of\x20object\x20a\ + nd\x20its\x20references\n\n\x0f\n\x05\x04\r\x02\x03\x04\x12\x06\xcd\x02\ + \x04\xcb\x02\x17\n\r\n\x05\x04\r\x02\x03\x05\x12\x04\xcd\x02\x04\t\n\r\n\ + \x05\x04\r\x02\x03\x01\x12\x04\xcd\x02\n\x18\n\r\n\x05\x04\r\x02\x03\x03\ + \x12\x04\xcd\x02\x1b\x1c\n(\n\x04\x04\r\x02\x04\x12\x04\xcf\x02\x04\x17\ + \x1a\x1a\x20size\x20of\x20the\x20data\x20segment\n\n\x0f\n\x05\x04\r\x02\ + \x04\x04\x12\x06\xcf\x02\x04\xcd\x02\x1d\n\r\n\x05\x04\r\x02\x04\x05\x12\ + \x04\xcf\x02\x04\t\n\r\n\x05\x04\r\x02\x04\x01\x12\x04\xcf\x02\n\x12\n\r\ + \n\x05\x04\r\x02\x04\x03\x12\x04\xcf\x02\x15\x16\n&\n\x02\x04\x0e\x12\ + \x06\xd3\x02\0\xda\x02\x01\x1a\x18\x20An\x20IPFS\x20MerkleDAG\x20Link\n\ + \n\x0b\n\x03\x04\x0e\x01\x12\x04\xd3\x02\x08\x10\n.\n\x04\x04\x0e\x02\0\ + \x12\x04\xd5\x02\x04\x13\x1a\x20\x20multihash\x20of\x20the\x20target\x20\ + object\n\n\x0f\n\x05\x04\x0e\x02\0\x04\x12\x06\xd5\x02\x04\xd3\x02\x12\n\ + \r\n\x05\x04\x0e\x02\0\x05\x12\x04\xd5\x02\x04\t\n\r\n\x05\x04\x0e\x02\0\ + \x01\x12\x04\xd5\x02\n\x0e\n\r\n\x05\x04\x0e\x02\0\x03\x12\x04\xd5\x02\ + \x11\x12\n<\n\x04\x04\x0e\x02\x01\x12\x04\xd7\x02\x04\x14\x1a.\x20utf\ + \x20string\x20name.\x20should\x20be\x20unique\x20per\x20object\n\n\x0f\n\ + \x05\x04\x0e\x02\x01\x04\x12\x06\xd7\x02\x04\xd5\x02\x13\n\r\n\x05\x04\ + \x0e\x02\x01\x05\x12\x04\xd7\x02\x04\n\n\r\n\x05\x04\x0e\x02\x01\x01\x12\ + \x04\xd7\x02\x0b\x0f\n\r\n\x05\x04\x0e\x02\x01\x03\x12\x04\xd7\x02\x12\ + \x13\n0\n\x04\x04\x0e\x02\x02\x12\x04\xd9\x02\x04\x14\x1a\"\x20cumulativ\ + e\x20size\x20of\x20target\x20object\n\n\x0f\n\x05\x04\x0e\x02\x02\x04\ + \x12\x06\xd9\x02\x04\xd7\x02\x14\n\r\n\x05\x04\x0e\x02\x02\x05\x12\x04\ + \xd9\x02\x04\n\n\r\n\x05\x04\x0e\x02\x02\x01\x12\x04\xd9\x02\x0b\x0f\n\r\ + \n\x05\x04\x0e\x02\x02\x03\x12\x04\xd9\x02\x12\x13\n&\n\x02\x04\x0f\x12\ + \x06\xdd\x02\0\xe2\x02\x01\x1a\x18\x20An\x20IPFS\x20MerkleDAG\x20Node\n\ + \n\x0b\n\x03\x04\x0f\x01\x12\x04\xdd\x02\x08\x10\n%\n\x04\x04\x0f\x02\0\ + \x12\x04\xdf\x02\x04\x20\x1a\x17\x20refs\x20to\x20other\x20objects\n\n\r\ + \n\x05\x04\x0f\x02\0\x04\x12\x04\xdf\x02\x04\x0c\n\r\n\x05\x04\x0f\x02\0\ + \x06\x12\x04\xdf\x02\r\x15\n\r\n\x05\x04\x0f\x02\0\x01\x12\x04\xdf\x02\ + \x16\x1b\n\r\n\x05\x04\x0f\x02\0\x03\x12\x04\xdf\x02\x1e\x1f\n\x20\n\x04\ + \x04\x0f\x02\x01\x12\x04\xe1\x02\x04\x13\x1a\x12\x20opaque\x20user\x20da\ + ta\n\n\x0f\n\x05\x04\x0f\x02\x01\x04\x12\x06\xe1\x02\x04\xdf\x02\x20\n\r\ + \n\x05\x04\x0f\x02\x01\x05\x12\x04\xe1\x02\x04\t\n\r\n\x05\x04\x0f\x02\ + \x01\x01\x12\x04\xe1\x02\n\x0e\n\r\n\x05\x04\x0f\x02\x01\x03\x12\x04\xe1\ + \x02\x11\x12\nV\n\x02\x05\x07\x12\x06\xe5\x02\0\xf0\x02\x01\x1aH\x20KSRE\ + QTYPE\x20indicates\x20the\x20particular\x20KeystoreAPI\x20request\x20bei\ + ng\x20performed\n\n\x0b\n\x03\x05\x07\x01\x12\x04\xe5\x02\x05\x0e\nI\n\ + \x04\x05\x07\x02\0\x12\x04\xe7\x02\x04\x0f\x1a;\x20KS_HAS\x20is\x20used\ + \x20to\x20check\x20if\x20the\x20key\x20exists\x20in\x20our\x20keystore\n\ + \n\r\n\x05\x05\x07\x02\0\x01\x12\x04\xe7\x02\x04\n\n\r\n\x05\x05\x07\x02\ + \0\x02\x12\x04\xe7\x02\r\x0e\nN\n\x04\x05\x07\x02\x01\x12\x04\xe9\x02\ + \x04\x0f\x1a@\x20KS_GET\x20is\x20used\x20to\x20retrieve\x20private\x20ke\ + y\x20bytes\x20from\x20our\x20keystore\n\n\r\n\x05\x05\x07\x02\x01\x01\ + \x12\x04\xe9\x02\x04\n\n\r\n\x05\x05\x07\x02\x01\x02\x12\x04\xe9\x02\r\ + \x0e\nI\n\x04\x05\x07\x02\x02\x12\x04\xeb\x02\x04\x0f\x1a;\x20KS_PUT\x20\ + is\x20used\x20to\x20store\x20private\x20key\x20bytes\x20in\x20our\x20key\ + store\n\n\r\n\x05\x05\x07\x02\x02\x01\x12\x04\xeb\x02\x04\n\n\r\n\x05\ + \x05\x07\x02\x02\x02\x12\x04\xeb\x02\r\x0e\nJ\n\x04\x05\x07\x02\x03\x12\ + \x04\xed\x02\x04\x12\x1a<\x20KS_DELETE\x20is\x20used\x20to\x20delete\x20\ + private\x20keys\x20from\x20our\x20keystore\n\n\r\n\x05\x05\x07\x02\x03\ + \x01\x12\x04\xed\x02\x04\r\n\r\n\x05\x05\x07\x02\x03\x02\x12\x04\xed\x02\ + \x10\x11\nN\n\x04\x05\x07\x02\x04\x12\x04\xef\x02\x04\x10\x1a@\x20KS_LIS\ + T\x20is\x20used\x20to\x20list\x20all\x20keys\x20in\x20our\x20keystore\ + \x20by\x20their\x20name\n\n\r\n\x05\x05\x07\x02\x04\x01\x12\x04\xef\x02\ + \x04\x0b\n\r\n\x05\x05\x07\x02\x04\x02\x12\x04\xef\x02\x0e\x0f\n8\n\x02\ + \x04\x10\x12\x06\xf3\x02\0\xfc\x02\x01\x1a*\x20Used\x20to\x20submit\x20a\ + \x20request\x20to\x20Keystore\x20RPC\n\n\x0b\n\x03\x04\x10\x01\x12\x04\ + \xf3\x02\x08\x17\n:\n\x04\x04\x10\x02\0\x12\x04\xf5\x02\x04\x1e\x1a,\x20\ + indicates\x20the\x20request\x20type\x20being\x20performed\n\n\x0f\n\x05\ + \x04\x10\x02\0\x04\x12\x06\xf5\x02\x04\xf3\x02\x19\n\r\n\x05\x04\x10\x02\ + \0\x06\x12\x04\xf5\x02\x04\r\n\r\n\x05\x04\x10\x02\0\x01\x12\x04\xf5\x02\ + \x0e\x19\n\r\n\x05\x04\x10\x02\0\x03\x12\x04\xf5\x02\x1c\x1d\n^\n\x04\ + \x04\x10\x02\x01\x12\x04\xf8\x02\x04\x14\x1aP\x20name\x20of\x20the\x20ke\ + y\x20the\x20request\x20is\x20for\n\x20sent\x20by:\x20KS_HAS,\x20KS_GET,\ + \x20KS_PUT,\x20KS_DELETE\n\n\x0f\n\x05\x04\x10\x02\x01\x04\x12\x06\xf8\ + \x02\x04\xf5\x02\x1e\n\r\n\x05\x04\x10\x02\x01\x05\x12\x04\xf8\x02\x04\n\ + \n\r\n\x05\x04\x10\x02\x01\x01\x12\x04\xf8\x02\x0b\x0f\n\r\n\x05\x04\x10\ + \x02\x01\x03\x12\x04\xf8\x02\x12\x13\n=\n\x04\x04\x10\x02\x02\x12\x04\ + \xfb\x02\x04\x19\x1a/\x20the\x20actual\x20private\x20key\x20bytes\n\x20s\ + ent\x20by:\x20KS_PUT\n\n\x0f\n\x05\x04\x10\x02\x02\x04\x12\x06\xfb\x02\ + \x04\xf8\x02\x14\n\r\n\x05\x04\x10\x02\x02\x05\x12\x04\xfb\x02\x04\t\n\r\ + \n\x05\x04\x10\x02\x02\x01\x12\x04\xfb\x02\n\x14\n\r\n\x05\x04\x10\x02\ + \x02\x03\x12\x04\xfb\x02\x17\x18\n2\n\x02\x04\x11\x12\x06\xff\x02\0\x8b\ + \x03\x01\x1a$\x20Used\x20in\x20response\x20to\x20a\x20Keystore\x20RPC\n\ + \n\x0b\n\x03\x04\x11\x01\x12\x04\xff\x02\x08\x18\n:\n\x04\x04\x11\x02\0\ + \x12\x04\x81\x03\x04\x1e\x1a,\x20indicates\x20the\x20request\x20type\x20\ + being\x20performed\n\n\x0f\n\x05\x04\x11\x02\0\x04\x12\x06\x81\x03\x04\ + \xff\x02\x1a\n\r\n\x05\x04\x11\x02\0\x06\x12\x04\x81\x03\x04\r\n\r\n\x05\ + \x04\x11\x02\0\x01\x12\x04\x81\x03\x0e\x19\n\r\n\x05\x04\x11\x02\0\x03\ + \x12\x04\x81\x03\x1c\x1d\n6\n\x04\x04\x11\x02\x01\x12\x04\x84\x03\x04\ \x19\x1a(\x20the\x20private\x20key\x20bytes\n\x20sent\x20by:\x20KS_GET\n\ - \n\x0f\n\x05\x04\x11\x02\x01\x04\x12\x06\xef\x02\x04\xec\x02\x1e\n\r\n\ - \x05\x04\x11\x02\x01\x05\x12\x04\xef\x02\x04\t\n\r\n\x05\x04\x11\x02\x01\ - \x01\x12\x04\xef\x02\n\x14\n\r\n\x05\x04\x11\x02\x01\x03\x12\x04\xef\x02\ - \x17\x18\n>\n\x04\x04\x11\x02\x02\x12\x04\xf2\x02\x04!\x1a0\x20contains\ + \n\x0f\n\x05\x04\x11\x02\x01\x04\x12\x06\x84\x03\x04\x81\x03\x1e\n\r\n\ + \x05\x04\x11\x02\x01\x05\x12\x04\x84\x03\x04\t\n\r\n\x05\x04\x11\x02\x01\ + \x01\x12\x04\x84\x03\n\x14\n\r\n\x05\x04\x11\x02\x01\x03\x12\x04\x84\x03\ + \x17\x18\n>\n\x04\x04\x11\x02\x02\x12\x04\x87\x03\x04!\x1a0\x20contains\ \x20all\x20known\x20key\x20names\n\x20sent\x20by:\x20KS_LIST\n\n\r\n\x05\ - \x04\x11\x02\x02\x04\x12\x04\xf2\x02\x04\x0c\n\r\n\x05\x04\x11\x02\x02\ - \x05\x12\x04\xf2\x02\r\x13\n\r\n\x05\x04\x11\x02\x02\x01\x12\x04\xf2\x02\ - \x14\x1c\n\r\n\x05\x04\x11\x02\x02\x03\x12\x04\xf2\x02\x1f\x20\nM\n\x04\ - \x04\x11\x02\x03\x12\x04\xf5\x02\x04\x11\x1a?\x20indicates\x20if\x20we\ + \x04\x11\x02\x02\x04\x12\x04\x87\x03\x04\x0c\n\r\n\x05\x04\x11\x02\x02\ + \x05\x12\x04\x87\x03\r\x13\n\r\n\x05\x04\x11\x02\x02\x01\x12\x04\x87\x03\ + \x14\x1c\n\r\n\x05\x04\x11\x02\x02\x03\x12\x04\x87\x03\x1f\x20\nM\n\x04\ + \x04\x11\x02\x03\x12\x04\x8a\x03\x04\x11\x1a?\x20indicates\x20if\x20we\ \x20have\x20the\x20key\x20in\x20our\x20keystore\n\x20sent\x20by:\x20KS_H\ - AS\n\n\x0f\n\x05\x04\x11\x02\x03\x04\x12\x06\xf5\x02\x04\xf2\x02!\n\r\n\ - \x05\x04\x11\x02\x03\x05\x12\x04\xf5\x02\x04\x08\n\r\n\x05\x04\x11\x02\ - \x03\x01\x12\x04\xf5\x02\t\x0c\n\r\n\x05\x04\x11\x02\x03\x03\x12\x04\xf5\ - \x02\x0f\x10\n\x0c\n\x02\x04\x12\x12\x06\xf8\x02\0\xfb\x02\x01\n\x0b\n\ - \x03\x04\x12\x01\x12\x04\xf8\x02\x08\x16\n'\n\x04\x04\x12\x02\0\x12\x04\ - \xfa\x02\x04\x1d\x1a\x19\x20cids\x20to\x20persist\x20locally\n\n\r\n\x05\ - \x04\x12\x02\0\x04\x12\x04\xfa\x02\x04\x0c\n\r\n\x05\x04\x12\x02\0\x05\ - \x12\x04\xfa\x02\r\x13\n\r\n\x05\x04\x12\x02\0\x01\x12\x04\xfa\x02\x14\ - \x18\n\r\n\x05\x04\x12\x02\0\x03\x12\x04\xfa\x02\x1b\x1c\n\x0c\n\x02\x04\ - \x13\x12\x06\xfd\x02\0\x82\x03\x01\n\x0b\n\x03\x04\x13\x01\x12\x04\xfd\ - \x02\x08\x17\nB\n\x04\x04\x13\x02\0\x12\x04\xff\x02\x04!\x1a4\x20key\x20\ - =\x20cid,\x20value\x20=\x20whether\x20or\x20not\x20it\x20was\x20persiste\ - d\n\n\x0f\n\x05\x04\x13\x02\0\x04\x12\x06\xff\x02\x04\xfd\x02\x19\n\r\n\ - \x05\x04\x13\x02\0\x06\x12\x04\xff\x02\x04\x15\n\r\n\x05\x04\x13\x02\0\ - \x01\x12\x04\xff\x02\x16\x1c\n\r\n\x05\x04\x13\x02\0\x03\x12\x04\xff\x02\ - \x1f\x20\n9\n\x04\x04\x13\x02\x01\x12\x04\x81\x03\x04#\x1a+\x20key\x20=\ - \x20cid,\x20value\x20=\x20error\x20if\x20not\x20persisted\n\n\x0f\n\x05\ - \x04\x13\x02\x01\x04\x12\x06\x81\x03\x04\xff\x02!\n\r\n\x05\x04\x13\x02\ - \x01\x06\x12\x04\x81\x03\x04\x17\n\r\n\x05\x04\x13\x02\x01\x01\x12\x04\ - \x81\x03\x18\x1e\n\r\n\x05\x04\x13\x02\x01\x03\x12\x04\x81\x03!\"b\x06pr\ - oto3\ + AS\n\n\x0f\n\x05\x04\x11\x02\x03\x04\x12\x06\x8a\x03\x04\x87\x03!\n\r\n\ + \x05\x04\x11\x02\x03\x05\x12\x04\x8a\x03\x04\x08\n\r\n\x05\x04\x11\x02\ + \x03\x01\x12\x04\x8a\x03\t\x0c\n\r\n\x05\x04\x11\x02\x03\x03\x12\x04\x8a\ + \x03\x0f\x10\n\x0c\n\x02\x04\x12\x12\x06\x8d\x03\0\x94\x03\x01\n\x0b\n\ + \x03\x04\x12\x01\x12\x04\x8d\x03\x08\x16\n'\n\x04\x04\x12\x02\0\x12\x04\ + \x8f\x03\x04\x1d\x1a\x19\x20cids\x20to\x20persist\x20locally\n\n\r\n\x05\ + \x04\x12\x02\0\x04\x12\x04\x8f\x03\x04\x0c\n\r\n\x05\x04\x12\x02\0\x05\ + \x12\x04\x8f\x03\r\x13\n\r\n\x05\x04\x12\x02\0\x01\x12\x04\x8f\x03\x14\ + \x18\n\r\n\x05\x04\x12\x02\0\x03\x12\x04\x8f\x03\x1b\x1c\n;\n\x04\x04\ + \x12\x02\x01\x12\x04\x91\x03\x04\x15\x1a-\x20optional\x20reference\x20ID\ + \x20to\x20mark\x20the\x20cids\x20with\n\n\x0f\n\x05\x04\x12\x02\x01\x04\ + \x12\x06\x91\x03\x04\x8f\x03\x1d\n\r\n\x05\x04\x12\x02\x01\x05\x12\x04\ + \x91\x03\x04\n\n\r\n\x05\x04\x12\x02\x01\x01\x12\x04\x91\x03\x0b\x10\n\r\ + \n\x05\x04\x12\x02\x01\x03\x12\x04\x91\x03\x13\x14\n:\n\x04\x04\x12\x02\ + \x02\x12\x04\x93\x03\x04\x19\x1a,\x20if\x20refID\x20is\x20set,\x20allows\ + \x20progressive\x20upload\n\n\x0f\n\x05\x04\x12\x02\x02\x04\x12\x06\x93\ + \x03\x04\x91\x03\x15\n\r\n\x05\x04\x12\x02\x02\x05\x12\x04\x93\x03\x04\ + \x08\n\r\n\x05\x04\x12\x02\x02\x01\x12\x04\x93\x03\t\x14\n\r\n\x05\x04\ + \x12\x02\x02\x03\x12\x04\x93\x03\x17\x18\n\x0c\n\x02\x04\x13\x12\x06\x96\ + \x03\0\x9b\x03\x01\n\x0b\n\x03\x04\x13\x01\x12\x04\x96\x03\x08\x17\nB\n\ + \x04\x04\x13\x02\0\x12\x04\x98\x03\x04!\x1a4\x20key\x20=\x20cid,\x20valu\ + e\x20=\x20whether\x20or\x20not\x20it\x20was\x20persisted\n\n\x0f\n\x05\ + \x04\x13\x02\0\x04\x12\x06\x98\x03\x04\x96\x03\x19\n\r\n\x05\x04\x13\x02\ + \0\x06\x12\x04\x98\x03\x04\x15\n\r\n\x05\x04\x13\x02\0\x01\x12\x04\x98\ + \x03\x16\x1c\n\r\n\x05\x04\x13\x02\0\x03\x12\x04\x98\x03\x1f\x20\n9\n\ + \x04\x04\x13\x02\x01\x12\x04\x9a\x03\x04#\x1a+\x20key\x20=\x20cid,\x20va\ + lue\x20=\x20error\x20if\x20not\x20persisted\n\n\x0f\n\x05\x04\x13\x02\ + \x01\x04\x12\x06\x9a\x03\x04\x98\x03!\n\r\n\x05\x04\x13\x02\x01\x06\x12\ + \x04\x9a\x03\x04\x17\n\r\n\x05\x04\x13\x02\x01\x01\x12\x04\x9a\x03\x18\ + \x1e\n\r\n\x05\x04\x13\x02\x01\x03\x12\x04\x9a\x03!\"b\x06proto3\ "; -static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/rs/src/node_grpc.rs b/rs/src/node_grpc.rs index 67f7e30..138ddad 100644 --- a/rs/src/node_grpc.rs +++ b/rs/src/node_grpc.rs @@ -205,7 +205,7 @@ impl NodeApiClient { pub fn persist_async(&self, req: &super::node::PersistRequest) -> ::grpcio::Result<::grpcio::ClientUnaryReceiver> { self.persist_async_opt(req, ::grpcio::CallOption::default()) } - pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { + pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { self.client.spawn(f) } } diff --git a/rs/src/pubsub.rs b/rs/src/pubsub.rs index fea678b..8e32227 100644 --- a/rs/src/pubsub.rs +++ b/rs/src/pubsub.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `pubsub.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct PubSubRequest { @@ -161,7 +158,7 @@ impl ::protobuf::Message for PubSubRequest { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != PSREQTYPE::PS_GET_TOPICS { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } for v in &self.topics { os.write_string(2, &v)?; @@ -191,7 +188,7 @@ impl ::protobuf::Message for PubSubRequest { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -204,45 +201,35 @@ impl ::protobuf::Message for PubSubRequest { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &PubSubRequest| { &m.requestType }, - |m: &mut PubSubRequest| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "topics", - |m: &PubSubRequest| { &m.topics }, - |m: &mut PubSubRequest| { &mut m.topics }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "data", - |m: &PubSubRequest| { &m.data }, - |m: &mut PubSubRequest| { &mut m.data }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "PubSubRequest", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &PubSubRequest| { &m.requestType }, + |m: &mut PubSubRequest| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "topics", + |m: &PubSubRequest| { &m.topics }, + |m: &mut PubSubRequest| { &mut m.topics }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "data", + |m: &PubSubRequest| { &m.data }, + |m: &mut PubSubRequest| { &mut m.data }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "PubSubRequest", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static PubSubRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PubSubRequest, - }; - unsafe { - instance.get(PubSubRequest::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(PubSubRequest::new) } } @@ -262,8 +249,8 @@ impl ::std::fmt::Debug for PubSubRequest { } impl ::protobuf::reflect::ProtobufValue for PubSubRequest { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -445,7 +432,7 @@ impl ::protobuf::Message for PubSubResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { if self.requestType != PSREQTYPE::PS_GET_TOPICS { - os.write_enum(1, self.requestType.value())?; + os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.requestType))?; } for v in &self.message { os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; @@ -482,7 +469,7 @@ impl ::protobuf::Message for PubSubResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -495,50 +482,40 @@ impl ::protobuf::Message for PubSubResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "requestType", - |m: &PubSubResponse| { &m.requestType }, - |m: &mut PubSubResponse| { &mut m.requestType }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "message", - |m: &PubSubResponse| { &m.message }, - |m: &mut PubSubResponse| { &mut m.message }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "topics", - |m: &PubSubResponse| { &m.topics }, - |m: &mut PubSubResponse| { &mut m.topics }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "peers", - |m: &PubSubResponse| { &m.peers }, - |m: &mut PubSubResponse| { &mut m.peers }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "PubSubResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "requestType", + |m: &PubSubResponse| { &m.requestType }, + |m: &mut PubSubResponse| { &mut m.requestType }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "message", + |m: &PubSubResponse| { &m.message }, + |m: &mut PubSubResponse| { &mut m.message }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "topics", + |m: &PubSubResponse| { &m.topics }, + |m: &mut PubSubResponse| { &mut m.topics }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "peers", + |m: &PubSubResponse| { &m.peers }, + |m: &mut PubSubResponse| { &mut m.peers }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "PubSubResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static PubSubResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PubSubResponse, - }; - unsafe { - instance.get(PubSubResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(PubSubResponse::new) } } @@ -559,8 +536,8 @@ impl ::std::fmt::Debug for PubSubResponse { } impl ::protobuf::reflect::ProtobufValue for PubSubResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -848,7 +825,7 @@ impl ::protobuf::Message for PubSubMessage { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -861,60 +838,50 @@ impl ::protobuf::Message for PubSubMessage { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "from", - |m: &PubSubMessage| { &m.from }, - |m: &mut PubSubMessage| { &mut m.from }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "data", - |m: &PubSubMessage| { &m.data }, - |m: &mut PubSubMessage| { &mut m.data }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "seqno", - |m: &PubSubMessage| { &m.seqno }, - |m: &mut PubSubMessage| { &mut m.seqno }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "topicIDs", - |m: &PubSubMessage| { &m.topicIDs }, - |m: &mut PubSubMessage| { &mut m.topicIDs }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "signature", - |m: &PubSubMessage| { &m.signature }, - |m: &mut PubSubMessage| { &mut m.signature }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "key", - |m: &PubSubMessage| { &m.key }, - |m: &mut PubSubMessage| { &mut m.key }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "PubSubMessage", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "from", + |m: &PubSubMessage| { &m.from }, + |m: &mut PubSubMessage| { &mut m.from }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "data", + |m: &PubSubMessage| { &m.data }, + |m: &mut PubSubMessage| { &mut m.data }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "seqno", + |m: &PubSubMessage| { &m.seqno }, + |m: &mut PubSubMessage| { &mut m.seqno }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "topicIDs", + |m: &PubSubMessage| { &m.topicIDs }, + |m: &mut PubSubMessage| { &mut m.topicIDs }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "signature", + |m: &PubSubMessage| { &m.signature }, + |m: &mut PubSubMessage| { &mut m.signature }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "key", + |m: &PubSubMessage| { &m.key }, + |m: &mut PubSubMessage| { &mut m.key }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "PubSubMessage", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static PubSubMessage { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PubSubMessage, - }; - unsafe { - instance.get(PubSubMessage::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(PubSubMessage::new) } } @@ -937,8 +904,8 @@ impl ::std::fmt::Debug for PubSubMessage { } impl ::protobuf::reflect::ProtobufValue for PubSubMessage { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1083,7 +1050,7 @@ impl ::protobuf::Message for PubSubPeer { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1096,40 +1063,30 @@ impl ::protobuf::Message for PubSubPeer { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "topic", - |m: &PubSubPeer| { &m.topic }, - |m: &mut PubSubPeer| { &mut m.topic }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "peerID", - |m: &PubSubPeer| { &m.peerID }, - |m: &mut PubSubPeer| { &mut m.peerID }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "PubSubPeer", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "topic", + |m: &PubSubPeer| { &m.topic }, + |m: &mut PubSubPeer| { &mut m.topic }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "peerID", + |m: &PubSubPeer| { &m.peerID }, + |m: &mut PubSubPeer| { &mut m.peerID }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "PubSubPeer", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static PubSubPeer { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PubSubPeer, - }; - unsafe { - instance.get(PubSubPeer::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(PubSubPeer::new) } } @@ -1148,8 +1105,8 @@ impl ::std::fmt::Debug for PubSubPeer { } impl ::protobuf::reflect::ProtobufValue for PubSubPeer { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1187,15 +1144,10 @@ impl ::protobuf::ProtobufEnum for PSREQTYPE { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("PSREQTYPE", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("PSREQTYPE", file_descriptor_proto()) + }) } } @@ -1209,8 +1161,8 @@ impl ::std::default::Default for PSREQTYPE { } impl ::protobuf::reflect::ProtobufValue for PSREQTYPE { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -1231,119 +1183,115 @@ static file_descriptor_proto_data: &'static [u8] = b"\ rID\x18\x02\x20\x01(\tR\x06peerID*S\n\tPSREQTYPE\x12\x11\n\rPS_GET_TOPIC\ S\x10\0\x12\x11\n\rPS_LIST_PEERS\x10\x01\x12\x10\n\x0cPS_SUBSCRIBE\x10\ \x02\x12\x0e\n\nPS_PUBLISH\x10\x032B\n\tPubSubAPI\x125\n\x06PubSub\x12\ - \x11.pb.PubSubRequest\x1a\x12.pb.PubSubResponse\"\0(\x010\x01J\xc7\x15\n\ + \x11.pb.PubSubRequest\x1a\x12.pb.PubSubResponse\"\0(\x010\x01J\xe4\x15\n\ \x06\x12\x04\0\0E\x01\n\x08\n\x01\x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\ - \x12\x03\x01\x08\n\nt\n\x02\x06\0\x12\x04\x05\0\t\x01\x1ah\x20PubSubAPI\ + \x12\x03\x01\x08\n\nv\n\x02\x06\0\x12\x04\x05\0\t\x01\x1aj\x20PubSubAPI\ \x20provides\x20a\x20libp2p\x20pubsub\x20API\x20and\x20is\x20equivalent\ - \x20to\x20go-ipfs\n\x20`ipfs\x20pubsub`\x20subset\x20of\x20commands.\n\n\ - \n\n\x03\x06\0\x01\x12\x03\x05\x08\x11\nt\n\x04\x06\0\x02\0\x12\x03\x08\ - \x04H\x1ag\x20PubSub\x20allows\x20controlling\x20libp2p\x20pubsub\x20top\ - ics\x20and\x20subscriptions\x20using\n\x20a\x20bidirectional\x20streamin\ - g\x20API\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\x08\x08\x0e\n\x0c\n\x05\ - \x06\0\x02\0\x05\x12\x03\x08\x0f\x15\n\x0c\n\x05\x06\0\x02\0\x02\x12\x03\ - \x08\x16#\n\x0c\n\x05\x06\0\x02\0\x06\x12\x03\x08.4\n\x0c\n\x05\x06\0\ - \x02\0\x03\x12\x03\x085C\nR\n\x02\x05\0\x12\x04\x0c\0\x15\x01\x1aF\x20PS\ - REQTYPE\x20indicates\x20the\x20particular\x20PubSubAPI\x20request\x20bei\ - ng\x20performed\n\n\n\n\x03\x05\0\x01\x12\x03\x0c\x05\x0e\nQ\n\x04\x05\0\ - \x02\0\x12\x03\x0e\x04\x16\x1aD\x20PS_GET_TOPICS\x20is\x20used\x20to\x20\ - return\x20a\x20list\x20of\x20subscribed\x20pubsub\x20topics\n\n\x0c\n\ - \x05\x05\0\x02\0\x01\x12\x03\x0e\x04\x11\n\x0c\n\x05\x05\0\x02\0\x02\x12\ - \x03\x0e\x14\x15\nh\n\x04\x05\0\x02\x01\x12\x03\x10\x04\x16\x1a[\x20PS_L\ - IST_PEERS\x20is\x20used\x20to\x20return\x20a\x20list\x20of\x20peers\x20s\ - ubscribed\x20to\x20topics\x20we\x20are\x20subscribed\x20to\n\n\x0c\n\x05\ - \x05\0\x02\x01\x01\x12\x03\x10\x04\x11\n\x0c\n\x05\x05\0\x02\x01\x02\x12\ - \x03\x10\x14\x15\n\\\n\x04\x05\0\x02\x02\x12\x03\x12\x04\x15\x1aO\x20PS_\ - SUBSCRIBE\x20is\x20used\x20to\x20establish\x20a\x20persistent\x20subscri\ - ption\x20to\x20a\x20pubsub\x20topic\n\n\x0c\n\x05\x05\0\x02\x02\x01\x12\ - \x03\x12\x04\x10\n\x0c\n\x05\x05\0\x02\x02\x02\x12\x03\x12\x13\x14\nI\n\ - \x04\x05\0\x02\x03\x12\x03\x14\x04\x13\x1a<\x20PS_PUBLISH\x20is\x20used\ - \x20to\x20publisbh\x20a\x20message\x20to\x20a\x20pubsub\x20topic\n\n\x0c\ - \n\x05\x05\0\x02\x03\x01\x12\x03\x14\x04\x0e\n\x0c\n\x05\x05\0\x02\x03\ - \x02\x12\x03\x14\x11\x12\n\n\n\x02\x04\0\x12\x04\x17\0\x20\x01\n\n\n\x03\ - \x04\0\x01\x12\x03\x17\x08\x15\nI\n\x04\x04\0\x02\0\x12\x03\x19\x04\x1e\ - \x1a<\x20indicates\x20the\x20particular\x20PubSubAPI\x20request\x20being\ - \x20performed\n\n\r\n\x05\x04\0\x02\0\x04\x12\x04\x19\x04\x17\x17\n\x0c\ - \n\x05\x04\0\x02\0\x06\x12\x03\x19\x04\r\n\x0c\n\x05\x04\0\x02\0\x01\x12\ - \x03\x19\x0e\x19\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\x19\x1c\x1d\nq\n\ - \x04\x04\0\x02\x01\x12\x03\x1c\x04\x1f\x1ad\x20topics\x20to\x20request\ - \x20peers\x20from,\x20or\x20publish\x20data\x20to\n\x20sent\x20by:\x20PS\ - _LIST_PEERS,\x20PS_SUBSCRIBE,\x20PS_PUBLISH\n\n\x0c\n\x05\x04\0\x02\x01\ - \x04\x12\x03\x1c\x04\x0c\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03\x1c\r\x13\ - \n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03\x1c\x14\x1a\n\x0c\n\x05\x04\0\x02\ - \x01\x03\x12\x03\x1c\x1d\x1e\n:\n\x04\x04\0\x02\x02\x12\x03\x1f\x04\x13\ - \x1a-\x20data\x20to\x20sent\x20to\x20topics\n\x20sent\x20by:\x20PS_PUBLI\ - SH\n\n\r\n\x05\x04\0\x02\x02\x04\x12\x04\x1f\x04\x1c\x1f\n\x0c\n\x05\x04\ - \0\x02\x02\x05\x12\x03\x1f\x04\t\n\x0c\n\x05\x04\0\x02\x02\x01\x12\x03\ - \x1f\n\x0e\n\x0c\n\x05\x04\0\x02\x02\x03\x12\x03\x1f\x11\x12\n\n\n\x02\ - \x04\x01\x12\x04\"\0.\x01\n\n\n\x03\x04\x01\x01\x12\x03\"\x08\x16\nI\n\ - \x04\x04\x01\x02\0\x12\x03$\x04\x1e\x1a<\x20indicates\x20the\x20particul\ - ar\x20PubSubAPI\x20request\x20being\x20performed\n\n\r\n\x05\x04\x01\x02\ - \0\x04\x12\x04$\x04\"\x18\n\x0c\n\x05\x04\x01\x02\0\x06\x12\x03$\x04\r\n\ - \x0c\n\x05\x04\x01\x02\0\x01\x12\x03$\x0e\x19\n\x0c\n\x05\x04\x01\x02\0\ - \x03\x12\x03$\x1c\x1d\nL\n\x04\x04\x01\x02\x01\x12\x03'\x04'\x1a?\x20mes\ - sages\x20we\x20have\x20received\x20from\x20a\x20topic\n\x20sent\x20by:\ - \x20PS_SUBSCRIBE\n\n\x0c\n\x05\x04\x01\x02\x01\x04\x12\x03'\x04\x0c\n\ - \x0c\n\x05\x04\x01\x02\x01\x06\x12\x03'\r\x1a\n\x0c\n\x05\x04\x01\x02\ - \x01\x01\x12\x03'\x1b\"\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03'%&\n2\n\ - \x04\x04\x01\x02\x02\x12\x03*\x04\x1f\x1a%\x20topic\x20names\n\x20sent\ - \x20by:\x20PS_GET_TOPICS\n\n\x0c\n\x05\x04\x01\x02\x02\x04\x12\x03*\x04\ - \x0c\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\x03*\r\x13\n\x0c\n\x05\x04\x01\ - \x02\x02\x01\x12\x03*\x14\x1a\n\x0c\n\x05\x04\x01\x02\x02\x03\x12\x03*\ - \x1d\x1e\n3\n\x04\x04\x01\x02\x03\x12\x03-\x04\"\x1a&\x20pubsub\x20peers\ - \n\x20sent\x20by:\x20PS_LIST_PEERS\n\n\x0c\n\x05\x04\x01\x02\x03\x04\x12\ - \x03-\x04\x0c\n\x0c\n\x05\x04\x01\x02\x03\x06\x12\x03-\r\x17\n\x0c\n\x05\ - \x04\x01\x02\x03\x01\x12\x03-\x18\x1d\n\x0c\n\x05\x04\x01\x02\x03\x03\ - \x12\x03-\x20!\n\n\n\x02\x04\x02\x12\x040\0=\x01\n\n\n\x03\x04\x02\x01\ - \x12\x030\x08\x15\n'\n\x04\x04\x02\x02\0\x12\x032\x04\x13\x1a\x1a\x20who\ - \x20this\x20message\x20is\x20from\n\n\r\n\x05\x04\x02\x02\0\x04\x12\x042\ - \x040\x17\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x032\x04\t\n\x0c\n\x05\x04\ - \x02\x02\0\x01\x12\x032\n\x0e\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x032\x11\ - \x12\n'\n\x04\x04\x02\x02\x01\x12\x034\x04\x13\x1a\x1a\x20the\x20data\ - \x20of\x20this\x20message\n\n\r\n\x05\x04\x02\x02\x01\x04\x12\x044\x042\ - \x13\n\x0c\n\x05\x04\x02\x02\x01\x05\x12\x034\x04\t\n\x0c\n\x05\x04\x02\ - \x02\x01\x01\x12\x034\n\x0e\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x034\x11\ - \x12\n2\n\x04\x04\x02\x02\x02\x12\x036\x04\x14\x1a%\x20the\x20sequence\ - \x20number\x20of\x20this\x20message\n\n\r\n\x05\x04\x02\x02\x02\x04\x12\ - \x046\x044\x13\n\x0c\n\x05\x04\x02\x02\x02\x05\x12\x036\x04\t\n\x0c\n\ - \x05\x04\x02\x02\x02\x01\x12\x036\n\x0f\n\x0c\n\x05\x04\x02\x02\x02\x03\ - \x12\x036\x12\x13\n4\n\x04\x04\x02\x02\x03\x12\x038\x04!\x1a'\x20the\x20\ - topic\x20IDs\x20this\x20message\x20is\x20sent\x20to\n\n\x0c\n\x05\x04\ - \x02\x02\x03\x04\x12\x038\x04\x0c\n\x0c\n\x05\x04\x02\x02\x03\x05\x12\ - \x038\r\x13\n\x0c\n\x05\x04\x02\x02\x03\x01\x12\x038\x14\x1c\n\x0c\n\x05\ - \x04\x02\x02\x03\x03\x12\x038\x1f\x20\n*\n\x04\x04\x02\x02\x04\x12\x03:\ - \x04\x18\x1a\x1d\x20the\x20signature\x20of\x20the\x20sender\n\n\r\n\x05\ - \x04\x02\x02\x04\x04\x12\x04:\x048!\n\x0c\n\x05\x04\x02\x02\x04\x05\x12\ - \x03:\x04\t\n\x0c\n\x05\x04\x02\x02\x04\x01\x12\x03:\n\x13\n\x0c\n\x05\ - \x04\x02\x02\x04\x03\x12\x03:\x16\x17\n$\n\x04\x04\x02\x02\x05\x12\x03<\ - \x04\x12\x1a\x17\x20the\x20key\x20of\x20the\x20sender\n\n\r\n\x05\x04\ - \x02\x02\x05\x04\x12\x04<\x04:\x18\n\x0c\n\x05\x04\x02\x02\x05\x05\x12\ - \x03<\x04\t\n\x0c\n\x05\x04\x02\x02\x05\x01\x12\x03<\n\r\n\x0c\n\x05\x04\ - \x02\x02\x05\x03\x12\x03<\x10\x11\n2\n\x02\x04\x03\x12\x04@\0E\x01\x1a&\ - \x20represents\x20an\x20individual\x20pubsub\x20peer\n\n\n\n\x03\x04\x03\ - \x01\x12\x03@\x08\x12\n-\n\x04\x04\x03\x02\0\x12\x03B\x04\x15\x1a\x20\ - \x20the\x20topic\x20this\x20peer\x20belongs\x20to\n\n\r\n\x05\x04\x03\ - \x02\0\x04\x12\x04B\x04@\x14\n\x0c\n\x05\x04\x03\x02\0\x05\x12\x03B\x04\ - \n\n\x0c\n\x05\x04\x03\x02\0\x01\x12\x03B\x0b\x10\n\x0c\n\x05\x04\x03\ - \x02\0\x03\x12\x03B\x13\x14\n\"\n\x04\x04\x03\x02\x01\x12\x03D\x04\x16\ - \x1a\x15\x20the\x20id\x20of\x20this\x20peer\n\n\r\n\x05\x04\x03\x02\x01\ - \x04\x12\x04D\x04B\x15\n\x0c\n\x05\x04\x03\x02\x01\x05\x12\x03D\x04\n\n\ - \x0c\n\x05\x04\x03\x02\x01\x01\x12\x03D\x0b\x11\n\x0c\n\x05\x04\x03\x02\ - \x01\x03\x12\x03D\x14\x15b\x06proto3\ + \x20to\x20go-ipfs\r\n\x20`ipfs\x20pubsub`\x20subset\x20of\x20commands.\r\ + \n\n\n\n\x03\x06\0\x01\x12\x03\x05\x08\x11\nv\n\x04\x06\0\x02\0\x12\x03\ + \x08\x04H\x1ai\x20PubSub\x20allows\x20controlling\x20libp2p\x20pubsub\ + \x20topics\x20and\x20subscriptions\x20using\r\n\x20a\x20bidirectional\ + \x20streaming\x20API\r\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\x08\x08\x0e\ + \n\x0c\n\x05\x06\0\x02\0\x05\x12\x03\x08\x0f\x15\n\x0c\n\x05\x06\0\x02\0\ + \x02\x12\x03\x08\x16#\n\x0c\n\x05\x06\0\x02\0\x06\x12\x03\x08.4\n\x0c\n\ + \x05\x06\0\x02\0\x03\x12\x03\x085C\nS\n\x02\x05\0\x12\x04\x0c\0\x15\x01\ + \x1aG\x20PSREQTYPE\x20indicates\x20the\x20particular\x20PubSubAPI\x20req\ + uest\x20being\x20performed\r\n\n\n\n\x03\x05\0\x01\x12\x03\x0c\x05\x0e\n\ + R\n\x04\x05\0\x02\0\x12\x03\x0e\x04\x16\x1aE\x20PS_GET_TOPICS\x20is\x20u\ + sed\x20to\x20return\x20a\x20list\x20of\x20subscribed\x20pubsub\x20topics\ + \r\n\n\x0c\n\x05\x05\0\x02\0\x01\x12\x03\x0e\x04\x11\n\x0c\n\x05\x05\0\ + \x02\0\x02\x12\x03\x0e\x14\x15\ni\n\x04\x05\0\x02\x01\x12\x03\x10\x04\ + \x16\x1a\\\x20PS_LIST_PEERS\x20is\x20used\x20to\x20return\x20a\x20list\ + \x20of\x20peers\x20subscribed\x20to\x20topics\x20we\x20are\x20subscribed\ + \x20to\r\n\n\x0c\n\x05\x05\0\x02\x01\x01\x12\x03\x10\x04\x11\n\x0c\n\x05\ + \x05\0\x02\x01\x02\x12\x03\x10\x14\x15\n]\n\x04\x05\0\x02\x02\x12\x03\ + \x12\x04\x15\x1aP\x20PS_SUBSCRIBE\x20is\x20used\x20to\x20establish\x20a\ + \x20persistent\x20subscription\x20to\x20a\x20pubsub\x20topic\r\n\n\x0c\n\ + \x05\x05\0\x02\x02\x01\x12\x03\x12\x04\x10\n\x0c\n\x05\x05\0\x02\x02\x02\ + \x12\x03\x12\x13\x14\nI\n\x04\x05\0\x02\x03\x12\x03\x14\x04\x13\x1a<\x20\ + PS_PUBLISH\x20is\x20used\x20to\x20publish\x20a\x20message\x20to\x20a\x20\ + pubsub\x20topic\r\n\n\x0c\n\x05\x05\0\x02\x03\x01\x12\x03\x14\x04\x0e\n\ + \x0c\n\x05\x05\0\x02\x03\x02\x12\x03\x14\x11\x12\n\n\n\x02\x04\0\x12\x04\ + \x17\0\x20\x01\n\n\n\x03\x04\0\x01\x12\x03\x17\x08\x15\nJ\n\x04\x04\0\ + \x02\0\x12\x03\x19\x04\x1e\x1a=\x20indicates\x20the\x20particular\x20Pub\ + SubAPI\x20request\x20being\x20performed\r\n\n\r\n\x05\x04\0\x02\0\x04\ + \x12\x04\x19\x04\x17\x17\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03\x19\x04\r\n\ + \x0c\n\x05\x04\0\x02\0\x01\x12\x03\x19\x0e\x19\n\x0c\n\x05\x04\0\x02\0\ + \x03\x12\x03\x19\x1c\x1d\ns\n\x04\x04\0\x02\x01\x12\x03\x1c\x04\x1f\x1af\ + \x20topics\x20to\x20request\x20peers\x20from,\x20or\x20publish\x20data\ + \x20to\r\n\x20sent\x20by:\x20PS_LIST_PEERS,\x20PS_SUBSCRIBE,\x20PS_PUBLI\ + SH\r\n\n\x0c\n\x05\x04\0\x02\x01\x04\x12\x03\x1c\x04\x0c\n\x0c\n\x05\x04\ + \0\x02\x01\x05\x12\x03\x1c\r\x13\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03\ + \x1c\x14\x1a\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03\x1c\x1d\x1e\n<\n\x04\ + \x04\0\x02\x02\x12\x03\x1f\x04\x13\x1a/\x20data\x20to\x20sent\x20to\x20t\ + opics\r\n\x20sent\x20by:\x20PS_PUBLISH\r\n\n\r\n\x05\x04\0\x02\x02\x04\ + \x12\x04\x1f\x04\x1c\x1f\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x03\x1f\x04\t\ + \n\x0c\n\x05\x04\0\x02\x02\x01\x12\x03\x1f\n\x0e\n\x0c\n\x05\x04\0\x02\ + \x02\x03\x12\x03\x1f\x11\x12\n\n\n\x02\x04\x01\x12\x04\"\0.\x01\n\n\n\ + \x03\x04\x01\x01\x12\x03\"\x08\x16\nJ\n\x04\x04\x01\x02\0\x12\x03$\x04\ + \x1e\x1a=\x20indicates\x20the\x20particular\x20PubSubAPI\x20request\x20b\ + eing\x20performed\r\n\n\r\n\x05\x04\x01\x02\0\x04\x12\x04$\x04\"\x18\n\ + \x0c\n\x05\x04\x01\x02\0\x06\x12\x03$\x04\r\n\x0c\n\x05\x04\x01\x02\0\ + \x01\x12\x03$\x0e\x19\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03$\x1c\x1d\nN\ + \n\x04\x04\x01\x02\x01\x12\x03'\x04'\x1aA\x20messages\x20we\x20have\x20r\ + eceived\x20from\x20a\x20topic\r\n\x20sent\x20by:\x20PS_SUBSCRIBE\r\n\n\ + \x0c\n\x05\x04\x01\x02\x01\x04\x12\x03'\x04\x0c\n\x0c\n\x05\x04\x01\x02\ + \x01\x06\x12\x03'\r\x1a\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03'\x1b\"\n\ + \x0c\n\x05\x04\x01\x02\x01\x03\x12\x03'%&\n4\n\x04\x04\x01\x02\x02\x12\ + \x03*\x04\x1f\x1a'\x20topic\x20names\r\n\x20sent\x20by:\x20PS_GET_TOPICS\ + \r\n\n\x0c\n\x05\x04\x01\x02\x02\x04\x12\x03*\x04\x0c\n\x0c\n\x05\x04\ + \x01\x02\x02\x05\x12\x03*\r\x13\n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x03*\ + \x14\x1a\n\x0c\n\x05\x04\x01\x02\x02\x03\x12\x03*\x1d\x1e\n5\n\x04\x04\ + \x01\x02\x03\x12\x03-\x04\"\x1a(\x20pubsub\x20peers\r\n\x20sent\x20by:\ + \x20PS_LIST_PEERS\r\n\n\x0c\n\x05\x04\x01\x02\x03\x04\x12\x03-\x04\x0c\n\ + \x0c\n\x05\x04\x01\x02\x03\x06\x12\x03-\r\x17\n\x0c\n\x05\x04\x01\x02\ + \x03\x01\x12\x03-\x18\x1d\n\x0c\n\x05\x04\x01\x02\x03\x03\x12\x03-\x20!\ + \n\n\n\x02\x04\x02\x12\x040\0=\x01\n\n\n\x03\x04\x02\x01\x12\x030\x08\ + \x15\n(\n\x04\x04\x02\x02\0\x12\x032\x04\x13\x1a\x1b\x20who\x20this\x20m\ + essage\x20is\x20from\r\n\n\r\n\x05\x04\x02\x02\0\x04\x12\x042\x040\x17\n\ + \x0c\n\x05\x04\x02\x02\0\x05\x12\x032\x04\t\n\x0c\n\x05\x04\x02\x02\0\ + \x01\x12\x032\n\x0e\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x032\x11\x12\n(\n\ + \x04\x04\x02\x02\x01\x12\x034\x04\x13\x1a\x1b\x20the\x20data\x20of\x20th\ + is\x20message\r\n\n\r\n\x05\x04\x02\x02\x01\x04\x12\x044\x042\x13\n\x0c\ + \n\x05\x04\x02\x02\x01\x05\x12\x034\x04\t\n\x0c\n\x05\x04\x02\x02\x01\ + \x01\x12\x034\n\x0e\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x034\x11\x12\n3\ + \n\x04\x04\x02\x02\x02\x12\x036\x04\x14\x1a&\x20the\x20sequence\x20numbe\ + r\x20of\x20this\x20message\r\n\n\r\n\x05\x04\x02\x02\x02\x04\x12\x046\ + \x044\x13\n\x0c\n\x05\x04\x02\x02\x02\x05\x12\x036\x04\t\n\x0c\n\x05\x04\ + \x02\x02\x02\x01\x12\x036\n\x0f\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x036\ + \x12\x13\n5\n\x04\x04\x02\x02\x03\x12\x038\x04!\x1a(\x20the\x20topic\x20\ + IDs\x20this\x20message\x20is\x20sent\x20to\r\n\n\x0c\n\x05\x04\x02\x02\ + \x03\x04\x12\x038\x04\x0c\n\x0c\n\x05\x04\x02\x02\x03\x05\x12\x038\r\x13\ + \n\x0c\n\x05\x04\x02\x02\x03\x01\x12\x038\x14\x1c\n\x0c\n\x05\x04\x02\ + \x02\x03\x03\x12\x038\x1f\x20\n+\n\x04\x04\x02\x02\x04\x12\x03:\x04\x18\ + \x1a\x1e\x20the\x20signature\x20of\x20the\x20sender\r\n\n\r\n\x05\x04\ + \x02\x02\x04\x04\x12\x04:\x048!\n\x0c\n\x05\x04\x02\x02\x04\x05\x12\x03:\ + \x04\t\n\x0c\n\x05\x04\x02\x02\x04\x01\x12\x03:\n\x13\n\x0c\n\x05\x04\ + \x02\x02\x04\x03\x12\x03:\x16\x17\n%\n\x04\x04\x02\x02\x05\x12\x03<\x04\ + \x12\x1a\x18\x20the\x20key\x20of\x20the\x20sender\r\n\n\r\n\x05\x04\x02\ + \x02\x05\x04\x12\x04<\x04:\x18\n\x0c\n\x05\x04\x02\x02\x05\x05\x12\x03<\ + \x04\t\n\x0c\n\x05\x04\x02\x02\x05\x01\x12\x03<\n\r\n\x0c\n\x05\x04\x02\ + \x02\x05\x03\x12\x03<\x10\x11\n3\n\x02\x04\x03\x12\x04@\0E\x01\x1a'\x20r\ + epresents\x20an\x20individual\x20pubsub\x20peer\r\n\n\n\n\x03\x04\x03\ + \x01\x12\x03@\x08\x12\n.\n\x04\x04\x03\x02\0\x12\x03B\x04\x15\x1a!\x20th\ + e\x20topic\x20this\x20peer\x20belongs\x20to\r\n\n\r\n\x05\x04\x03\x02\0\ + \x04\x12\x04B\x04@\x14\n\x0c\n\x05\x04\x03\x02\0\x05\x12\x03B\x04\n\n\ + \x0c\n\x05\x04\x03\x02\0\x01\x12\x03B\x0b\x10\n\x0c\n\x05\x04\x03\x02\0\ + \x03\x12\x03B\x13\x14\n#\n\x04\x04\x03\x02\x01\x12\x03D\x04\x16\x1a\x16\ + \x20the\x20id\x20of\x20this\x20peer\r\n\n\r\n\x05\x04\x03\x02\x01\x04\ + \x12\x04D\x04B\x15\n\x0c\n\x05\x04\x03\x02\x01\x05\x12\x03D\x04\n\n\x0c\ + \n\x05\x04\x03\x02\x01\x01\x12\x03D\x0b\x11\n\x0c\n\x05\x04\x03\x02\x01\ + \x03\x12\x03D\x14\x15b\x06proto3\ "; -static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/rs/src/pubsub_grpc.rs b/rs/src/pubsub_grpc.rs index 5cbf714..1ac7f91 100644 --- a/rs/src/pubsub_grpc.rs +++ b/rs/src/pubsub_grpc.rs @@ -44,7 +44,7 @@ impl PubSubApiClient { pub fn pub_sub(&self) -> ::grpcio::Result<(::grpcio::ClientDuplexSender, ::grpcio::ClientDuplexReceiver)> { self.pub_sub_opt(::grpcio::CallOption::default()) } - pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { + pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { self.client.spawn(f) } } diff --git a/rs/src/replication.rs b/rs/src/replication.rs index d1bc177..66d5d25 100644 --- a/rs/src/replication.rs +++ b/rs/src/replication.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `replication.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct Replication { @@ -296,7 +293,7 @@ impl ::protobuf::Message for Replication { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -309,60 +306,50 @@ impl ::protobuf::Message for Replication { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "header", - |m: &Replication| { &m.header }, - |m: &mut Replication| { &mut m.header }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "cids_bytes", - |m: &Replication| { &m.cids_bytes }, - |m: &mut Replication| { &mut m.cids_bytes }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "servers", - |m: &Replication| { &m.servers }, - |m: &mut Replication| { &mut m.servers }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "replication_factor", - |m: &Replication| { &m.replication_factor }, - |m: &mut Replication| { &mut m.replication_factor }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "refresh_interval_seconds", - |m: &Replication| { &m.refresh_interval_seconds }, - |m: &mut Replication| { &mut m.refresh_interval_seconds }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "server_down_delay_seconds", - |m: &Replication| { &m.server_down_delay_seconds }, - |m: &mut Replication| { &mut m.server_down_delay_seconds }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "Replication", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "header", + |m: &Replication| { &m.header }, + |m: &mut Replication| { &mut m.header }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "cids_bytes", + |m: &Replication| { &m.cids_bytes }, + |m: &mut Replication| { &mut m.cids_bytes }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "servers", + |m: &Replication| { &m.servers }, + |m: &mut Replication| { &mut m.servers }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "replication_factor", + |m: &Replication| { &m.replication_factor }, + |m: &mut Replication| { &mut m.replication_factor }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "refresh_interval_seconds", + |m: &Replication| { &m.refresh_interval_seconds }, + |m: &mut Replication| { &mut m.refresh_interval_seconds }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "server_down_delay_seconds", + |m: &Replication| { &m.server_down_delay_seconds }, + |m: &mut Replication| { &mut m.server_down_delay_seconds }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "Replication", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static Replication { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Replication, - }; - unsafe { - instance.get(Replication::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(Replication::new) } } @@ -385,8 +372,8 @@ impl ::std::fmt::Debug for Replication { } impl ::protobuf::reflect::ProtobufValue for Replication { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -414,7 +401,7 @@ impl ServerSource { pub fn get_addr_info(&self) -> &AddrInfo { - self.addr_info.as_ref().unwrap_or_else(|| AddrInfo::default_instance()) + self.addr_info.as_ref().unwrap_or_else(|| ::default_instance()) } pub fn clear_addr_info(&mut self) { self.addr_info.clear(); @@ -510,7 +497,7 @@ impl ::protobuf::Message for ServerSource { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -523,35 +510,25 @@ impl ::protobuf::Message for ServerSource { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "addr_info", - |m: &ServerSource| { &m.addr_info }, - |m: &mut ServerSource| { &mut m.addr_info }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ServerSource", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "addr_info", + |m: &ServerSource| { &m.addr_info }, + |m: &mut ServerSource| { &mut m.addr_info }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ServerSource", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ServerSource { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ServerSource, - }; - unsafe { - instance.get(ServerSource::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ServerSource::new) } } @@ -569,8 +546,8 @@ impl ::std::fmt::Debug for ServerSource { } impl ::protobuf::reflect::ProtobufValue for ServerSource { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -743,7 +720,7 @@ impl ::protobuf::Message for AddrInfo { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -756,45 +733,35 @@ impl ::protobuf::Message for AddrInfo { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "id_bytes", - |m: &AddrInfo| { &m.id_bytes }, - |m: &mut AddrInfo| { &mut m.id_bytes }, - )); - fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "addrs_bytes", - |m: &AddrInfo| { &m.addrs_bytes }, - |m: &mut AddrInfo| { &mut m.addrs_bytes }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( - "grpc_port", - |m: &AddrInfo| { &m.grpc_port }, - |m: &mut AddrInfo| { &mut m.grpc_port }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "AddrInfo", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "id_bytes", + |m: &AddrInfo| { &m.id_bytes }, + |m: &mut AddrInfo| { &mut m.id_bytes }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "addrs_bytes", + |m: &AddrInfo| { &m.addrs_bytes }, + |m: &mut AddrInfo| { &mut m.addrs_bytes }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "grpc_port", + |m: &AddrInfo| { &m.grpc_port }, + |m: &mut AddrInfo| { &mut m.grpc_port }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "AddrInfo", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static AddrInfo { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const AddrInfo, - }; - unsafe { - instance.get(AddrInfo::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(AddrInfo::new) } } @@ -814,8 +781,8 @@ impl ::std::fmt::Debug for AddrInfo { } impl ::protobuf::reflect::ProtobufValue for AddrInfo { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -989,7 +956,7 @@ impl ::protobuf::Message for Subscription { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1002,45 +969,35 @@ impl ::protobuf::Message for Subscription { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "topic", - |m: &Subscription| { &m.topic }, - |m: &mut Subscription| { &mut m.topic }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "author_id_bytes", - |m: &Subscription| { &m.author_id_bytes }, - |m: &mut Subscription| { &mut m.author_id_bytes }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "remove", - |m: &Subscription| { &m.remove }, - |m: &mut Subscription| { &mut m.remove }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "Subscription", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "topic", + |m: &Subscription| { &m.topic }, + |m: &mut Subscription| { &mut m.topic }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "author_id_bytes", + |m: &Subscription| { &m.author_id_bytes }, + |m: &mut Subscription| { &mut m.author_id_bytes }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "remove", + |m: &Subscription| { &m.remove }, + |m: &mut Subscription| { &mut m.remove }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "Subscription", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static Subscription { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Subscription, - }; - unsafe { - instance.get(Subscription::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(Subscription::new) } } @@ -1060,8 +1017,8 @@ impl ::std::fmt::Debug for Subscription { } impl ::protobuf::reflect::ProtobufValue for Subscription { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1250,7 +1207,7 @@ impl ::protobuf::Message for ReplicationStatus { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1263,50 +1220,40 @@ impl ::protobuf::Message for ReplicationStatus { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "ok", - |m: &ReplicationStatus| { &m.ok }, - |m: &mut ReplicationStatus| { &mut m.ok }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( - "is_active", - |m: &ReplicationStatus| { &m.is_active }, - |m: &mut ReplicationStatus| { &mut m.is_active }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "current_version", - |m: &ReplicationStatus| { &m.current_version }, - |m: &mut ReplicationStatus| { &mut m.current_version }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "target_version", - |m: &ReplicationStatus| { &m.target_version }, - |m: &mut ReplicationStatus| { &mut m.target_version }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "ReplicationStatus", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "ok", + |m: &ReplicationStatus| { &m.ok }, + |m: &mut ReplicationStatus| { &mut m.ok }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "is_active", + |m: &ReplicationStatus| { &m.is_active }, + |m: &mut ReplicationStatus| { &mut m.is_active }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "current_version", + |m: &ReplicationStatus| { &m.current_version }, + |m: &mut ReplicationStatus| { &mut m.current_version }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "target_version", + |m: &ReplicationStatus| { &m.target_version }, + |m: &mut ReplicationStatus| { &mut m.target_version }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "ReplicationStatus", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static ReplicationStatus { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ReplicationStatus, - }; - unsafe { - instance.get(ReplicationStatus::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(ReplicationStatus::new) } } @@ -1327,8 +1274,8 @@ impl ::std::fmt::Debug for ReplicationStatus { } impl ::protobuf::reflect::ProtobufValue for ReplicationStatus { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1502,7 +1449,7 @@ impl ::protobuf::Message for SubscriptionUpdate { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1515,45 +1462,35 @@ impl ::protobuf::Message for SubscriptionUpdate { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( - "version", - |m: &SubscriptionUpdate| { &m.version }, - |m: &mut SubscriptionUpdate| { &mut m.version }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "replication_bytes", - |m: &SubscriptionUpdate| { &m.replication_bytes }, - |m: &mut SubscriptionUpdate| { &mut m.replication_bytes }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( - "signature", - |m: &SubscriptionUpdate| { &m.signature }, - |m: &mut SubscriptionUpdate| { &mut m.signature }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "SubscriptionUpdate", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "version", + |m: &SubscriptionUpdate| { &m.version }, + |m: &mut SubscriptionUpdate| { &mut m.version }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "replication_bytes", + |m: &SubscriptionUpdate| { &m.replication_bytes }, + |m: &mut SubscriptionUpdate| { &mut m.replication_bytes }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "signature", + |m: &SubscriptionUpdate| { &m.signature }, + |m: &mut SubscriptionUpdate| { &mut m.signature }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "SubscriptionUpdate", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static SubscriptionUpdate { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const SubscriptionUpdate, - }; - unsafe { - instance.get(SubscriptionUpdate::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(SubscriptionUpdate::new) } } @@ -1573,8 +1510,8 @@ impl ::std::fmt::Debug for SubscriptionUpdate { } impl ::protobuf::reflect::ProtobufValue for SubscriptionUpdate { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1603,7 +1540,7 @@ impl SignedSubscription { pub fn get_sub_part(&self) -> &Subscription { - self.sub_part.as_ref().unwrap_or_else(|| Subscription::default_instance()) + self.sub_part.as_ref().unwrap_or_else(|| ::default_instance()) } pub fn clear_sub_part(&mut self) { self.sub_part.clear(); @@ -1636,7 +1573,7 @@ impl SignedSubscription { pub fn get_update_part(&self) -> &SubscriptionUpdate { - self.update_part.as_ref().unwrap_or_else(|| SubscriptionUpdate::default_instance()) + self.update_part.as_ref().unwrap_or_else(|| ::default_instance()) } pub fn clear_update_part(&mut self) { self.update_part.clear(); @@ -1749,7 +1686,7 @@ impl ::protobuf::Message for SignedSubscription { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -1762,40 +1699,30 @@ impl ::protobuf::Message for SignedSubscription { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "sub_part", - |m: &SignedSubscription| { &m.sub_part }, - |m: &mut SignedSubscription| { &mut m.sub_part }, - )); - fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( - "update_part", - |m: &SignedSubscription| { &m.update_part }, - |m: &mut SignedSubscription| { &mut m.update_part }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "SignedSubscription", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "sub_part", + |m: &SignedSubscription| { &m.sub_part }, + |m: &mut SignedSubscription| { &mut m.sub_part }, + )); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( + "update_part", + |m: &SignedSubscription| { &m.update_part }, + |m: &mut SignedSubscription| { &mut m.update_part }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "SignedSubscription", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static SignedSubscription { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const SignedSubscription, - }; - unsafe { - instance.get(SignedSubscription::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(SignedSubscription::new) } } @@ -1814,8 +1741,8 @@ impl ::std::fmt::Debug for SignedSubscription { } impl ::protobuf::reflect::ProtobufValue for SignedSubscription { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -1847,174 +1774,170 @@ static file_descriptor_proto_data: &'static [u8] = b"\ b.Subscription\x1a\x15.pb.ReplicationStatus0\x01\x12A\n\x15GetSubscripti\ onUpdate\x12\x10.pb.Subscription\x1a\x16.pb.SubscriptionUpdate\x12D\n\ \x11SubmitReplication\x12\x16.pb.SignedSubscription\x1a\x15.pb.Replicati\ - onStatus0\x01J\xe7%\n\x06\x12\x04\0\0Z\x01\n\x08\n\x01\x0c\x12\x03\0\0\ - \x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\n`\n\x02\x04\0\x12\x04\x04\0\x18\ - \x01\x1aT\x20Replication\x20message\x20is\x20a\x20signable\x20data\x20st\ - ructure\x20to\x20represent\x20a\x20replication\x20scheme\n\n\n\n\x03\x04\ - \0\x01\x12\x03\x04\x08\x13\n\x9f\x02\n\x04\x04\0\x02\0\x12\x03\t\x04\x16\ - \x1a\x91\x02\x20Header\x20must\x20be\x20\"rtrade-replication\x20v0...\"\ - \x20for\x20development\x20stage,\x20this\x20is\x20a\x20required\x20secur\ - ity\x20header.\n\x20-\x20Avoid\x20collision\x20from\x20other\x20signed\ - \x20data.\n\x20-\x20Allow\x20future\x20versions\x20to\x20require\x20diff\ - erent\x20validation\x20rules.\n\x20Any\x20signer\x20must\x20understand\ - \x20every\x20header\x20tag\x20to\x20sign\x20documents.\n\n\r\n\x05\x04\0\ - \x02\0\x04\x12\x04\t\x04\x04\x14\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03\t\ - \x04\n\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03\t\x0b\x11\n\x0c\n\x05\x04\0\ - \x02\0\x03\x12\x03\t\x14\x15\ny\n\x04\x04\0\x02\x01\x12\x03\x0c\x04\"\ - \x1al\x20CIDs\x20is\x20the\x20list\x20of\x20contents\x20to\x20replicate.\ - \n\x20Please\x20use\x20helper\x20functions\x20GetCIDs\x20and\x20AddCIDs\ - \x20for\x20this\x20field\n\n\x0c\n\x05\x04\0\x02\x01\x04\x12\x03\x0c\x04\ - \x0c\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03\x0c\r\x12\n\x0c\n\x05\x04\0\ - \x02\x01\x01\x12\x03\x0c\x13\x1d\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03\ - \x0c\x20!\n]\n\x04\x04\0\x02\x02\x12\x03\x0e\x04&\x1aP\x20Servers\x20lis\ - t\x20the\x20candidate\x20severs\x20to\x20replicate\x20to,\x20in\x20the\ - \x20order\x20of\x20preference.\n\n\x0c\n\x05\x04\0\x02\x02\x04\x12\x03\ - \x0e\x04\x0c\n\x0c\n\x05\x04\0\x02\x02\x06\x12\x03\x0e\r\x19\n\x0c\n\x05\ - \x04\0\x02\x02\x01\x12\x03\x0e\x1a!\n\x0c\n\x05\x04\0\x02\x02\x03\x12\ - \x03\x0e$%\nH\n\x04\x04\0\x02\x03\x12\x03\x10\x04!\x1a;\x20replication_f\ - actor\x20is\x20the\x20number\x20of\x20replications\x20desired.\n\n\r\n\ - \x05\x04\0\x02\x03\x04\x12\x04\x10\x04\x0e&\n\x0c\n\x05\x04\0\x02\x03\ - \x05\x12\x03\x10\x04\t\n\x0c\n\x05\x04\0\x02\x03\x01\x12\x03\x10\n\x1c\n\ - \x0c\n\x05\x04\0\x02\x03\x03\x12\x03\x10\x1f\x20\n\xab\x02\n\x04\x04\0\ - \x02\x04\x12\x03\x14\x04'\x1a\x9d\x02\x20refresh_interval_seconds\x20is\ - \x20the\x20*suggested*\x20number\x20of\x20seconds\x20to\x20wait\x20befor\ - e\x20checking\x20\n\x20if\x20a\x20remote\x20server\x20is\x20up.\x20The\ - \x20first\x20check\x20should\x20be\x20random\x20from\x200\x20to\x20refre\ - sh_interval_seconds.\n\x20Each\x20replicator\x20can\x20have\x20it's\x20o\ - wn\x20max_interval.\x20A\x20sensible\x20default\x20value\x20should\x20be\ - \x20used\x20if\x20it\x20is\x200.\n\n\r\n\x05\x04\0\x02\x04\x04\x12\x04\ - \x14\x04\x10!\n\x0c\n\x05\x04\0\x02\x04\x05\x12\x03\x14\x04\t\n\x0c\n\ - \x05\x04\0\x02\x04\x01\x12\x03\x14\n\"\n\x0c\n\x05\x04\0\x02\x04\x03\x12\ - \x03\x14%&\n\xd2\x01\n\x04\x04\0\x02\x05\x12\x03\x17\x04(\x1a\xc4\x01\ - \x20server_down_delay_seconds\x20is\x20the\x20number\x20of\x20seconds\ - \x20to\x20wait\x20after\x20a\x20server\x20is\x20down\x20before\x20the\ - \x20\n\x20next\x20reserved\x20server\x20is\x20requested\x20to\x20be\x20a\ - ctive.\x20A\x20sensible\x20default\x20value\x20should\x20be\x20used\x20i\ - f\x20it\x20is\x200.\n\n\r\n\x05\x04\0\x02\x05\x04\x12\x04\x17\x04\x14'\n\ - \x0c\n\x05\x04\0\x02\x05\x05\x12\x03\x17\x04\t\n\x0c\n\x05\x04\0\x02\x05\ - \x01\x12\x03\x17\n#\n\x0c\n\x05\x04\0\x02\x05\x03\x12\x03\x17&'\n\x88\ - \x01\n\x02\x04\x01\x12\x04\x1c\0\x1e\x01\x1a|\x20ServerSource\x20is\x20a\ - \x20list\x20of\x20one\x20or\x20more\x20servers.\n\x20TODO:\x20add\x20fie\ - ld\x20to\x20allow\x20referring\x20to\x20a\x20list\x20of\x20servers\x20fr\ - om\x20another\x20file.\n\n\n\n\x03\x04\x01\x01\x12\x03\x1c\x08\x14\n\x0b\ - \n\x04\x04\x01\x02\0\x12\x03\x1d\x04\x1b\n\r\n\x05\x04\x01\x02\0\x04\x12\ - \x04\x1d\x04\x1c\x16\n\x0c\n\x05\x04\x01\x02\0\x06\x12\x03\x1d\x04\x0c\n\ - \x0c\n\x05\x04\x01\x02\0\x01\x12\x03\x1d\r\x16\n\x0c\n\x05\x04\x01\x02\0\ - \x03\x12\x03\x1d\x19\x1a\nk\n\x02\x04\x02\x12\x04!\0*\x01\x1a_\x20AddrIn\ - fo\x20can\x20be\x20used\x20to\x20ID\x20and\x20locate\x20a\x20server\x20(\ - see\x20also\x20libp2p/go-libp2p-core/peer#AddrInfo)\n\n\n\n\x03\x04\x02\ - \x01\x12\x03!\x08\x10\n\x9b\x01\n\x04\x04\x02\x02\0\x12\x03$\x04\x17\x1a\ - \x8d\x01\x20id_bytes\x20is\x20a\x20libp2p\x20peer\x20identity.\x20It\x20\ - is\x20used\x20to\x20verity\x20the\x20Peer's\x20public\x20key.\n\x20Pleas\ - e\x20use\x20helper\x20functions\x20GetID\x20and\x20SetID\x20for\x20this\ - \x20field\n\n\r\n\x05\x04\x02\x02\0\x04\x12\x04$\x04!\x12\n\x0c\n\x05\ - \x04\x02\x02\0\x05\x12\x03$\x04\t\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x03$\ - \n\x12\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x03$\x15\x16\n\x96\x01\n\x04\ - \x04\x02\x02\x01\x12\x03'\x04#\x1a\x88\x01\x20addrBytes\x20are\x20bytes\ - \x20of\x20Multiaddr\x20for\x20locating\x20this\x20peer.\n\x20Please\x20u\ - se\x20helper\x20functions\x20GetMultiAddrs,\x20and\x20SetMultiAddrs\x20f\ - or\x20this\x20field.\n\n\x0c\n\x05\x04\x02\x02\x01\x04\x12\x03'\x04\x0c\ - \n\x0c\n\x05\x04\x02\x02\x01\x05\x12\x03'\r\x12\n\x0c\n\x05\x04\x02\x02\ - \x01\x01\x12\x03'\x13\x1e\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03'!\"\nm\ - \n\x04\x04\x02\x02\x02\x12\x03)\x04\x18\x1a`\x20grpc\x20port\x20for\x20r\ - eplication\x20protocol.\x20will\x20be\x20optional\x20once\x20grpc\x20is\ - \x20integrated\x20into\x20multistream.\n\n\r\n\x05\x04\x02\x02\x02\x04\ - \x12\x04)\x04'#\n\x0c\n\x05\x04\x02\x02\x02\x05\x12\x03)\x04\t\n\x0c\n\ - \x05\x04\x02\x02\x02\x01\x12\x03)\n\x13\n\x0c\n\x05\x04\x02\x02\x02\x03\ - \x12\x03)\x16\x17\n;\n\x02\x06\0\x12\x04.\08\x01\x1a/\x20The\x20replicat\ - or\x20provides\x20replication\x20services.\n\n\n\n\x03\x06\0\x01\x12\x03\ - .\x08\x12\nm\n\x04\x06\0\x02\0\x12\x030\x04>\x1a`\x20Add\x20is\x20used\ - \x20to\x20add\x20a\x20replication\x20to\x20this\x20server,\x20changing\ - \x20it's\x20status\x20from\x20reserved\x20to\x20active.\n\n\x0c\n\x05\ - \x06\0\x02\0\x01\x12\x030\x08\x0b\n\x0c\n\x05\x06\0\x02\0\x02\x12\x030\r\ - \x19\n\x0c\n\x05\x06\0\x02\0\x06\x12\x030$*\n\x0c\n\x05\x06\0\x02\0\x03\ - \x12\x030+<\nY\n\x04\x06\0\x02\x01\x12\x032\x04A\x1aL\x20Status\x20retur\ - ns\x20an\x20updating\x20stream\x20of\x20the\x20replication\x20status\x20\ - on\x20the\x20server.\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x032\x08\x0e\n\ - \x0c\n\x05\x06\0\x02\x01\x02\x12\x032\x10\x1c\n\x0c\n\x05\x06\0\x02\x01\ - \x06\x12\x032'-\n\x0c\n\x05\x06\0\x02\x01\x03\x12\x032.?\nY\n\x04\x06\0\ - \x02\x02\x12\x034\x04J\x1aL\x20GetSubscriptionUpdate\x20returns\x20the\ - \x20latest\x20version\x20of\x20subscribed\x20replication\n\n\x0c\n\x05\ - \x06\0\x02\x02\x01\x12\x034\x08\x1d\n\x0c\n\x05\x06\0\x02\x02\x02\x12\ - \x034\x1f+\n\x0c\n\x05\x06\0\x02\x02\x03\x12\x0346H\n\xb5\x01\n\x04\x06\ - \0\x02\x03\x12\x037\x04R\x1a\xa7\x01\x20SubmitReplication\x20is\x20used\ - \x20by\x20client\x20agents\x20to\x20start\x20replications,\x20after\x20t\ - hey\x20\n\x20have\x20uploaded\x20the\x20files\x20and\x20retrieved\x20the\ - \x20cid,\x20and\x20collected\x20servers\x20to\x20replicate\x20too.\n\n\ - \x0c\n\x05\x06\0\x02\x03\x01\x12\x037\x08\x19\n\x0c\n\x05\x06\0\x02\x03\ - \x02\x12\x037\x1b-\n\x0c\n\x05\x06\0\x02\x03\x06\x12\x0378>\n\x0c\n\x05\ - \x06\0\x02\x03\x03\x12\x037?P\n\n\n\x02\x04\x03\x12\x04:\0A\x01\n\n\n\ - \x03\x04\x03\x01\x12\x03:\x08\x14\n\x0b\n\x04\x04\x03\x02\0\x12\x03;\x04\ - \x15\n\r\n\x05\x04\x03\x02\0\x04\x12\x04;\x04:\x15\n\x0c\n\x05\x04\x03\ - \x02\0\x05\x12\x03;\x04\n\n\x0c\n\x05\x04\x03\x02\0\x01\x12\x03;\x0b\x10\ - \n\x0c\n\x05\x04\x03\x02\0\x03\x12\x03;\x13\x14\n\x0b\n\x04\x04\x03\x02\ - \x01\x12\x03<\x04\x1e\n\r\n\x05\x04\x03\x02\x01\x04\x12\x04<\x04;\x15\n\ - \x0c\n\x05\x04\x03\x02\x01\x05\x12\x03<\x04\t\n\x0c\n\x05\x04\x03\x02\ - \x01\x01\x12\x03<\n\x19\n\x0c\n\x05\x04\x03\x02\x01\x03\x12\x03<\x1c\x1d\ - \n\x97\x01\n\x04\x04\x03\x02\x02\x12\x03@\x04\x14\x1a\x89\x01if\x20true,\ - \x20remove\x20this\x20Subscription.\nFor\x20replicator.Add,\x20deactive\ - \x20this\x20replication.\nFor\x20replicator.WaitForUpdates,\x20stop\x20r\ - eporting\x20updates.\n\n\r\n\x05\x04\x03\x02\x02\x04\x12\x04@\x04<\x1e\n\ - \x0c\n\x05\x04\x03\x02\x02\x05\x12\x03@\x04\x08\n\x0c\n\x05\x04\x03\x02\ - \x02\x01\x12\x03@\t\x0f\n\x0c\n\x05\x04\x03\x02\x02\x03\x12\x03@\x12\x13\ - \n\n\n\x02\x04\x04\x12\x04C\0L\x01\n\n\n\x03\x04\x04\x01\x12\x03C\x08\ - \x19\n4\n\x04\x04\x04\x02\0\x12\x03E\x04\x10\x1a'ok\x20report\x20success\ - \x20for\x20action\x20submitted\n\n\r\n\x05\x04\x04\x02\0\x04\x12\x04E\ - \x04C\x1a\n\x0c\n\x05\x04\x04\x02\0\x05\x12\x03E\x04\x08\n\x0c\n\x05\x04\ - \x04\x02\0\x01\x12\x03E\t\x0b\n\x0c\n\x05\x04\x04\x02\0\x03\x12\x03E\x0e\ - \x0f\nT\n\x04\x04\x04\x02\x01\x12\x03G\x04\x17\x1aGis_active\x20report\ - \x20if\x20the\x20replication\x20is\x20currently\x20active\x20on\x20this\ - \x20server\n\n\r\n\x05\x04\x04\x02\x01\x04\x12\x04G\x04E\x10\n\x0c\n\x05\ - \x04\x04\x02\x01\x05\x12\x03G\x04\x08\n\x0c\n\x05\x04\x04\x02\x01\x01\ - \x12\x03G\t\x12\n\x0c\n\x05\x04\x04\x02\x01\x03\x12\x03G\x15\x16\nX\n\ - \x04\x04\x04\x02\x02\x12\x03I\x04\x1e\x1aKcurrent_version\x20is\x20the\ - \x20highest\x20version\x20this\x20replicator/server\x20has\x20locally.\n\ - \n\r\n\x05\x04\x04\x02\x02\x04\x12\x04I\x04G\x17\n\x0c\n\x05\x04\x04\x02\ - \x02\x05\x12\x03I\x04\t\n\x0c\n\x05\x04\x04\x02\x02\x01\x12\x03I\n\x19\n\ - \x0c\n\x05\x04\x04\x02\x02\x03\x12\x03I\x1c\x1d\no\n\x04\x04\x04\x02\x03\ - \x12\x03K\x04\x1d\x1abtarget_version\x20is\x20the\x20highest\x20version\ - \x20this\x20replicator/server\x20knows\x20about\x20and\x20can\x20verify\ - \x20to\x20exist.\n\n\r\n\x05\x04\x04\x02\x03\x04\x12\x04K\x04I\x1e\n\x0c\ - \n\x05\x04\x04\x02\x03\x05\x12\x03K\x04\t\n\x0c\n\x05\x04\x04\x02\x03\ - \x01\x12\x03K\n\x18\n\x0c\n\x05\x04\x04\x02\x03\x03\x12\x03K\x1b\x1c\n\n\ - \n\x02\x04\x05\x12\x04N\0U\x01\n\n\n\x03\x04\x05\x01\x12\x03N\x08\x1a\n0\ - \n\x04\x04\x05\x02\0\x12\x03P\x04\x16\x1a#strictly\x20increasing\x20vers\ - ion\x20number\n\n\r\n\x05\x04\x05\x02\0\x04\x12\x04P\x04N\x1b\n\x0c\n\ + onStatus0\x01J\x8d&\n\x06\x12\x04\0\0Z\x01\n\x08\n\x01\x0c\x12\x03\0\0\ + \x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\na\n\x02\x04\0\x12\x04\x04\0\x18\ + \x01\x1aU\x20Replication\x20message\x20is\x20a\x20signable\x20data\x20st\ + ructure\x20to\x20represent\x20a\x20replication\x20scheme\r\n\n\n\n\x03\ + \x04\0\x01\x12\x03\x04\x08\x13\n\xa3\x02\n\x04\x04\0\x02\0\x12\x03\t\x04\ + \x16\x1a\x95\x02\x20Header\x20must\x20be\x20\"rtrade-replication\x20v0..\ + .\"\x20for\x20development\x20stage,\x20this\x20is\x20a\x20required\x20se\ + curity\x20header.\r\n\x20-\x20Avoid\x20collision\x20from\x20other\x20sig\ + ned\x20data.\r\n\x20-\x20Allow\x20future\x20versions\x20to\x20require\ + \x20different\x20validation\x20rules.\r\n\x20Any\x20signer\x20must\x20un\ + derstand\x20every\x20header\x20tag\x20to\x20sign\x20documents.\r\n\n\r\n\ + \x05\x04\0\x02\0\x04\x12\x04\t\x04\x04\x14\n\x0c\n\x05\x04\0\x02\0\x05\ + \x12\x03\t\x04\n\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03\t\x0b\x11\n\x0c\n\ + \x05\x04\0\x02\0\x03\x12\x03\t\x14\x15\n{\n\x04\x04\0\x02\x01\x12\x03\ + \x0c\x04\"\x1an\x20CIDs\x20is\x20the\x20list\x20of\x20contents\x20to\x20\ + replicate.\r\n\x20Please\x20use\x20helper\x20functions\x20GetCIDs\x20and\ + \x20AddCIDs\x20for\x20this\x20field\r\n\n\x0c\n\x05\x04\0\x02\x01\x04\ + \x12\x03\x0c\x04\x0c\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03\x0c\r\x12\n\ + \x0c\n\x05\x04\0\x02\x01\x01\x12\x03\x0c\x13\x1d\n\x0c\n\x05\x04\0\x02\ + \x01\x03\x12\x03\x0c\x20!\n^\n\x04\x04\0\x02\x02\x12\x03\x0e\x04&\x1aQ\ + \x20Servers\x20list\x20the\x20candidate\x20severs\x20to\x20replicate\x20\ + to,\x20in\x20the\x20order\x20of\x20preference.\r\n\n\x0c\n\x05\x04\0\x02\ + \x02\x04\x12\x03\x0e\x04\x0c\n\x0c\n\x05\x04\0\x02\x02\x06\x12\x03\x0e\r\ + \x19\n\x0c\n\x05\x04\0\x02\x02\x01\x12\x03\x0e\x1a!\n\x0c\n\x05\x04\0\ + \x02\x02\x03\x12\x03\x0e$%\nI\n\x04\x04\0\x02\x03\x12\x03\x10\x04!\x1a<\ + \x20replication_factor\x20is\x20the\x20number\x20of\x20replications\x20d\ + esired.\r\n\n\r\n\x05\x04\0\x02\x03\x04\x12\x04\x10\x04\x0e&\n\x0c\n\x05\ + \x04\0\x02\x03\x05\x12\x03\x10\x04\t\n\x0c\n\x05\x04\0\x02\x03\x01\x12\ + \x03\x10\n\x1c\n\x0c\n\x05\x04\0\x02\x03\x03\x12\x03\x10\x1f\x20\n\xae\ + \x02\n\x04\x04\0\x02\x04\x12\x03\x14\x04'\x1a\xa0\x02\x20refresh_interva\ + l_seconds\x20is\x20the\x20*suggested*\x20number\x20of\x20seconds\x20to\ + \x20wait\x20before\x20checking\x20\r\n\x20if\x20a\x20remote\x20server\ + \x20is\x20up.\x20The\x20first\x20check\x20should\x20be\x20random\x20from\ + \x200\x20to\x20refresh_interval_seconds.\r\n\x20Each\x20replicator\x20ca\ + n\x20have\x20it's\x20own\x20max_interval.\x20A\x20sensible\x20default\ + \x20value\x20should\x20be\x20used\x20if\x20it\x20is\x200.\r\n\n\r\n\x05\ + \x04\0\x02\x04\x04\x12\x04\x14\x04\x10!\n\x0c\n\x05\x04\0\x02\x04\x05\ + \x12\x03\x14\x04\t\n\x0c\n\x05\x04\0\x02\x04\x01\x12\x03\x14\n\"\n\x0c\n\ + \x05\x04\0\x02\x04\x03\x12\x03\x14%&\n\xd4\x01\n\x04\x04\0\x02\x05\x12\ + \x03\x17\x04(\x1a\xc6\x01\x20server_down_delay_seconds\x20is\x20the\x20n\ + umber\x20of\x20seconds\x20to\x20wait\x20after\x20a\x20server\x20is\x20do\ + wn\x20before\x20the\x20\r\n\x20next\x20reserved\x20server\x20is\x20reque\ + sted\x20to\x20be\x20active.\x20A\x20sensible\x20default\x20value\x20shou\ + ld\x20be\x20used\x20if\x20it\x20is\x200.\r\n\n\r\n\x05\x04\0\x02\x05\x04\ + \x12\x04\x17\x04\x14'\n\x0c\n\x05\x04\0\x02\x05\x05\x12\x03\x17\x04\t\n\ + \x0c\n\x05\x04\0\x02\x05\x01\x12\x03\x17\n#\n\x0c\n\x05\x04\0\x02\x05\ + \x03\x12\x03\x17&'\n\x8a\x01\n\x02\x04\x01\x12\x04\x1c\0\x1e\x01\x1a~\ + \x20ServerSource\x20is\x20a\x20list\x20of\x20one\x20or\x20more\x20server\ + s.\r\n\x20TODO:\x20add\x20field\x20to\x20allow\x20referring\x20to\x20a\ + \x20list\x20of\x20servers\x20from\x20another\x20file.\r\n\n\n\n\x03\x04\ + \x01\x01\x12\x03\x1c\x08\x14\n\x0b\n\x04\x04\x01\x02\0\x12\x03\x1d\x04\ + \x1b\n\r\n\x05\x04\x01\x02\0\x04\x12\x04\x1d\x04\x1c\x16\n\x0c\n\x05\x04\ + \x01\x02\0\x06\x12\x03\x1d\x04\x0c\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03\ + \x1d\r\x16\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03\x1d\x19\x1a\nl\n\x02\ + \x04\x02\x12\x04!\0*\x01\x1a`\x20AddrInfo\x20can\x20be\x20used\x20to\x20\ + ID\x20and\x20locate\x20a\x20server\x20(see\x20also\x20libp2p/go-libp2p-c\ + ore/peer#AddrInfo)\r\n\n\n\n\x03\x04\x02\x01\x12\x03!\x08\x10\n\x9d\x01\ + \n\x04\x04\x02\x02\0\x12\x03$\x04\x17\x1a\x8f\x01\x20id_bytes\x20is\x20a\ + \x20libp2p\x20peer\x20identity.\x20It\x20is\x20used\x20to\x20verity\x20t\ + he\x20Peer's\x20public\x20key.\r\n\x20Please\x20use\x20helper\x20functio\ + ns\x20GetID\x20and\x20SetID\x20for\x20this\x20field\r\n\n\r\n\x05\x04\ + \x02\x02\0\x04\x12\x04$\x04!\x12\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03$\ + \x04\t\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x03$\n\x12\n\x0c\n\x05\x04\x02\ + \x02\0\x03\x12\x03$\x15\x16\n\x98\x01\n\x04\x04\x02\x02\x01\x12\x03'\x04\ + #\x1a\x8a\x01\x20addrBytes\x20are\x20bytes\x20of\x20Multiaddr\x20for\x20\ + locating\x20this\x20peer.\r\n\x20Please\x20use\x20helper\x20functions\ + \x20GetMultiAddrs,\x20and\x20SetMultiAddrs\x20for\x20this\x20field.\r\n\ + \n\x0c\n\x05\x04\x02\x02\x01\x04\x12\x03'\x04\x0c\n\x0c\n\x05\x04\x02\ + \x02\x01\x05\x12\x03'\r\x12\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x03'\x13\ + \x1e\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03'!\"\nn\n\x04\x04\x02\x02\ + \x02\x12\x03)\x04\x18\x1aa\x20grpc\x20port\x20for\x20replication\x20prot\ + ocol.\x20will\x20be\x20optional\x20once\x20grpc\x20is\x20integrated\x20i\ + nto\x20multistream.\r\n\n\r\n\x05\x04\x02\x02\x02\x04\x12\x04)\x04'#\n\ + \x0c\n\x05\x04\x02\x02\x02\x05\x12\x03)\x04\t\n\x0c\n\x05\x04\x02\x02\ + \x02\x01\x12\x03)\n\x13\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x03)\x16\x17\ + \n<\n\x02\x06\0\x12\x04.\08\x01\x1a0\x20The\x20replicator\x20provides\ + \x20replication\x20services.\r\n\n\n\n\x03\x06\0\x01\x12\x03.\x08\x12\nn\ + \n\x04\x06\0\x02\0\x12\x030\x04>\x1aa\x20Add\x20is\x20used\x20to\x20add\ + \x20a\x20replication\x20to\x20this\x20server,\x20changing\x20it's\x20sta\ + tus\x20from\x20reserved\x20to\x20active.\r\n\n\x0c\n\x05\x06\0\x02\0\x01\ + \x12\x030\x08\x0b\n\x0c\n\x05\x06\0\x02\0\x02\x12\x030\r\x19\n\x0c\n\x05\ + \x06\0\x02\0\x06\x12\x030$*\n\x0c\n\x05\x06\0\x02\0\x03\x12\x030+<\nZ\n\ + \x04\x06\0\x02\x01\x12\x032\x04A\x1aM\x20Status\x20returns\x20an\x20upda\ + ting\x20stream\x20of\x20the\x20replication\x20status\x20on\x20the\x20ser\ + ver.\r\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x032\x08\x0e\n\x0c\n\x05\x06\ + \0\x02\x01\x02\x12\x032\x10\x1c\n\x0c\n\x05\x06\0\x02\x01\x06\x12\x032'-\ + \n\x0c\n\x05\x06\0\x02\x01\x03\x12\x032.?\nZ\n\x04\x06\0\x02\x02\x12\x03\ + 4\x04J\x1aM\x20GetSubscriptionUpdate\x20returns\x20the\x20latest\x20vers\ + ion\x20of\x20subscribed\x20replication\r\n\n\x0c\n\x05\x06\0\x02\x02\x01\ + \x12\x034\x08\x1d\n\x0c\n\x05\x06\0\x02\x02\x02\x12\x034\x1f+\n\x0c\n\ + \x05\x06\0\x02\x02\x03\x12\x0346H\n\xb7\x01\n\x04\x06\0\x02\x03\x12\x037\ + \x04R\x1a\xa9\x01\x20SubmitReplication\x20is\x20used\x20by\x20client\x20\ + agents\x20to\x20start\x20replications,\x20after\x20they\x20\r\n\x20have\ + \x20uploaded\x20the\x20files\x20and\x20retrieved\x20the\x20cid,\x20and\ + \x20collected\x20servers\x20to\x20replicate\x20too.\r\n\n\x0c\n\x05\x06\ + \0\x02\x03\x01\x12\x037\x08\x19\n\x0c\n\x05\x06\0\x02\x03\x02\x12\x037\ + \x1b-\n\x0c\n\x05\x06\0\x02\x03\x06\x12\x0378>\n\x0c\n\x05\x06\0\x02\x03\ + \x03\x12\x037?P\n\n\n\x02\x04\x03\x12\x04:\0A\x01\n\n\n\x03\x04\x03\x01\ + \x12\x03:\x08\x14\n\x0b\n\x04\x04\x03\x02\0\x12\x03;\x04\x15\n\r\n\x05\ + \x04\x03\x02\0\x04\x12\x04;\x04:\x15\n\x0c\n\x05\x04\x03\x02\0\x05\x12\ + \x03;\x04\n\n\x0c\n\x05\x04\x03\x02\0\x01\x12\x03;\x0b\x10\n\x0c\n\x05\ + \x04\x03\x02\0\x03\x12\x03;\x13\x14\n\x0b\n\x04\x04\x03\x02\x01\x12\x03<\ + \x04\x1e\n\r\n\x05\x04\x03\x02\x01\x04\x12\x04<\x04;\x15\n\x0c\n\x05\x04\ + \x03\x02\x01\x05\x12\x03<\x04\t\n\x0c\n\x05\x04\x03\x02\x01\x01\x12\x03<\ + \n\x19\n\x0c\n\x05\x04\x03\x02\x01\x03\x12\x03<\x1c\x1d\n\x9a\x01\n\x04\ + \x04\x03\x02\x02\x12\x03@\x04\x14\x1a\x8c\x01if\x20true,\x20remove\x20th\ + is\x20Subscription.\r\nFor\x20replicator.Add,\x20deactive\x20this\x20rep\ + lication.\r\nFor\x20replicator.WaitForUpdates,\x20stop\x20reporting\x20u\ + pdates.\r\n\n\r\n\x05\x04\x03\x02\x02\x04\x12\x04@\x04<\x1e\n\x0c\n\x05\ + \x04\x03\x02\x02\x05\x12\x03@\x04\x08\n\x0c\n\x05\x04\x03\x02\x02\x01\ + \x12\x03@\t\x0f\n\x0c\n\x05\x04\x03\x02\x02\x03\x12\x03@\x12\x13\n\n\n\ + \x02\x04\x04\x12\x04C\0L\x01\n\n\n\x03\x04\x04\x01\x12\x03C\x08\x19\n5\n\ + \x04\x04\x04\x02\0\x12\x03E\x04\x10\x1a(ok\x20report\x20success\x20for\ + \x20action\x20submitted\r\n\n\r\n\x05\x04\x04\x02\0\x04\x12\x04E\x04C\ + \x1a\n\x0c\n\x05\x04\x04\x02\0\x05\x12\x03E\x04\x08\n\x0c\n\x05\x04\x04\ + \x02\0\x01\x12\x03E\t\x0b\n\x0c\n\x05\x04\x04\x02\0\x03\x12\x03E\x0e\x0f\ + \nU\n\x04\x04\x04\x02\x01\x12\x03G\x04\x17\x1aHis_active\x20report\x20if\ + \x20the\x20replication\x20is\x20currently\x20active\x20on\x20this\x20ser\ + ver\r\n\n\r\n\x05\x04\x04\x02\x01\x04\x12\x04G\x04E\x10\n\x0c\n\x05\x04\ + \x04\x02\x01\x05\x12\x03G\x04\x08\n\x0c\n\x05\x04\x04\x02\x01\x01\x12\ + \x03G\t\x12\n\x0c\n\x05\x04\x04\x02\x01\x03\x12\x03G\x15\x16\nY\n\x04\ + \x04\x04\x02\x02\x12\x03I\x04\x1e\x1aLcurrent_version\x20is\x20the\x20hi\ + ghest\x20version\x20this\x20replicator/server\x20has\x20locally.\r\n\n\r\ + \n\x05\x04\x04\x02\x02\x04\x12\x04I\x04G\x17\n\x0c\n\x05\x04\x04\x02\x02\ + \x05\x12\x03I\x04\t\n\x0c\n\x05\x04\x04\x02\x02\x01\x12\x03I\n\x19\n\x0c\ + \n\x05\x04\x04\x02\x02\x03\x12\x03I\x1c\x1d\np\n\x04\x04\x04\x02\x03\x12\ + \x03K\x04\x1d\x1actarget_version\x20is\x20the\x20highest\x20version\x20t\ + his\x20replicator/server\x20knows\x20about\x20and\x20can\x20verify\x20to\ + \x20exist.\r\n\n\r\n\x05\x04\x04\x02\x03\x04\x12\x04K\x04I\x1e\n\x0c\n\ + \x05\x04\x04\x02\x03\x05\x12\x03K\x04\t\n\x0c\n\x05\x04\x04\x02\x03\x01\ + \x12\x03K\n\x18\n\x0c\n\x05\x04\x04\x02\x03\x03\x12\x03K\x1b\x1c\n\n\n\ + \x02\x04\x05\x12\x04N\0U\x01\n\n\n\x03\x04\x05\x01\x12\x03N\x08\x1a\n1\n\ + \x04\x04\x05\x02\0\x12\x03P\x04\x16\x1a$strictly\x20increasing\x20versio\ + n\x20number\r\n\n\r\n\x05\x04\x05\x02\0\x04\x12\x04P\x04N\x1b\n\x0c\n\ \x05\x04\x05\x02\0\x05\x12\x03P\x04\t\n\x0c\n\x05\x04\x05\x02\0\x01\x12\ - \x03P\n\x11\n\x0c\n\x05\x04\x05\x02\0\x03\x12\x03P\x14\x15\n6\n\x04\x04\ - \x05\x02\x01\x12\x03R\x04\x20\x1a)replication\x20file\x20is\x20in\x20byt\ - es\x20for\x20signing\n\n\r\n\x05\x04\x05\x02\x01\x04\x12\x04R\x04P\x16\n\ - \x0c\n\x05\x04\x05\x02\x01\x05\x12\x03R\x04\t\n\x0c\n\x05\x04\x05\x02\ + \x03P\n\x11\n\x0c\n\x05\x04\x05\x02\0\x03\x12\x03P\x14\x15\n7\n\x04\x04\ + \x05\x02\x01\x12\x03R\x04\x20\x1a*replication\x20file\x20is\x20in\x20byt\ + es\x20for\x20signing\r\n\n\r\n\x05\x04\x05\x02\x01\x04\x12\x04R\x04P\x16\ + \n\x0c\n\x05\x04\x05\x02\x01\x05\x12\x03R\x04\t\n\x0c\n\x05\x04\x05\x02\ \x01\x01\x12\x03R\n\x1b\n\x0c\n\x05\x04\x05\x02\x01\x03\x12\x03R\x1e\x1f\ - \n\x84\x01\n\x04\x04\x05\x02\x02\x12\x03T\x04\x18\x1awsignature\x20signs\ + \n\x85\x01\n\x04\x04\x05\x02\x02\x12\x03T\x04\x18\x1axsignature\x20signs\ \x20the\x20Subscription\x20and\x20above\x20data\x20in\x20length\x20delim\ - ited\x20form\x20in\x20the\x20order\x20topic|author|version|replication\n\ - \n\r\n\x05\x04\x05\x02\x02\x04\x12\x04T\x04R\x20\n\x0c\n\x05\x04\x05\x02\ - \x02\x05\x12\x03T\x04\t\n\x0c\n\x05\x04\x05\x02\x02\x01\x12\x03T\n\x13\n\ - \x0c\n\x05\x04\x05\x02\x02\x03\x12\x03T\x16\x17\n\n\n\x02\x04\x06\x12\ - \x04W\0Z\x01\n\n\n\x03\x04\x06\x01\x12\x03W\x08\x1a\n\x0b\n\x04\x04\x06\ - \x02\0\x12\x03X\x04\x1e\n\r\n\x05\x04\x06\x02\0\x04\x12\x04X\x04W\x1b\n\ - \x0c\n\x05\x04\x06\x02\0\x06\x12\x03X\x04\x10\n\x0c\n\x05\x04\x06\x02\0\ - \x01\x12\x03X\x11\x19\n\x0c\n\x05\x04\x06\x02\0\x03\x12\x03X\x1c\x1d\n\ - \x0b\n\x04\x04\x06\x02\x01\x12\x03Y\x04'\n\r\n\x05\x04\x06\x02\x01\x04\ - \x12\x04Y\x04X\x1e\n\x0c\n\x05\x04\x06\x02\x01\x06\x12\x03Y\x04\x16\n\ - \x0c\n\x05\x04\x06\x02\x01\x01\x12\x03Y\x17\"\n\x0c\n\x05\x04\x06\x02\ + ited\x20form\x20in\x20the\x20order\x20topic|author|version|replication\r\ + \n\n\r\n\x05\x04\x05\x02\x02\x04\x12\x04T\x04R\x20\n\x0c\n\x05\x04\x05\ + \x02\x02\x05\x12\x03T\x04\t\n\x0c\n\x05\x04\x05\x02\x02\x01\x12\x03T\n\ + \x13\n\x0c\n\x05\x04\x05\x02\x02\x03\x12\x03T\x16\x17\n\n\n\x02\x04\x06\ + \x12\x04W\0Z\x01\n\n\n\x03\x04\x06\x01\x12\x03W\x08\x1a\n\x0b\n\x04\x04\ + \x06\x02\0\x12\x03X\x04\x1e\n\r\n\x05\x04\x06\x02\0\x04\x12\x04X\x04W\ + \x1b\n\x0c\n\x05\x04\x06\x02\0\x06\x12\x03X\x04\x10\n\x0c\n\x05\x04\x06\ + \x02\0\x01\x12\x03X\x11\x19\n\x0c\n\x05\x04\x06\x02\0\x03\x12\x03X\x1c\ + \x1d\n\x0b\n\x04\x04\x06\x02\x01\x12\x03Y\x04'\n\r\n\x05\x04\x06\x02\x01\ + \x04\x12\x04Y\x04X\x1e\n\x0c\n\x05\x04\x06\x02\x01\x06\x12\x03Y\x04\x16\ + \n\x0c\n\x05\x04\x06\x02\x01\x01\x12\x03Y\x17\"\n\x0c\n\x05\x04\x06\x02\ \x01\x03\x12\x03Y%&b\x06proto3\ "; -static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/rs/src/replication_grpc.rs b/rs/src/replication_grpc.rs index 389f0ba..18c97a2 100644 --- a/rs/src/replication_grpc.rs +++ b/rs/src/replication_grpc.rs @@ -97,7 +97,7 @@ impl ReplicatorClient { pub fn submit_replication(&self, req: &super::replication::SignedSubscription) -> ::grpcio::Result<::grpcio::ClientSStreamReceiver> { self.submit_replication_opt(req, ::grpcio::CallOption::default()) } - pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { + pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { self.client.spawn(f) } } diff --git a/rs/src/status.rs b/rs/src/status.rs index 1907164..90dc539 100644 --- a/rs/src/status.rs +++ b/rs/src/status.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `status.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct VersionResponse { @@ -131,7 +128,7 @@ impl ::protobuf::Message for VersionResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -144,35 +141,25 @@ impl ::protobuf::Message for VersionResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "version", - |m: &VersionResponse| { &m.version }, - |m: &mut VersionResponse| { &mut m.version }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "VersionResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "version", + |m: &VersionResponse| { &m.version }, + |m: &mut VersionResponse| { &mut m.version }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "VersionResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static VersionResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const VersionResponse, - }; - unsafe { - instance.get(VersionResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(VersionResponse::new) } } @@ -190,8 +177,8 @@ impl ::std::fmt::Debug for VersionResponse { } impl ::protobuf::reflect::ProtobufValue for VersionResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -301,7 +288,7 @@ impl ::protobuf::Message for StatusResponse { os.write_string(1, &self.host)?; } if self.status != APISTATUS::ONLINE { - os.write_enum(2, self.status.value())?; + os.write_enum(2, ::protobuf::ProtobufEnum::value(&self.status))?; } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) @@ -325,7 +312,7 @@ impl ::protobuf::Message for StatusResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -338,40 +325,30 @@ impl ::protobuf::Message for StatusResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "host", - |m: &StatusResponse| { &m.host }, - |m: &mut StatusResponse| { &mut m.host }, - )); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( - "status", - |m: &StatusResponse| { &m.status }, - |m: &mut StatusResponse| { &mut m.status }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "StatusResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "host", + |m: &StatusResponse| { &m.host }, + |m: &mut StatusResponse| { &mut m.host }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( + "status", + |m: &StatusResponse| { &m.status }, + |m: &mut StatusResponse| { &mut m.status }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "StatusResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static StatusResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const StatusResponse, - }; - unsafe { - instance.get(StatusResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(StatusResponse::new) } } @@ -390,8 +367,8 @@ impl ::std::fmt::Debug for StatusResponse { } impl ::protobuf::reflect::ProtobufValue for StatusResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -429,15 +406,10 @@ impl ::protobuf::ProtobufEnum for APISTATUS { } fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, - }; - unsafe { - descriptor.get(|| { - ::protobuf::reflect::EnumDescriptor::new("APISTATUS", file_descriptor_proto()) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::("APISTATUS", file_descriptor_proto()) + }) } } @@ -451,8 +423,8 @@ impl ::std::default::Default for APISTATUS { } impl ::protobuf::reflect::ProtobufValue for APISTATUS { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor()) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self)) } } @@ -464,74 +436,69 @@ static file_descriptor_proto_data: &'static [u8] = b"\ E\x10\0\x12\x0b\n\x07PURGING\x10\x01\x12\x18\n\x14DEGRADED_PERFORMANCE\ \x10\x02\x12\t\n\x05ERROR\x10\x032c\n\tStatusAPI\x12+\n\x07Version\x12\t\ .pb.Empty\x1a\x13.pb.VersionResponse\"\0\x12)\n\x06Status\x12\t.pb.Empty\ - \x1a\x12.pb.StatusResponse\"\0J\x8a\r\n\x06\x12\x04\0\0&\x01\n\x08\n\x01\ + \x1a\x12.pb.StatusResponse\"\0J\x99\r\n\x06\x12\x04\0\0&\x01\n\x08\n\x01\ \x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\n\t\n\x02\x03\0\ - \x12\x03\x02\x07\x13\nH\n\x02\x06\0\x12\x04\x05\0\n\x01\x1a<\x20provides\ + \x12\x03\x02\x07\x13\nI\n\x02\x06\0\x12\x04\x05\0\n\x01\x1a=\x20provides\ \x20utilities\x20to\x20retrieve\x20api\x20status\x20information\x20from\ - \n\n\n\n\x03\x06\0\x01\x12\x03\x05\x08\x11\nB\n\x04\x06\0\x02\0\x12\x03\ - \x07\x044\x1a5\x20Version\x20is\x20used\x20to\x20retrieve\x20api\x20vers\ - ion\x20information\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\x07\x08\x0f\n\ - \x0c\n\x05\x06\0\x02\0\x02\x12\x03\x07\x10\x15\n\x0c\n\x05\x06\0\x02\0\ - \x03\x12\x03\x07\x20/\nA\n\x04\x06\0\x02\x01\x12\x03\t\x042\x1a4\x20Stat\ - us\x20is\x20used\x20to\x20retrieve\x20api\x20status\x20information.\n\n\ - \x0c\n\x05\x06\0\x02\x01\x01\x12\x03\t\x08\x0e\n\x0c\n\x05\x06\0\x02\x01\ - \x02\x12\x03\t\x0f\x14\n\x0c\n\x05\x06\0\x02\x01\x03\x12\x03\t\x1f-\nG\n\ - \x02\x04\0\x12\x04\r\0\x10\x01\x1a;\x20VersionResponse\x20is\x20used\x20\ - to\x20return\x20API\x20version\x20information\n\n\n\n\x03\x04\0\x01\x12\ - \x03\r\x08\x17\nY\n\x04\x04\0\x02\0\x12\x03\x0f\x04\x17\x1aL\x20version\ - \x20denotes\x20the\x20github\x20version\x20that\x20was\x20present\x20whe\ - n\x20the\x20api\x20was\x20built\n\n\r\n\x05\x04\0\x02\0\x04\x12\x04\x0f\ - \x04\r\x19\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03\x0f\x04\n\n\x0c\n\x05\x04\ - \0\x02\0\x01\x12\x03\x0f\x0b\x12\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\x0f\ - \x15\x16\nP\n\x02\x05\0\x12\x04\x13\0\x1d\x01\x1aD\x20APISTATUS\x20is\ - \x20an\x20enum\x20to\x20return\x20a\x20concise\x20description\x20of\x20a\ - pi\x20status\n\n\n\n\x03\x05\0\x01\x12\x03\x13\x05\x0e\nA\n\x04\x05\0\ - \x02\0\x12\x03\x15\x04\x0f\x1a4\x20ONLINE\x20indicates\x20everything\x20\ - is\x20working\x20as\x20expected\n\n\x0c\n\x05\x05\0\x02\0\x01\x12\x03\ - \x15\x04\n\n\x0c\n\x05\x05\0\x02\0\x02\x12\x03\x15\r\x0e\n\x99\x01\n\x04\ - \x05\0\x02\x01\x12\x03\x18\x04\x10\x1a\x8b\x01\x20PURGING\x20indicates\ - \x20the\x20system\x20is\x20undergoing\x20data\x20removal\n\x20a\x20purgi\ - ng\x20system\x20is\x20not\x20available\x20for\x20use\x20unless\x20all\ - \x20other\x20nodes\x20are\x20unavailable\n\n\x0c\n\x05\x05\0\x02\x01\x01\ - \x12\x03\x18\x04\x0b\n\x0c\n\x05\x05\0\x02\x01\x02\x12\x03\x18\x0e\x0f\n\ - V\n\x04\x05\0\x02\x02\x12\x03\x1a\x04\x1d\x1aI\x20DEGRADED_PERFORMANCE\ - \x20indicates\x20the\x20system\x20is\x20currently\x20under\x20heavy\x20l\ - oad\n\n\x0c\n\x05\x05\0\x02\x02\x01\x12\x03\x1a\x04\x18\n\x0c\n\x05\x05\ - \0\x02\x02\x02\x12\x03\x1a\x1b\x1c\nh\n\x04\x05\0\x02\x03\x12\x03\x1c\ - \x04\x0e\x1a[\x20ERROR\x20indicates\x20that\x20the\x20system\x20is\x20cu\ - rrently\x20experiencing\x20an\x20error\x20and\x20should\x20not\x20be\x20\ - used\n\n\x0c\n\x05\x05\0\x02\x03\x01\x12\x03\x1c\x04\t\n\x0c\n\x05\x05\0\ - \x02\x03\x02\x12\x03\x1c\x0c\r\nE\n\x02\x04\x01\x12\x04\x20\0&\x01\x1a9\ - \x20StatusResponse\x20is\x20used\x20to\x20return\x20API\x20status\x20inf\ - ormation\n\n\n\n\x03\x04\x01\x01\x12\x03\x20\x08\x16\n\xc1\x01\n\x04\x04\ - \x01\x02\0\x12\x03#\x04\x14\x1a\xb3\x01\x20host\x20is\x20an\x20identifie\ - r\x20for\x20the\x20host\x20of\x20the\x20system\x20responding\x20to\x20th\ - e\x20request.\n\x20it\x20may\x20or\x20may\x20not\x20be\x20the\x20hostnam\ - e,\x20it\x20is\x20up\x20to\x20the\x20implementer\x20of\x20the\x20service\ - \x20to\x20choose\x20what\x20is\x20here\n\n\r\n\x05\x04\x01\x02\0\x04\x12\ - \x04#\x04\x20\x18\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03#\x04\n\n\x0c\n\ - \x05\x04\x01\x02\0\x01\x12\x03#\x0b\x0f\n\x0c\n\x05\x04\x01\x02\0\x03\ - \x12\x03#\x12\x13\nO\n\x04\x04\x01\x02\x01\x12\x03%\x04\x19\x1aB\x20stat\ - us\x20contains\x20a\x20status\x20enum\x20indicating\x20the\x20state\x20o\ - f\x20the\x20system\n\n\r\n\x05\x04\x01\x02\x01\x04\x12\x04%\x04#\x14\n\ - \x0c\n\x05\x04\x01\x02\x01\x06\x12\x03%\x04\r\n\x0c\n\x05\x04\x01\x02\ - \x01\x01\x12\x03%\x0e\x14\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03%\x17\ - \x18b\x06proto3\ + \r\n\n\n\n\x03\x06\0\x01\x12\x03\x05\x08\x11\nC\n\x04\x06\0\x02\0\x12\ + \x03\x07\x044\x1a6\x20Version\x20is\x20used\x20to\x20retrieve\x20api\x20\ + version\x20information\r\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03\x07\x08\ + \x0f\n\x0c\n\x05\x06\0\x02\0\x02\x12\x03\x07\x10\x15\n\x0c\n\x05\x06\0\ + \x02\0\x03\x12\x03\x07\x20/\nB\n\x04\x06\0\x02\x01\x12\x03\t\x042\x1a5\ + \x20Status\x20is\x20used\x20to\x20retrieve\x20api\x20status\x20informati\ + on.\r\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x03\t\x08\x0e\n\x0c\n\x05\x06\ + \0\x02\x01\x02\x12\x03\t\x0f\x14\n\x0c\n\x05\x06\0\x02\x01\x03\x12\x03\t\ + \x1f-\nH\n\x02\x04\0\x12\x04\r\0\x10\x01\x1a<\x20VersionResponse\x20is\ + \x20used\x20to\x20return\x20API\x20version\x20information\r\n\n\n\n\x03\ + \x04\0\x01\x12\x03\r\x08\x17\nZ\n\x04\x04\0\x02\0\x12\x03\x0f\x04\x17\ + \x1aM\x20version\x20denotes\x20the\x20github\x20version\x20that\x20was\ + \x20present\x20when\x20the\x20api\x20was\x20built\r\n\n\r\n\x05\x04\0\ + \x02\0\x04\x12\x04\x0f\x04\r\x19\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03\x0f\ + \x04\n\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03\x0f\x0b\x12\n\x0c\n\x05\x04\0\ + \x02\0\x03\x12\x03\x0f\x15\x16\nQ\n\x02\x05\0\x12\x04\x13\0\x1d\x01\x1aE\ + \x20APISTATUS\x20is\x20an\x20enum\x20to\x20return\x20a\x20concise\x20des\ + cription\x20of\x20api\x20status\r\n\n\n\n\x03\x05\0\x01\x12\x03\x13\x05\ + \x0e\nB\n\x04\x05\0\x02\0\x12\x03\x15\x04\x0f\x1a5\x20ONLINE\x20indicate\ + s\x20everything\x20is\x20working\x20as\x20expected\r\n\n\x0c\n\x05\x05\0\ + \x02\0\x01\x12\x03\x15\x04\n\n\x0c\n\x05\x05\0\x02\0\x02\x12\x03\x15\r\ + \x0e\n\x9b\x01\n\x04\x05\0\x02\x01\x12\x03\x18\x04\x10\x1a\x8d\x01\x20PU\ + RGING\x20indicates\x20the\x20system\x20is\x20undergoing\x20data\x20remov\ + al\r\n\x20a\x20purging\x20system\x20is\x20not\x20available\x20for\x20use\ + \x20unless\x20all\x20other\x20nodes\x20are\x20unavailable\r\n\n\x0c\n\ + \x05\x05\0\x02\x01\x01\x12\x03\x18\x04\x0b\n\x0c\n\x05\x05\0\x02\x01\x02\ + \x12\x03\x18\x0e\x0f\nW\n\x04\x05\0\x02\x02\x12\x03\x1a\x04\x1d\x1aJ\x20\ + DEGRADED_PERFORMANCE\x20indicates\x20the\x20system\x20is\x20currently\ + \x20under\x20heavy\x20load\r\n\n\x0c\n\x05\x05\0\x02\x02\x01\x12\x03\x1a\ + \x04\x18\n\x0c\n\x05\x05\0\x02\x02\x02\x12\x03\x1a\x1b\x1c\ni\n\x04\x05\ + \0\x02\x03\x12\x03\x1c\x04\x0e\x1a\\\x20ERROR\x20indicates\x20that\x20th\ + e\x20system\x20is\x20currently\x20experiencing\x20an\x20error\x20and\x20\ + should\x20not\x20be\x20used\r\n\n\x0c\n\x05\x05\0\x02\x03\x01\x12\x03\ + \x1c\x04\t\n\x0c\n\x05\x05\0\x02\x03\x02\x12\x03\x1c\x0c\r\nF\n\x02\x04\ + \x01\x12\x04\x20\0&\x01\x1a:\x20StatusResponse\x20is\x20used\x20to\x20re\ + turn\x20API\x20status\x20information\r\n\n\n\n\x03\x04\x01\x01\x12\x03\ + \x20\x08\x16\n\xc3\x01\n\x04\x04\x01\x02\0\x12\x03#\x04\x14\x1a\xb5\x01\ + \x20host\x20is\x20an\x20identifier\x20for\x20the\x20host\x20of\x20the\ + \x20system\x20responding\x20to\x20the\x20request.\r\n\x20it\x20may\x20or\ + \x20may\x20not\x20be\x20the\x20hostname,\x20it\x20is\x20up\x20to\x20the\ + \x20implementer\x20of\x20the\x20service\x20to\x20choose\x20what\x20is\ + \x20here\r\n\n\r\n\x05\x04\x01\x02\0\x04\x12\x04#\x04\x20\x18\n\x0c\n\ + \x05\x04\x01\x02\0\x05\x12\x03#\x04\n\n\x0c\n\x05\x04\x01\x02\0\x01\x12\ + \x03#\x0b\x0f\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03#\x12\x13\nP\n\x04\ + \x04\x01\x02\x01\x12\x03%\x04\x19\x1aC\x20status\x20contains\x20a\x20sta\ + tus\x20enum\x20indicating\x20the\x20state\x20of\x20the\x20system\r\n\n\r\ + \n\x05\x04\x01\x02\x01\x04\x12\x04%\x04#\x14\n\x0c\n\x05\x04\x01\x02\x01\ + \x06\x12\x03%\x04\r\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03%\x0e\x14\n\ + \x0c\n\x05\x04\x01\x02\x01\x03\x12\x03%\x17\x18b\x06proto3\ "; -static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/rs/src/status_grpc.rs b/rs/src/status_grpc.rs index 38843b9..a4f3e1b 100644 --- a/rs/src/status_grpc.rs +++ b/rs/src/status_grpc.rs @@ -75,7 +75,7 @@ impl StatusApiClient { pub fn status_async(&self, req: &super::util::Empty) -> ::grpcio::Result<::grpcio::ClientUnaryReceiver> { self.status_async_opt(req, ::grpcio::CallOption::default()) } - pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { + pub fn spawn(&self, f: F) where F: ::futures::Future + Send + 'static { self.client.spawn(f) } } diff --git a/rs/src/util.rs b/rs/src/util.rs index 5893336..bd4d819 100644 --- a/rs/src/util.rs +++ b/rs/src/util.rs @@ -1,11 +1,12 @@ -// This file is generated by rust-protobuf 2.10.2. Do not edit +// This file is generated by rust-protobuf 2.17.0. Do not edit // @generated // https://github.com/rust-lang/rust-clippy/issues/702 #![allow(unknown_lints)] #![allow(clippy::all)] -#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_attributes)] +#![rustfmt::skip] #![allow(box_pointers)] #![allow(dead_code)] @@ -14,17 +15,13 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] #![allow(trivial_casts)] -#![allow(unsafe_code)] #![allow(unused_imports)] #![allow(unused_results)] //! Generated file from `util.proto` -use protobuf::Message as Message_imported_for_functions; -use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; - /// Generated files are compatible only with the same version /// of protobuf runtime. -// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_10_2; +// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_17_0; #[derive(PartialEq,Clone,Default)] pub struct PutResponse { @@ -131,7 +128,7 @@ impl ::protobuf::Message for PutResponse { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -144,35 +141,25 @@ impl ::protobuf::Message for PutResponse { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let mut fields = ::std::vec::Vec::new(); - fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( - "hash", - |m: &PutResponse| { &m.hash }, - |m: &mut PutResponse| { &mut m.hash }, - )); - ::protobuf::reflect::MessageDescriptor::new::( - "PutResponse", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "hash", + |m: &PutResponse| { &m.hash }, + |m: &mut PutResponse| { &mut m.hash }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "PutResponse", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static PutResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PutResponse, - }; - unsafe { - instance.get(PutResponse::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(PutResponse::new) } } @@ -190,8 +177,8 @@ impl ::std::fmt::Debug for PutResponse { } impl ::protobuf::reflect::ProtobufValue for PutResponse { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } @@ -263,7 +250,7 @@ impl ::protobuf::Message for Empty { fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { self as &mut dyn (::std::any::Any) } - fn into_any(self: Box) -> ::std::boxed::Box { + fn into_any(self: ::std::boxed::Box) -> ::std::boxed::Box { self } @@ -276,30 +263,20 @@ impl ::protobuf::Message for Empty { } fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { - static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, - }; - unsafe { - descriptor.get(|| { - let fields = ::std::vec::Vec::new(); - ::protobuf::reflect::MessageDescriptor::new::( - "Empty", - fields, - file_descriptor_proto() - ) - }) - } + static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT; + descriptor.get(|| { + let fields = ::std::vec::Vec::new(); + ::protobuf::reflect::MessageDescriptor::new_pb_name::( + "Empty", + fields, + file_descriptor_proto() + ) + }) } fn default_instance() -> &'static Empty { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Empty, - }; - unsafe { - instance.get(Empty::new) - } + static instance: ::protobuf::rt::LazyV2 = ::protobuf::rt::LazyV2::INIT; + instance.get(Empty::new) } } @@ -316,14 +293,14 @@ impl ::std::fmt::Debug for Empty { } impl ::protobuf::reflect::ProtobufValue for Empty { - fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { - ::protobuf::reflect::ProtobufValueRef::Message(self) + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) } } static file_descriptor_proto_data: &'static [u8] = b"\ \n\nutil.proto\x12\x02pb\"!\n\x0bPutResponse\x12\x12\n\x04hash\x18\x01\ - \x20\x01(\tR\x04hash\"\x07\n\x05EmptyJ\xb3\x02\n\x06\x12\x04\0\0\n\x11\n\ + \x20\x01(\tR\x04hash\"\x07\n\x05EmptyJ\xb3\x02\n\x06\x12\x04\0\0\n\x10\n\ \x08\n\x01\x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\x03\x01\x08\n\nJ\n\ \x02\x04\0\x12\x04\x04\0\x07\x01\x1a>\x20PutResponse\x20is\x20a\x20respo\ nse\x20to\x20any\x20data\x20storage\x20(put)\x20requests\n\n\n\n\x03\x04\ @@ -332,23 +309,18 @@ static file_descriptor_proto_data: &'static [u8] = b"\ ta\x20that\x20was\x20stored\n\n\r\n\x05\x04\0\x02\0\x04\x12\x04\x06\x04\ \x04\x15\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03\x06\x04\n\n\x0c\n\x05\x04\0\ \x02\0\x01\x12\x03\x06\x0b\x0f\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\x06\ - \x12\x13\n&\n\x02\x04\x01\x12\x03\n\0\x11\x1a\x1b\x20Empty\x20is\x20an\ + \x12\x13\n&\n\x02\x04\x01\x12\x03\n\0\x10\x1a\x1b\x20Empty\x20is\x20an\ \x20empty\x20message\n\n\n\n\x03\x04\x01\x01\x12\x03\n\x08\rb\x06proto3\ "; -static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, -}; +static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT; fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() } pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { - unsafe { - file_descriptor_proto_lazy.get(|| { - parse_descriptor_proto() - }) - } + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) } diff --git a/ts/file_pb.d.ts b/ts/file_pb.d.ts index c712e33..ee61f0f 100644 --- a/ts/file_pb.d.ts +++ b/ts/file_pb.d.ts @@ -42,6 +42,15 @@ export class UploadOptions extends jspb.Message { getChunker(): string; setChunker(value: string): void; + getRefid(): string; + setRefid(value: string): void; + + getProgressive(): boolean; + setProgressive(value: boolean): void; + + getReplace(): boolean; + setReplace(value: boolean): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): UploadOptions.AsObject; static toObject(includeInstance: boolean, msg: UploadOptions): UploadOptions.AsObject; @@ -57,6 +66,9 @@ export namespace UploadOptions { multihash: string, layout: string, chunker: string, + refid: string, + progressive: boolean, + replace: boolean, } } @@ -144,3 +156,42 @@ export namespace Blob { } } +export class RemoveRequest extends jspb.Message { + getRefidsMap(): jspb.Map; + clearRefidsMap(): void; + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): RemoveRequest.AsObject; + static toObject(includeInstance: boolean, msg: RemoveRequest): RemoveRequest.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: RemoveRequest, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): RemoveRequest; + static deserializeBinaryFromReader(message: RemoveRequest, reader: jspb.BinaryReader): RemoveRequest; +} + +export namespace RemoveRequest { + export type AsObject = { + refidsMap: Array<[string, string]>, + } +} + +export class RemoveResponse extends jspb.Message { + getCount(): number; + setCount(value: number): void; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): RemoveResponse.AsObject; + static toObject(includeInstance: boolean, msg: RemoveResponse): RemoveResponse.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: RemoveResponse, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): RemoveResponse; + static deserializeBinaryFromReader(message: RemoveResponse, reader: jspb.BinaryReader): RemoveResponse; +} + +export namespace RemoveResponse { + export type AsObject = { + count: number, + } +} + diff --git a/ts/file_pb_service.d.ts b/ts/file_pb_service.d.ts index e0c63b9..90421e6 100644 --- a/ts/file_pb_service.d.ts +++ b/ts/file_pb_service.d.ts @@ -23,10 +23,20 @@ type FileAPIDownloadFile = { readonly responseType: typeof file_pb.DownloadResponse; }; +type FileAPIRemoveFile = { + readonly methodName: string; + readonly service: typeof FileAPI; + readonly requestStream: false; + readonly responseStream: false; + readonly requestType: typeof file_pb.RemoveRequest; + readonly responseType: typeof file_pb.RemoveResponse; +}; + export class FileAPI { static readonly serviceName: string; static readonly UploadFile: FileAPIUploadFile; static readonly DownloadFile: FileAPIDownloadFile; + static readonly RemoveFile: FileAPIRemoveFile; } export type ServiceError = { message: string, code: number; metadata: grpc.Metadata } @@ -63,5 +73,14 @@ export class FileAPIClient { constructor(serviceHost: string, options?: grpc.RpcOptions); uploadFile(metadata?: grpc.Metadata): RequestStream; downloadFile(requestMessage: file_pb.DownloadRequest, metadata?: grpc.Metadata): ResponseStream; + removeFile( + requestMessage: file_pb.RemoveRequest, + metadata: grpc.Metadata, + callback: (error: ServiceError|null, responseMessage: file_pb.RemoveResponse|null) => void + ): UnaryResponse; + removeFile( + requestMessage: file_pb.RemoveRequest, + callback: (error: ServiceError|null, responseMessage: file_pb.RemoveResponse|null) => void + ): UnaryResponse; } diff --git a/ts/file_pb_service.js b/ts/file_pb_service.js index d3e3cdc..8acefd0 100644 --- a/ts/file_pb_service.js +++ b/ts/file_pb_service.js @@ -29,6 +29,15 @@ FileAPI.DownloadFile = { responseType: file_pb.DownloadResponse }; +FileAPI.RemoveFile = { + methodName: "RemoveFile", + service: FileAPI, + requestStream: false, + responseStream: false, + requestType: file_pb.RemoveRequest, + responseType: file_pb.RemoveResponse +}; + exports.FileAPI = FileAPI; function FileAPIClient(serviceHost, options) { @@ -116,5 +125,36 @@ FileAPIClient.prototype.downloadFile = function downloadFile(requestMessage, met }; }; +FileAPIClient.prototype.removeFile = function removeFile(requestMessage, metadata, callback) { + if (arguments.length === 2) { + callback = arguments[1]; + } + var client = grpc.unary(FileAPI.RemoveFile, { + request: requestMessage, + host: this.serviceHost, + metadata: metadata, + transport: this.options.transport, + debug: this.options.debug, + onEnd: function (response) { + if (callback) { + if (response.status !== grpc.Code.OK) { + var err = new Error(response.statusMessage); + err.code = response.status; + err.metadata = response.trailers; + callback(err, null); + } else { + callback(null, response.message); + } + } + } + }); + return { + cancel: function () { + callback = null; + client.close(); + } + }; +}; + exports.FileAPIClient = FileAPIClient; diff --git a/ts/node_pb.d.ts b/ts/node_pb.d.ts index f171d24..ffd599a 100644 --- a/ts/node_pb.d.ts +++ b/ts/node_pb.d.ts @@ -285,6 +285,15 @@ export class BlockstoreRequest extends jspb.Message { getHashfunc(): string; setHashfunc(value: string): void; + getRefid(): string; + setRefid(value: string): void; + + getProgressive(): boolean; + setProgressive(value: boolean): void; + + getReplace(): boolean; + setReplace(value: boolean): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): BlockstoreRequest.AsObject; static toObject(includeInstance: boolean, msg: BlockstoreRequest): BlockstoreRequest.AsObject; @@ -303,6 +312,9 @@ export namespace BlockstoreRequest { dataList: Array, cidversion: string, hashfunc: string, + refid: string, + progressive: boolean, + replace: boolean, } } @@ -388,6 +400,15 @@ export class DagRequest extends jspb.Message { getLinksMap(): jspb.Map; clearLinksMap(): void; + getRefid(): string; + setRefid(value: string): void; + + getProgressive(): boolean; + setProgressive(value: boolean): void; + + getReplace(): boolean; + setReplace(value: boolean): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): DagRequest.AsObject; static toObject(includeInstance: boolean, msg: DagRequest): DagRequest.AsObject; @@ -408,6 +429,9 @@ export namespace DagRequest { cidversion: number, hash: string, linksMap: Array<[string, string]>, + refid: string, + progressive: boolean, + replace: boolean, } } @@ -432,6 +456,9 @@ export class DagResponse extends jspb.Message { getNodestatsMap(): jspb.Map; clearNodestatsMap(): void; + getCount(): number; + setCount(value: number): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): DagResponse.AsObject; static toObject(includeInstance: boolean, msg: DagResponse): DagResponse.AsObject; @@ -449,6 +476,7 @@ export namespace DagResponse { rawdata: Uint8Array | string, linksList: Array, nodestatsMap: Array<[string, IPLDStat.AsObject]>, + count: number, } } @@ -618,6 +646,12 @@ export class PersistRequest extends jspb.Message { setCidsList(value: Array): void; addCids(value: string, index?: number): string; + getRefid(): string; + setRefid(value: string): void; + + getProgressive(): boolean; + setProgressive(value: boolean): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): PersistRequest.AsObject; static toObject(includeInstance: boolean, msg: PersistRequest): PersistRequest.AsObject; @@ -631,6 +665,8 @@ export class PersistRequest extends jspb.Message { export namespace PersistRequest { export type AsObject = { cidsList: Array, + refid: string, + progressive: boolean, } } @@ -719,6 +755,7 @@ export interface DAGREQTYPEMap { DAG_ADD_LINKS: 3; DAG_GET_LINKS: 4; DAG_STAT: 5; + DAG_REMOVE: 6; } export const DAGREQTYPE: DAGREQTYPEMap;