diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
commit | 19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch) | |
tree | 42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/jaegertracing/thrift/lib/erl/include | |
parent | Initial commit. (diff) | |
download | ceph-upstream/16.2.11+ds.tar.xz ceph-upstream/16.2.11+ds.zip |
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
4 files changed, 196 insertions, 0 deletions
diff --git a/src/jaegertracing/thrift/lib/erl/include/thrift_constants.hrl b/src/jaegertracing/thrift/lib/erl/include/thrift_constants.hrl new file mode 100644 index 000000000..7cb29ebdb --- /dev/null +++ b/src/jaegertracing/thrift/lib/erl/include/thrift_constants.hrl @@ -0,0 +1,62 @@ +%% +%% Licensed to the Apache Software Foundation (ASF) under one +%% or more contributor license agreements. See the NOTICE file +%% distributed with this work for additional information +%% regarding copyright ownership. The ASF licenses this file +%% to you under the Apache License, Version 2.0 (the +%% "License"); you may not use this file except in compliance +%% with the License. You may obtain a copy of the License at +%% +%% http://www.apache.org/licenses/LICENSE-2.0 +%% +%% Unless required by applicable law or agreed to in writing, +%% software distributed under the License is distributed on an +%% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +%% KIND, either express or implied. See the License for the +%% specific language governing permissions and limitations +%% under the License. +%% + +%% TType +-define(tType_STOP, 0). +-define(tType_VOID, 1). +-define(tType_BOOL, 2). +-define(tType_BYTE, 3). +-define(tType_I8, 3). +-define(tType_DOUBLE, 4). +-define(tType_I16, 6). +-define(tType_I32, 8). +-define(tType_I64, 10). +-define(tType_STRING, 11). +-define(tType_STRUCT, 12). +-define(tType_MAP, 13). +-define(tType_SET, 14). +-define(tType_LIST, 15). + +% TMessageType +-define(tMessageType_CALL, 1). +-define(tMessageType_REPLY, 2). +-define(tMessageType_EXCEPTION, 3). +-define(tMessageType_ONEWAY, 4). + +% TApplicationException +-define(TApplicationException_Structure, + {struct, [{1, string}, + {2, i32}]}). + +-record('TApplicationException', {message, type}). + +-define(TApplicationException_UNKNOWN, 0). +-define(TApplicationException_UNKNOWN_METHOD, 1). +-define(TApplicationException_INVALID_MESSAGE_TYPE, 2). +-define(TApplicationException_WRONG_METHOD_NAME, 3). +-define(TApplicationException_BAD_SEQUENCE_ID, 4). +-define(TApplicationException_MISSING_RESULT, 5). +-define(TApplicationException_INTERNAL_ERROR, 6). +-define(TApplicationException_PROTOCOL_ERROR, 7). +-define(TApplicationException_INVALID_TRANSFORM, 8). +-define(TApplicationException_INVALID_PROTOCOL, 9). +-define(TApplicationException_UNSUPPORTED_CLIENT_TYPE, 10). + +-define (MULTIPLEXED_SERVICE_SEPARATOR, ":"). +-define (MULTIPLEXED_ERROR_HANDLER_KEY, "error_handler"). diff --git a/src/jaegertracing/thrift/lib/erl/include/thrift_protocol.hrl b/src/jaegertracing/thrift/lib/erl/include/thrift_protocol.hrl new file mode 100644 index 000000000..bc0acc883 --- /dev/null +++ b/src/jaegertracing/thrift/lib/erl/include/thrift_protocol.hrl @@ -0,0 +1,66 @@ +%% +%% Licensed to the Apache Software Foundation (ASF) under one +%% or more contributor license agreements. See the NOTICE file +%% distributed with this work for additional information +%% regarding copyright ownership. The ASF licenses this file +%% to you under the Apache License, Version 2.0 (the +%% "License"); you may not use this file except in compliance +%% with the License. You may obtain a copy of the License at +%% +%% http://www.apache.org/licenses/LICENSE-2.0 +%% +%% Unless required by applicable law or agreed to in writing, +%% software distributed under the License is distributed on an +%% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +%% KIND, either express or implied. See the License for the +%% specific language governing permissions and limitations +%% under the License. +%% + +-ifndef(THRIFT_PROTOCOL_INCLUDED). +-define(THRIFT_PROTOCOL_INCLUDED, true). + +-record(protocol_message_begin, {name :: string(), type :: integer(), seqid :: integer()}). +-record(protocol_struct_begin, {name :: string()}). +-record(protocol_field_begin, {name :: string(), type :: integer(), id :: integer()}). +-record(protocol_map_begin, {ktype :: integer(), vtype :: integer(), size :: integer()}). +-record(protocol_list_begin, {etype :: integer(), size :: integer()}). +-record(protocol_set_begin, {etype :: integer(), size :: integer()}). + +-type tprot_header_val() :: #protocol_message_begin{} + | #protocol_struct_begin{} + | #protocol_field_begin{} + | #protocol_map_begin{} + | #protocol_list_begin{} + | #protocol_set_begin{} + . +-type tprot_empty_tag() :: message_end + | struct_begin + | struct_end + | field_end + | map_end + | list_end + | set_end + . +-type tprot_header_tag() :: message_begin + | field_begin + | map_begin + | list_begin + | set_begin + . +-type tprot_data_tag() :: ui32 + | bool + | byte + | i16 + | i32 + | i64 + | double + | string + . +-type tprot_cont_tag() :: {list, _Type} + | {map, _KType, _VType} + | {set, _Type} + . + + +-endif. diff --git a/src/jaegertracing/thrift/lib/erl/include/thrift_protocol_behaviour.hrl b/src/jaegertracing/thrift/lib/erl/include/thrift_protocol_behaviour.hrl new file mode 100644 index 000000000..abe300b1b --- /dev/null +++ b/src/jaegertracing/thrift/lib/erl/include/thrift_protocol_behaviour.hrl @@ -0,0 +1,37 @@ +%% +%% Licensed to the Apache Software Foundation (ASF) under one +%% or more contributor license agreements. See the NOTICE file +%% distributed with this work for additional information +%% regarding copyright ownership. The ASF licenses this file +%% to you under the Apache License, Version 2.0 (the +%% "License"); you may not use this file except in compliance +%% with the License. You may obtain a copy of the License at +%% +%% http://www.apache.org/licenses/LICENSE-2.0 +%% +%% Unless required by applicable law or agreed to in writing, +%% software distributed under the License is distributed on an +%% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +%% KIND, either express or implied. See the License for the +%% specific language governing permissions and limitations +%% under the License. +%% + +%% Signature specifications for protocol implementations. + +-ifndef(THRIFT_PROTOCOL_BEHAVIOUR_INCLUDED). +-define(THRIFT_PROTOCOL_BEHAVIOUR_INCLUDED, true). + +-spec flush_transport(state()) -> {state(), ok | {error, _Reason}}. +-spec close_transport(state()) -> {state(), ok | {error, _Reason}}. + +-spec write(state(), any()) -> {state(), ok | {error, _Reason}}. + +%% NOTE: Keep this in sync with thrift_protocol:read and read_specific. +-spec read + (state(), tprot_empty_tag()) -> {state(), ok | {error, _Reason}}; + (state(), tprot_header_tag()) -> {state(), tprot_header_val() | {error, _Reason}}; + (state(), tprot_data_tag()) -> {state(), {ok, any()} | {error, _Reason}}. + + +-endif. diff --git a/src/jaegertracing/thrift/lib/erl/include/thrift_transport_behaviour.hrl b/src/jaegertracing/thrift/lib/erl/include/thrift_transport_behaviour.hrl new file mode 100644 index 000000000..dbc05aacf --- /dev/null +++ b/src/jaegertracing/thrift/lib/erl/include/thrift_transport_behaviour.hrl @@ -0,0 +1,31 @@ +%% +%% Licensed to the Apache Software Foundation (ASF) under one +%% or more contributor license agreements. See the NOTICE file +%% distributed with this work for additional information +%% regarding copyright ownership. The ASF licenses this file +%% to you under the Apache License, Version 2.0 (the +%% "License"); you may not use this file except in compliance +%% with the License. You may obtain a copy of the License at +%% +%% http://www.apache.org/licenses/LICENSE-2.0 +%% +%% Unless required by applicable law or agreed to in writing, +%% software distributed under the License is distributed on an +%% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +%% KIND, either express or implied. See the License for the +%% specific language governing permissions and limitations +%% under the License. +%% + +%% Signature specifications for transport implementations. + +-ifndef(THRIFT_TRANSPORT_BEHAVIOUR_INCLUDED). +-define(THRIFT_TRANSPORT_BEHAVIOUR_INCLUDED, true). + +-spec write(state(), iolist() | binary()) -> {state(), ok | {error, _Reason}}. +-spec read(state(), non_neg_integer()) -> {state(), {ok, binary()} | {error, _Reason}}. +-spec flush(state()) -> {state(), ok | {error, _Reason}}. +-spec close(state()) -> {state(), ok | {error, _Reason}}. + + +-endif. |