8 import ctrlxdatalayer.clib_converter
11 C_DLR_CONVERTER = ctypes.c_void_p
31 __slots__ = [
'__converter']
33 def __init__(self, c_converter: C_DLR_CONVERTER):
41 handle value of Converter:
48 This function generate a JSON string out of a Variant witch have a simple data type
49 @param[in] data Variant which contains data with simple data type
50 @param[in] indentStep Indentation length for json string
51 @returns tuple (Result, Variant)
52 @return <Result>, status of function call,
53 @return <Variant>, Generated JSON as Variant (string)
56 result =
Result(ctrlxdatalayer.clib.libcomm_datalayer.DLR_converterGenerateJsonSimple(
57 self.
__converter__converter, data.get_handle(), json.get_handle(), indent_step))
62 This function generate a JSON string out of a Variant with complex type (flatbuffers) and the metadata of this data
63 @param[in] data Variant which contains data of complex data type (flatbuffers) if data is empty (VariantType::UNKNOWN) type is converted to json schema
64 @param[in] type Variant which contains type of data (Variant with flatbuffers BFBS)
65 @param[in] indentStep Indentation length for json string
66 @returns tuple (Result, Variant)
67 @return <Result>, status of function call,
68 @return <Variant>, Generated JSON as Variant (string)
71 result =
Result(ctrlxdatalayer.clib.libcomm_datalayer.DLR_converterGenerateJsonComplex(
72 self.
__converter__converter, data.get_handle(), ty.get_handle(), json.get_handle(), indent_step))
77 This function generates a Variant out of a JSON string containing the (simple) data
78 @param[in] json Data of the Variant as a json string
79 @returns tuple (Result, Variant, Variant)
80 @return <Result>, status of function call,
81 @return <Variant>, Variant which contains the data
82 @return <Variant>, Error as Variant (string)
84 b_json = json.encode(
'utf-8')
87 result =
Result(ctrlxdatalayer.clib.libcomm_datalayer.DLR_converterParseJsonSimple(
88 self.
__converter__converter, b_json, data.get_handle(), err.get_handle()))
89 return result, data, err
93 This function generates a Variant out of a JSON string containing the (complex) data
94 @param[in] json Data of the Variant as a json string
95 @param[in] type Variant which contains type of data (Variant with bfbs flatbuffer content)
96 @returns tuple (Result, Variant, Variant)
97 @return <Result>, status of function call,
98 @return <Variant>, Variant which contains the data
99 @return <Variant>, Error as Variant (string)
101 b_json = json.encode(
'utf-8')
104 result =
Result(ctrlxdatalayer.clib.libcomm_datalayer.DLR_converterParseJsonComplex(
105 self.
__converter__converter, b_json, ty.get_handle(), data.get_handle(), err.get_handle()))
106 return result, data, err
110 This function returns the type (schema)
111 @param[in] schema Requested schema
112 @returns tuple (Result, Variant)
113 @return <Result>, status of function call,
114 @return <Variant>, Variant which contains the type (schema)
117 result =
Result(ctrlxdatalayer.clib.libcomm_datalayer.DLR_converterGetSchema(
118 self.
__converter__converter, schema.value, data.get_handle()))
def converter_generate_json_simple(self, Variant data, int indent_step)
This function generate a JSON string out of a Variant witch have a simple data type.
def converter_generate_json_complex(self, Variant data, Variant ty, int indent_step)
This function generate a JSON string out of a Variant with complex type (flatbuffers) and the metadat...
def __init__(self, C_DLR_CONVERTER c_converter)
generate converter
def parse_json_simple(self, str json)
This function generates a Variant out of a JSON string containing the (simple) data.
def get_handle(self)
handle value of Converter:
def get_schema(self, C_DLR_SCHEMA schema)
This function returns the type (schema)
def parse_json_complex(self, str json, Variant ty)
This function generates a Variant out of a JSON string containing the (complex) data.
Variant is a container for a many types of data.