Module riak_pb_kv_codec

Utility functions for decoding and encoding Protocol Buffers messages related to Riak KV.

Description

Utility functions for decoding and encoding Protocol Buffers messages related to Riak KV. These are used inside the client and server code and do not normally need to be used in application code.

Data Types

contents()

contents() = [{metadata(), value()}]

metadata()

metadata() = dict()

preflist_with_pnum_ann()

preflist_with_pnum_ann() = [{{non_neg_integer(), node()}, primary | fallback}]

quorum()

quorum() = symbolic_quorum() | non_neg_integer()

symbolic_quorum()

symbolic_quorum() = one | quorum | all | default

value()

value() = binary()

Function Index

decode_content/1Convert an rpccontent pb message to an erlang {MetaData,Value} tuple.
decode_content_meta/3
decode_contents/1Convert a list of rpbcontent pb messages to a list of [{MetaData,Value}] tuples.
decode_link/1Convert RpbLink PB message to erlang link tuple.
decode_pair/1Convert RpbPair PB message to erlang {K,V} tuple.
decode_quorum/1Decodes a Protocol Buffers value into a symbolic or numeric quorum.
encode_apl_ann/1Convert preflist to RpbBucketKeyPreflist.
encode_content/1Convert a metadata/value pair into an #rpbcontent{} record.
encode_content_meta/3Convert the metadata dictionary entries to protocol buffers.
encode_contents/1Convert a list of object {MetaData,Value} pairs to protocol buffers messages.
encode_index_pair/1Convert {K,V} index entries into protocol buffers.
encode_link/1Convert erlang link tuple to RpbLink PB message.
encode_pair/1Convert {K,V} tuple to protocol buffers.
encode_quorum/1Encode a symbolic or numeric quorum value into a Protocol Buffers value.

Function Details

decode_content/1

decode_content(PBContent::tuple()) -> {metadata(), binary()}

Convert an rpccontent pb message to an erlang {MetaData,Value} tuple

decode_content_meta/3

decode_content_meta(X1::atom(), CType::any(), Rpbcontent::#rpbcontent{value = binary(), content_type = binary() | undefined, charset = binary() | undefined, content_encoding = binary() | undefined, vtag = binary() | undefined, links = [#rpblink{bucket = binary() | undefined, key = binary() | undefined, tag = binary() | undefined}], last_mod = non_neg_integer() | undefined, last_mod_usecs = non_neg_integer() | undefined, usermeta = [#rpbpair{key = binary(), value = binary() | undefined}], indexes = [#rpbpair{key = binary(), value = binary() | undefined}], deleted = boolean() | 0 | 1 | undefined, ttl = non_neg_integer() | undefined}) -> [{binary(), any()}]

decode_contents/1

decode_contents(PBContents::[tuple()]) -> contents()

Convert a list of rpbcontent pb messages to a list of [{MetaData,Value}] tuples

decode_link/1

decode_link(PBLink::#rpblink{bucket = binary() | undefined, key = binary() | undefined, tag = binary() | undefined}) -> {{binary(), binary()}, binary()}

Convert RpbLink PB message to erlang link tuple

decode_pair/1

decode_pair(Rpbpair::#rpbpair{key = binary(), value = binary() | undefined}) -> {binary(), binary()}

Equivalent to riak_pb_codec:decode_pair / 1.

Convert RpbPair PB message to erlang {K,V} tuple

decode_quorum/1

decode_quorum(I::non_neg_integer()) -> quorum()

Decodes a Protocol Buffers value into a symbolic or numeric quorum.

encode_apl_ann/1

encode_apl_ann(Preflist::preflist_with_pnum_ann()) -> PBPreflist::[#rpbbucketkeypreflistitem{partition = integer(), node = binary(), primary = boolean() | 0 | 1}]

Convert preflist to RpbBucketKeyPreflist.

encode_content/1

encode_content(C::{metadata(), value()}) -> #rpbcontent{value = binary(), content_type = binary() | undefined, charset = binary() | undefined, content_encoding = binary() | undefined, vtag = binary() | undefined, links = [#rpblink{bucket = binary() | undefined, key = binary() | undefined, tag = binary() | undefined}], last_mod = non_neg_integer() | undefined, last_mod_usecs = non_neg_integer() | undefined, usermeta = [#rpbpair{key = binary(), value = binary() | undefined}], indexes = [#rpbpair{key = binary(), value = binary() | undefined}], deleted = boolean() | 0 | 1 | undefined, ttl = non_neg_integer() | undefined}

Convert a metadata/value pair into an #rpbcontent{} record

encode_content_meta/3

encode_content_meta(MetadataKey::string(), ContentType::any(), PbContent::tuple()) -> tuple()

Convert the metadata dictionary entries to protocol buffers

encode_contents/1

encode_contents(List::contents()) -> [#rpbcontent{value = binary(), content_type = binary() | undefined, charset = binary() | undefined, content_encoding = binary() | undefined, vtag = binary() | undefined, links = [#rpblink{bucket = binary() | undefined, key = binary() | undefined, tag = binary() | undefined}], last_mod = non_neg_integer() | undefined, last_mod_usecs = non_neg_integer() | undefined, usermeta = [#rpbpair{key = binary(), value = binary() | undefined}], indexes = [#rpbpair{key = binary(), value = binary() | undefined}], deleted = boolean() | 0 | 1 | undefined, ttl = non_neg_integer() | undefined}]

Convert a list of object {MetaData,Value} pairs to protocol buffers messages.

encode_index_pair/1

encode_index_pair(E::{binary(), integer() | binary()}) -> #rpbpair{key = binary(), value = binary() | undefined}

Convert {K,V} index entries into protocol buffers

encode_link/1

encode_link(X1::{{binary(), binary()}, binary() | string()}) -> #rpblink{bucket = binary() | undefined, key = binary() | undefined, tag = binary() | undefined}

Convert erlang link tuple to RpbLink PB message

encode_pair/1

encode_pair(Pair::{Key::binary(), Value::any()}) -> #rpbpair{key = binary(), value = binary() | undefined}

Equivalent to riak_pb_codec:encode_pair / 1.

Convert {K,V} tuple to protocol buffers

encode_quorum/1

encode_quorum(Bin::quorum()) -> non_neg_integer()

Encode a symbolic or numeric quorum value into a Protocol Buffers value


Generated by EDoc