CN114020272A - A serialized encoding and decoding method, device and electronic device - Google Patents
A serialized encoding and decoding method, device and electronic device Download PDFInfo
- Publication number
- CN114020272A CN114020272A CN202111117236.XA CN202111117236A CN114020272A CN 114020272 A CN114020272 A CN 114020272A CN 202111117236 A CN202111117236 A CN 202111117236A CN 114020272 A CN114020272 A CN 114020272A
- Authority
- CN
- China
- Prior art keywords
- data
- type
- encoded
- serialized
- decoding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004891 communication Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000012812 general test Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
The embodiment of the invention provides a method, a device and electronic equipment for serialized encoding and decoding, wherein the method comprises the following steps: acquiring data to be encoded, and determining the data type of the data to be encoded; coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type; and sending the obtained serialized data to a target system. According to the embodiment of the invention, cross-language coding and decoding of the existing object data are realized, and information such as the data type is added in the serialized data, so that a decoding side can accurately decode the serialized data according to a coding and decoding protocol corresponding to the data type, even if a class object automatically generated by the protocol is not used, self-decoding can still be carried out under the condition of no schema description, the class object is converted into a general object, and the use flexibility is improved.
Description
Technical Field
The invention relates to the technical field of computer languages, in particular to a serialized encoding and decoding method, a serialized encoding and decoding device and electronic equipment.
Background
In a multi-computer language system, data transmission between different computer systems or services is called data interaction, and in the data interaction process, transmitted data needs to be serialized, wherein the serialization refers to a process of converting data to be interacted into a binary data format consisting of 0 and 1, and the data is conveniently transmitted through physical or optical signals only after being converted into the binary data. Generally, the serialization is divided into two parts, encoding and decoding. The process of serializing the scattered data structure into a continuous stream of bytes. At present, the commonly used serialization engineering includes ProtoBuf, XML, json, etc., where the ProtoBuf is a cross-language serialization protocol designed by google, and can automatically generate class objects of different computer languages by writing a description file (schema) with an extension of proto, and can perform binary encoding and decoding on the class objects, and directly perform data interaction on computer systems of different languages.
The above-described sequencing tool has the following disadvantages. Taking the ProtoBuf serialization as an example, 1. the ProtoBuf serialization is poor in compatibility, and only a class object automatically generated by the ProtoBuf can be used for encoding and decoding, so that the ProtoBuf serialization is only suitable for being applied to a data type of a newly created object. The existing data types of the objects cannot be serialized, and some scenes of performing micro-service transformation on the old service cannot be compatible. 2. The flexibility is poor, when the ProtoBuf serialization is used, the class code automatically generated by the ProtoBuf must be introduced, and therefore, the related file must be introduced when the ProtoBuf object type is required to be coded and decoded. For some general test service scenarios or general gateway scenarios, when different services need to be processed in a unified manner, the ProtoBuf files corresponding to all the services must be introduced, which brings certain complexity to the extension and maintenance of these general components.
Therefore, the existing serialization tools all adopt an invasive serialization method, developers need to use a data structure specified by the serialization tools, otherwise, serialization cannot be realized, and the serialization method is too complex.
Disclosure of Invention
The embodiment of the invention aims to provide a serialization encoding and decoding method, a serialization encoding and decoding device and electronic equipment, and aims to solve the problems that a developer needs to use a data structure specified by a serialization tool, otherwise, serialization cannot be realized, and the serialization method is too complex.
In order to solve the above technical problem, the embodiment of the present invention is implemented as follows:
in a first aspect, an embodiment of the present invention provides a method for serialized coding, including:
acquiring data to be encoded, and determining the data type of the data to be encoded;
coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type;
and sending the obtained serialized data to a target system.
In a second aspect, an embodiment of the present invention provides a serialized decoding method, including:
acquiring serialized data, and determining the data type of the decoded data according to the type number contained in the serialized data;
and decoding the serialized data according to a Breeze decoding protocol corresponding to the data type in a preset serialization protocol to obtain decoded data.
In a third aspect, an embodiment of the present invention provides a serialization encoding apparatus, including:
the extraction module is used for acquiring data to be encoded and determining the data type of the data to be encoded;
the coding module is used for coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialization data; wherein the serialized data comprises: a type number corresponding to the data type;
and the sending module is used for sending the obtained serialized data to a target system.
In a fourth aspect, an embodiment of the present invention provides a serialized decoding apparatus, including:
the receiving module is used for acquiring the serialized data and determining the data type of the decoded data according to the type number contained in the serialized data;
and the decoding module is used for decoding the serialized data according to a Breeze decoding protocol corresponding to the data type in a preset serialization protocol to obtain decoded data.
In a fifth aspect, an embodiment of the present invention provides an electronic device, including a processor, a communication interface, a memory, and a communication bus; the processor, the communication interface and the memory complete mutual communication through a bus; the memory is used for storing a computer program; the processor is configured to execute the program stored in the memory to implement the steps of the serialized encoding and decoding method according to the first and second aspects.
In a sixth aspect, the embodiment of the present invention provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the serialized encoding and decoding method according to the first aspect and the second aspect are implemented.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention obtains the data to be coded and determines the data type of the data to be coded; coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type; and sending the obtained serialized data to a target system. According to the embodiment of the invention, cross-language coding and decoding of the existing object data are realized, and information such as the data type is added in the serialized data, so that a decoding side can accurately decode the serialized data according to a coding and decoding protocol corresponding to the data type, even if a class object automatically generated by the protocol is not used, self-decoding can still be carried out under the condition of no schema description, the class object is converted into a general object, and the use flexibility is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only some embodiments described in the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 is a flowchart illustrating a serialized encoding and decoding method according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a multi-computer language system according to an embodiment of the present invention;
FIG. 3 is a flowchart illustrating a method for serialized encoding and decoding according to an embodiment of the present invention;
FIG. 4 is a flowchart illustrating a serialized decoding method according to an embodiment of the present invention;
FIG. 5 is a flowchart illustrating a serialized decoding method according to an embodiment of the present invention;
FIG. 6 is a schematic structural diagram of a serialized coding apparatus according to an embodiment of the present invention;
fig. 7 is a schematic structural diagram of a serialized decoding apparatus according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The embodiment of the invention provides a serialized encoding and decoding method, a serialized encoding and decoding device and electronic equipment.
In order to make those skilled in the art better understand the technical solution of the present invention, the technical solution in the embodiment of the present invention will be clearly and completely described below with reference to the drawings in the embodiment of the present invention, and it is obvious that the described embodiment is only a part of the embodiment of the present invention, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As shown in fig. 1, an embodiment of the present invention provides a serialized coding method, where an execution subject of the method may be a coding module or the like. The method may specifically comprise the steps of:
step S110, acquiring data to be encoded, and determining the data type of the data to be encoded.
In a multi-computer language system, as a plurality of software systems are involved, as shown in fig. 2, when data of a source system a is transmitted to a target system B, data to be decoded, that is, data of the source system a, needs to be encoded into binary serialized data through an encoding module arranged in the source system a, and then transmitted to the target system B, and received serialized data is decoded through a decoding module arranged in the target system B, so that decoded data, that is, data of the target system B, is obtained.
When acquiring data to be encoded, which needs to be transmitted to a target system B by a source system A, an encoding module determines the data type of the data to be encoded according to a preset data classification method.
Step S120, coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialization data; wherein the serialized data comprises: a type number (type) corresponding to the data type. It will be appreciated that the type number corresponding to the data type may indicate the Breeze encoding protocol used when encoding the data to be encoded.
It should be understood that the serialization protocol is a series of Breeze codec protocols corresponding to various data types.
When it is known that data transmission among a plurality of software systems is realized based on a ProtoBuf serialization protocol, it is necessary to store a uniform schema file of the ProtoBuf serialization protocol in both a source system a and a target system B, the source system a encodes based on the schema file of the ProtoBuf serialization protocol, the target system B decodes based on the schema file of the ProtoBuf serialization protocol, and only a class object automatically generated by the ProtoBuf can be used, and the data type of an existing object cannot be serialized. The Breeze codec protocol according to the embodiment of the present application may directly perform codec on a data type of an existing object without a schema file in the source system a and the target system B.
It should be understood that the Breeze codec protocol may also have a corresponding schema file, and store the schema file into the source system a and the target system B for codec, but at this time, the codec process of the data type of the existing object is not affected. The schema file of the Breeze coding and decoding protocol comprises a Breeze object described by the schema file, the schema file consists of keywords and data types, wherein the keywords are used for specifying the action of the corresponding section; the data type is used to describe the data type of the member.
The scheme file is specifically exemplified as follows:
the description of the keywords in the schema file is illustrated in table 1 below:
TABLE 1
The types of data supported in the Schema file are illustrated as shown in table 2 below:
TABLE 2
The data types may be classified according to actual needs, and in one implementation, the embodiments of the present application mainly classify all data types into three major categories, including:
a base data type; wherein the basic data types include: the method comprises the steps of a standard coding type and a direct coding type, wherein the direct coding type is a basic data type meeting a preset direct coding condition;
a collection type; wherein the set type includes: the data type of each element in the data to be coded is the same;
a message (message) type, wherein each field in data to be coded of the message type corresponds to at least one data type; wherein the message types include: the message name reference table comprises a standard message type and a reference type, wherein the reference type is the message type of which the message name exists in the preset reference table.
The underlying data types may include those shown in table 2 above: string, int16, int32, int64, bytes, float32, float64, and the like.
The set type comprises a Map type and an array (array) type; wherein the Map type is a set type composed of key value pairs (value) as elements.
The fields in the message type data may support: the basic data type, the set type and the message type include: string, int32, int64, int16, bytes, float32, float64, map, array, message, etc.
Further, as shown in fig. 3, the specific processing manner of the step S120 may be varied, and a specific embodiment is provided below.
And under the condition that the data to be coded is of the basic data type, judging whether the data to be coded meets a preset direct coding condition.
The direct encoding condition may be set according to actual needs, and may include: a target basic data type and a basic data type within a preset value range. Wherein the target base data type may include: null objects, Boolean values (TRUE, FALSE), single byte type, etc. The basic data types within the preset value range may include: string with length less than 63 character strings, integer type with value between-16 and 46 and long integer type with value between-8 and 15.
If the data to be coded meets the direct coding condition, the serialized data of the data to be coded comprises: and the type number of the data to be coded. As shown in fig. 3, the data to be encoded is encoded in a direct encoding type, and the type number of the data to be encoded may indicate the data type, data length (Size), and/or data content of the data to be encoded.
If the data to be coded does not satisfy the direct coding condition, the serialized data of the data to be coded includes: the type number of the data to be coded, the sequence code of the data length of the serialized data, and the sequence code of the data content of the data to be coded. As shown in fig. 3, the data to be encoded is encoded in a standard encoding type.
It should be understood that the sequence code of the data length and the sequence code of the data content are respectively obtained based on a preset encoding protocol. The encoding protocol can be set according to actual needs, for example, a sequence code of a data length can be obtained based on variable length integer (varInt) encoding; for the data content of the character string, the sequence code of the data content can be obtained based on utf8 encoding; for a data content of a numerical value, a sequence code of the data content may be obtained based on zigzag encoding.
Specific examples are as follows:
1. the data to be coded is string, and the data content is as follows: hello, Breeze!
The encoded serialized data is:
(14| "hello, Breeze!" sequence code)
Wherein, the first number 14 is used to indicate that the data type of the data to be encoded is: a direct string type of a direct coding type, and a data length of the serialized data. The "hello, Breeze! "can be obtained based on utf8 encoding:
(104 101 108 108 111 44 32 66 114 101 101 122 101 33)
2. the data to be coded is int, and the data content is: 266
The encoded serialized data is:
(127| "266" of the sequence code)
Wherein, the first number 127 is used to indicate that the data type of the data to be encoded is: standard encoded int. The sequence code of "266" may be obtained based on zigzag encoding:
(1484)
3. the data to be encoded is float32, and the data content is: 3.1415
The encoded serialized data is:
(159| "3.1415" sequence code)
Wherein, the first number 159 is used to indicate that the data type of the data to be encoded is: standard coded float 32. The sequence code for "3.1415" may be based on zigzag encoding:
(64 73 14 86)
under the condition that the data to be coded is of a set type, judging whether the data types of all elements in the data to be coded are the same:
if the data types of the elements in the data to be encoded are the same, the serialized data of the data to be encoded includes: the type number of the data to be coded, the sequence code of the number of the elements in the data to be coded, the type numbers of the data types of all the elements, and the sequence code of the data content of each element. As shown in fig. 3, the data to be encoded is encoded in a compact set type. Because elements contained in a compact (Packed) set type all adopt the same data type, only the type number of the data type of one element is needed in the serialized data of the data to be encoded.
If the data types of the elements in the data to be encoded are different, the serialized data of the data to be encoded includes: the type number of the data to be coded, the sequence code of the number of elements in the data to be coded and the sequence code of each element; wherein, the sequence code of each element comprises: the type number of the data type of each element and the sequence code of the data content of each element. As shown in fig. 3, the data to be encoded is encoded in a normal set type.
It should be understood that the sequence code of the data content of each element is specifically a sequence code obtained by encoding the data content of each element based on the Breeze encoding protocol according to the data type of each element.
It should be understood that if the data to be encoded is of Map type, each element actually contains a key: for this reason, the type number of the data type of the key and the type number of the data type of the value need to be given in the type number of the data type of each element, and the sequence code of the data content of the key and the sequence code of the data type of the value need to be given in the sequence code of the data content of each element.
Specific examples are as follows:
1. the data to be coded is string, the data content is { < name: zhang three >, < 78: 3.14> }
The encoded serialized data is:
(217|2| sequence code of key "name" in first element | sequence code of value "three" in first element | sequence code in second element |
Wherein, the first number 217 is used to indicate that the data type of the data to be encoded is: a Map type of a common set type, a second number 2 indicating that the number of elements contained in the data to be encoded is 2, a sequence code of "name" including a type number of a data type of "name" and a sequence code of a data content of "name":
(6|229 167 147 229 144 141)
the sequence code of "zhang san" includes the type number of the data type of "zhang san" and the sequence code of the data content of "zhang san":
(6|229 188 160 228 184 137)
the sequence code of "78" includes the type number of the data type of "78" and the sequence code of the data content of "78":
(127|156 1)
the sequence code of "3.14" includes the type number of the data type of "3.14" and the sequence code of the data content of "3.14":
(159|64 72 245 195)
2. the data to be coded is Map, and the data content is as follows: { < name: zhang III >, < Sao Bian: beijing > }
The encoded serialized data is:
(219|2| type number of data type of key in element | type number of data type of value in element | th
Wherein, the first number 219 is used to indicate that the data type of the data to be encoded is: PackedMap, the second number 2 is used to indicate that the number of elements contained in the data to be encoded is 2, the string of the data type of key in the element corresponds to type number 63, the data type of value in the element is string and the corresponding type number is 63, and the sequence code of "name" includes the type number of the data type of "name" and the sequence code of the data content of "name":
(6|229 167 147 229 144 141)
the sequence code of "zhang san" includes the type number of the data type of "zhang san" and the sequence code of the data content of "zhang san":
(6|229 188 160 228 184 137)
the sequence code of the "province" includes the type number of the data type of the "province" and the sequence code of the data content of the "province":
(6|231 156 129 228 187 189)
the sequence code of "beijing" includes the type number of the data type of "beijing" and the sequence code of the data content of "beijing":
(6|229 140 151 228 186 172)
3. the data to be coded is of an array type, and the data content is as follows: { Zhang III, 78, 3.14}
The encoded serialized data is:
(218|3| sequence code of first element "Zhang three" | sequence code of second element "78" | sequence code of third element "3.14")
Wherein, the first number 218 is used to indicate that the data type of the data to be encoded is: the common set type array, the second number 3 is used to indicate that the number of elements contained in the data to be encoded is 3, the sequence code of "zhangsan" includes the type number of the data type of "zhangsan" and the sequence code of the data content of "zhangsan":
(6|229 188 160 228 184 137)
the sequence code of "78" includes the type number of the data type of "78" and the sequence code of the data content of "78":
(127|156 1)
the sequence code of "3.14" includes the type number of the data type of "3.14" and the sequence code of the data content of "3.14":
(159|64 72 245 195)
4. the data to be coded is of an array type, and the data content is as follows: { Zhang three, hello, test }
The encoded serialized data is:
(220|3| the order of the type number of the data type of the element | sequence code of the first element "Zhang three" | second element "hello
Wherein, the first number 220 is used to indicate that the data type of the data to be encoded is: the second number 3 is used to indicate that the number of elements contained in the data to be encoded is 3, the string of the data type of the element, the corresponding type number is 63, and the sequence code of "zhang san" includes the type number of the data type of "zhang san" and the sequence code of the data content of "zhang san":
(6|229 188 160 228 184 137)
the sequence code of "hello" includes the type number of the data type of "hello" and the sequence code of the data content of "hello":
(5|104 101 108 108 111)
the sequence code of "test" includes the type number of the data type of "test" and the sequence code of the data content of "test":
(4|116 101 115 116)
under the condition that the data to be coded is in a message type, judging whether a reference table comprises a message name of the data to be coded, and coding the data to be coded according to object data corresponding to the data to be coded in a scheme file:
if the message name of the data to be encoded does not exist in the reference table, the serialized data of the data to be encoded includes: the type number of the data to be encoded, the sequence code of the message name of the data to be encoded, the sequence code of the data length of the serialized data, the sequence code of each field (field) in the data to be encoded, and the message name of the data to be encoded is recorded in the reference table; wherein, the sequence code of each field includes: the arrangement sequence number (fieldindex) of each field in the data to be encoded, and the sequence code of the data content of each field. As shown in fig. 3, the data to be encoded is encoded in a standard message type.
If the message name of the data to be encoded exists in the reference table, the serialized data of the data to be encoded includes: the type number of the data to be coded, the sequence code of the data length of the serialized data, and the sequence code of each field in the data to be coded. As shown in fig. 3, the data to be encoded is encoded with a reference type (ref message).
It should be understood that the sequence number of each field in the data to be encoded is obtained according to the sequence of each field in the data to be encoded. In addition, if encoding and decoding are performed on data to be encoded based on a schema file, it is required to firstly confirm whether an object type corresponding to the data to be encoded exists in the schema file, and if so, it is required to determine an arrangement sequence number of a corresponding field in the data to be encoded based on an arrangement sequence of each field in the object type; otherwise, the corresponding sequence number is still determined based on the sequence of each field in the data to be coded.
Specific examples are as follows:
the data to be coded is of a message type, and the data content is as follows:
1. if the message name "motan. testmsg" of the data to be encoded does not exist in the preset reference table, the encoded serialized data is:
(222| sequence code of message name "motan. testmsg" of data to be encoded | sequence of data length of serialized data
Wherein, the first number 222 is used to indicate that the data type of the data to be encoded is: a standard message type; the sequence code of the message name "motan. testmsg" of the data to be encoded includes: type number of data type of message name "motan.testmsg" and sequence code of data content of message name "motan.testmsg":
(16|109 111 116 97 110 46 84 101 115 116 83 117 98 77 115 103)
the data length of the serialized data shown has a sequence code of (00024).
The field "MyString: the sequence code of subString "includes: the field "MyString: subString "sequence number in the arrangement sequence number (1) of the object data and the data content" subString "of the field. The sequence numbers of the data content "subString" include: type number of data type of data content "subString" (9), serial code of data content "subString":
(115 117 98 83 116 114 105 110 103)
the field "MyInt: the 22 "sequence code comprises: the field "MyInt: 22' sequence code of data content "22" in the arrangement sequence number (2) and field of the object data: (102).
Field "MyFloat 32: the sequence code of 3.14 "includes: field "MyFloat 32: 3.14' sequence number in the arrangement sequence number (4) of the object data, and the data content "3.14" of the field includes: type number (159) of data type of data content "3.14" and sequence code of data content "subString": (6472245195).
The field "MyByte: the sequence code of 17 "includes: the field "MyByte: 17 "sequence code of data content" 17 "in the arrangement number (156) and field of the object data: (17).
The field "MyBool: the sequence code of true "includes: the field "MyBool: true "sequence code of data content" true "in the arrangement sequence number (11) and field of the object data: (154).
2. If the message name "motan. testmsg" of the data to be encoded exists in the preset reference table, the encoded serialized data is:
(type number | sequence code | field of data length of serialized data | sequence code | field "MyString: subString
The type number may be used to indicate that the data to be encoded is a reference type, and a reference number (refIndex) is corresponding to the data to be encoded in the reference table. For example, if the reference number of the data to be encoded is 1, the type number in the serialized data is 224; if the reference number of the data to be coded is 2, the type number in the serialized data is 225.
An example of the Breeze codec protocol of the embodiment of the present application is given below, as shown in table 3 below:
TABLE 3
And step S130, sending the obtained serialized data to a target system.
If other data to be coded exist in the data set sent to the target system B by the source system A, the coding module continuously acquires new data to be coded from the data set to carry out coding, continuously sends the obtained serialized data to the target system B, and the decoding module of the target system B decodes the serialized data and converts the data into the data of the target system B, so that data transmission among multiple computer language systems is realized.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention obtains the data to be coded and determines the data type of the data to be coded; coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type; and sending the obtained serialized data to a target system. According to the embodiment of the invention, cross-language coding and decoding of the existing object data are realized, and information such as the data type is added in the serialized data, so that a decoding side can accurately decode the serialized data according to a coding and decoding protocol corresponding to the data type, even if a class object automatically generated by the protocol is not used, self-decoding can still be carried out under the condition of no schema description, the class object is converted into a general object, and the use flexibility is improved.
Corresponding to the serialized coding method provided in the foregoing embodiment, as shown in fig. 4, an embodiment of the present invention further provides a serialized decoding method, where an execution main body of the method may be a decoding module or the like. The method may specifically comprise the following steps.
Step S410, obtaining the serialized data, and determining the data type of the decoded data according to the type number contained in the serialized data.
Further, the data types include:
a base data type; wherein the basic data types include: the method comprises the steps of a standard coding type and a direct coding type, wherein the direct coding type is a basic data type meeting a preset direct coding condition;
a collection type; wherein the set type includes: the data type of each element in the data to be coded is the same;
the method comprises the steps of obtaining a message type, wherein each field in data to be coded of the message type corresponds to at least one data type; wherein the message types include: the message name reference table comprises a standard message type and a reference type, wherein the reference type is the message type of which the message name exists in the preset reference table.
And step S420, decoding the serialized data according to a Breeze decoding protocol corresponding to the data type in a preset serialized protocol to obtain decoded data.
Further, as shown in fig. 5, the specific processing manner of step S402 may be varied, and a specific embodiment is provided below.
And decoding the type number of the serialized data included in the serialized data if the data type of the decoded data is a direct coding type. The data type and data length and/or data content of the decoded data can be obtained by decoding the type number of the serialized data.
And in the case that the data type of the decoded data is a standard coding type, decoding the type number of the serialized data and the serial code of the data content included in the serialized data. And decoding the type number of the serialized data to obtain the data type of the decoded data, and decoding the sequence code of the data content to obtain the data content of the decoded data.
And in the case that the data type of the decoded data is a compact set type, decoding the type number of the serialized data, the serial code of the number of the elements, the type numbers of the data types of all the elements and the serial code of the data content of each element, wherein the serialized data comprises. The data type of the decoded data is obtained by decoding the type number of the serialized data, the number of elements in the decoded data is obtained by decoding the sequence code of the number of the elements, the data type of each element in the data type of the decoded data is obtained by the type number of the data type of all the elements, and the data content of each element in the decoded data is obtained by decoding the sequence code of the data content of each element.
Decoding the type number of the serialized data, the serial codes of the number of the elements and the serial codes of the elements included in the serialized data under the condition that the data type of the decoded data is a common set type; wherein, the sequence code of each element comprises: the type number of the data type of each element and the sequence code of the data content of each element. The data type of the decoded data is obtained by decoding the type number of the serialized data included in the serialized data, the number of elements in the decoded data is obtained by decoding the serial code of the number of elements, and the data type and the data content of each element in the decoded data are obtained by decoding the serial code of each element.
When the serialized data is of a standard message type, decoding the type number of the serialized data, the serial code of a message name, the serial code of the data length of the serialized data and the serial codes of all fields included in the serialized data, and recording the message name in the reference table; wherein, the sequence code of each field includes: the arrangement sequence number of each field in the object data and the sequence code of the data content of each field. The data type of the decoding data is obtained by decoding the type number of the serialized data, the message name of the decoding data is obtained by decoding the sequence code of the message name, the data length of the serialized data is obtained by decoding the sequence code of the data length of the serialized data, and the arrangement serial number and the data content of each field in the object data in the decoding data are obtained by decoding the sequence code of each field.
And under the condition that the serialized data is a reference type, decoding the type number of the serialized data, the sequence code of the data length of the serialized data and the sequence code of each field in the serialized data, wherein the serialized data comprises, and acquiring a message name from the reference table according to the reference number extracted from the type number of the serialized data. And obtaining the data type and the reference number of the decoded data by numbering the type of the serialized data, obtaining the length of the object type by decoding the sequence code of the data length of the serialized data, and obtaining the arrangement serial number and the data content of each field in the object data by decoding the sequence code of each field.
The Breeze codec protocol of the embodiments of the present application is illustrated as shown in table 3 below.
And the decoding module extracts the sequence code data from the buffer area in sequence and decodes the sequence code data to obtain decoding data suitable for the target system B until the sequence code data in the buffer area are completely decoded.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention determines the data type of the decoding data by acquiring the serialized data and according to the type number contained in the serialized data; and decoding the serialized data according to a Breeze decoding protocol corresponding to the data type in a preset serialization protocol to obtain decoded data. According to the embodiment of the invention, cross-language coding and decoding of the existing object data are realized, and information such as the data type is added in the serialized data, so that a decoding side can accurately decode the serialized data according to a coding and decoding protocol corresponding to the data type, even if a class object automatically generated by the protocol is not used, self-decoding can still be carried out under the condition of no schema description, the class object is converted into a general object, and the use flexibility is improved.
On the basis of the same technical concept, the embodiment of the present invention further provides a serialization encoding apparatus, and fig. 6 is a schematic diagram illustrating a module of the serialization decoding apparatus according to the embodiment of the present invention, where the serialization encoding apparatus is configured to execute the serialization encoding method described in fig. 1 to 3, and as shown in fig. 6, the serialization encoding apparatus includes: an extraction module 601, an encoding module 602, and a sending module 603.
The extraction module 601 is configured to obtain data to be encoded, and determine a data type of the data to be encoded; the encoding module 602 is configured to encode the data to be encoded according to a Breeze encoding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type; the sending module 603 is configured to send the obtained serialized data to a target system.
Further, the data types include:
a base data type; wherein the basic data types include: the method comprises the steps of a standard coding type and a direct coding type, wherein the direct coding type is a basic data type meeting a preset direct coding condition;
a collection type; wherein the set type includes: the data type of each element in the data to be coded is the same;
the method comprises the steps of obtaining a message type, wherein each field in data to be coded of the message type corresponds to at least one data type; wherein the message types include: the message name reference table comprises a standard message type and a reference type, wherein the reference type is the message type of which the message name exists in the preset reference table.
Further, the encoding module 602 is configured to:
under the condition that the data to be coded is of a basic data type, judging whether the data to be coded meets a preset direct coding condition:
if the data to be coded meets the direct coding condition, the serialized data of the data to be coded comprises: the type number of the data to be coded;
if the data to be coded does not satisfy the direct coding condition, the serialized data of the data to be coded includes: the type number of the data to be coded and the sequence code of the data content of the data to be coded;
under the condition that the data to be coded is of a set type, judging whether the data types of all elements in the data to be coded are the same:
if the data types of the elements in the data to be encoded are the same, the serialized data of the data to be encoded includes: the type number of the data to be coded, the sequence code of the number of the elements in the data to be coded, the type numbers of the data types of all the elements, and the sequence code of the data content of each element;
if the data types of the elements in the data to be encoded are different, the serialized data of the data to be encoded includes: the type number of the data to be coded, the sequence code of the number of elements in the data to be coded and the sequence code of each element; wherein, the sequence code of each element comprises: the type number of the data type of each element and the sequence code of the data content of each element;
under the condition that the data to be coded is in a message type, judging whether a reference table comprises a message name of the data to be coded, and coding the data to be coded according to object data corresponding to the data to be coded in a description file:
if the message name of the data to be encoded does not exist in the reference table, the serialized data of the data to be encoded includes: the type number of the data to be coded, the sequence code of the message name of the data to be coded, the sequence code of the data length of the serialized data, the sequence code of each field in the data to be coded, and the message name of the data to be coded is recorded in the reference table; wherein, the sequence code of each field includes: the sequence number of each field in the data to be coded and the sequence code of the data content of each field;
if the message name of the data to be encoded exists in the reference table, the serialized data of the data to be encoded includes: the type number of the data to be coded, the reference number corresponding to the data to be coded in the reference table, the sequence code of the data length of the serialized data, and the sequence code of each field in the data to be coded.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention obtains the data to be coded and determines the data type of the data to be coded; coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type; and sending the obtained serialized data to a target system. According to the embodiment of the invention, cross-language coding and decoding of the existing object data are realized, and information such as the data type is added in the serialized data, so that a decoding side can accurately decode the serialized data according to a coding and decoding protocol corresponding to the data type, even if a class object automatically generated by the protocol is not used, self-decoding can still be carried out under the condition of no schema description, the class object is converted into a general object, and the use flexibility is improved.
On the basis of the same technical concept, the embodiment of the present invention further provides a serialization decoding apparatus, and fig. 7 is a schematic diagram illustrating module components of the serialization decoding apparatus provided in the embodiment of the present invention, where the serialization decoding apparatus is used to execute the serialization decoding method described in fig. 4 to 5, and as shown in fig. 7, the serialization decoding apparatus includes: a receiving module 701 and a decoding module 702.
The receiving module 701 is configured to obtain serialized data, and determine a data type of the decoded data according to a type number included in the serialized data; the decoding module 702 is configured to decode the serialized data according to a Breeze decoding protocol corresponding to the data type in a preset serialized protocol, so as to obtain decoded data.
Further, the underlying data type; wherein the basic data types include: the method comprises the steps of a standard coding type and a direct coding type, wherein the direct coding type is a basic data type meeting a preset direct coding condition;
a collection type; wherein the set type includes: the data type of each element in the data to be coded is the same;
the method comprises the steps of obtaining a message type, wherein each field in data to be coded of the message type corresponds to at least one data type; wherein the message types include: the message name reference table comprises a standard message type and a reference type, wherein the reference type is the message type of which the message name exists in the preset reference table.
Further, the decoding module 702 is configured to:
decoding a type number of the serialized data included in the serialized data if a data type of the decoded data is a direct encoding type;
decoding the type number of the serialized data and the serial code of the data content included in the serialized data when the data type of the decoded data is a standard encoding type;
decoding the type number of the serialized data, the serial code of the number of the elements, the type number of the data types of all the elements and the serial code of the data content of each element, wherein the serialized data comprises the data type of compact set type;
decoding the type number of the serialized data, the serial codes of the number of the elements and the serial codes of the elements included in the serialized data under the condition that the data type of the decoded data is a common set type; wherein, the sequence code of each element comprises: the type number of the data type of each element and the sequence code of the data content of each element;
when the serialized data is of a standard message type, decoding the type number of the serialized data, the serial code of a message name, the serial code of the data length of the serialized data and the serial codes of all fields included in the serialized data, and recording the message name in the reference table; wherein, the sequence code of each field includes: the arrangement serial number of each field in the object data and the sequence code of the data content of each field;
and under the condition that the serialized data is a reference type, decoding the type number of the serialized data, the sequence code of the data length of the serialized data and the sequence code of each field in the serialized data, wherein the serialized data comprises, and acquiring a message name from the reference table according to the reference number extracted from the type number of the serialized data.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention determines the data type of the decoding data by acquiring the serialized data and according to the type number contained in the serialized data; and decoding the serialized data according to a Breeze decoding protocol corresponding to the data type in a preset serialization protocol to obtain decoded data. According to the embodiment of the invention, cross-language coding and decoding of the existing object data are realized, and information such as the data type is added in the serialized data, so that a decoding side can accurately decode the serialized data according to a coding and decoding protocol corresponding to the data type, even if a class object automatically generated by the protocol is not used, self-decoding can still be carried out under the condition of no schema description, the class object is converted into a general object, and the use flexibility is improved.
The serialized coding and decoding device provided by the embodiment of the invention can realize each process in the embodiment corresponding to the serialized coding and decoding method, and is not described again for avoiding repetition.
It should be noted that the serialization encoding and decoding apparatus and the serialization encoding and decoding method provided in the embodiments of the present invention are based on the same inventive concept, and therefore, specific implementation of the embodiments may refer to implementation of the serialization encoding and decoding method described above, and repeated details are not described herein.
On the basis of the same technical concept, the embodiment of the present invention further provides an electronic device for executing the above-mentioned serialized encoding and decoding method, and fig. 8 is a schematic structural diagram of an electronic device implementing various embodiments of the present invention, as shown in fig. 8. Electronic devices may vary widely in configuration or performance and may include one or more processors 801 and memory 802, where the memory 802 may store one or more stored applications or data. Wherein the memory 802 may be a transient storage or a persistent storage. The application program stored in memory 802 may include one or more modules (not shown), each of which may include a series of computer-executable instructions for the electronic device. Still further, the processor 801 may be configured to communicate with the memory 802 to execute a series of computer-executable instructions in the memory 802 on the electronic device. The electronic device may also include one or more power supplies 803, one or more wired or wireless network interfaces 804, one or more input-output interfaces 805, one or more keyboards 806.
Specifically, in this embodiment, the electronic device includes a processor, a communication interface, a memory, and a communication bus; the processor, the communication interface and the memory complete mutual communication through a bus; the memory is used for storing a computer program; the processor is used for executing the program stored in the memory and realizing the following method steps:
acquiring data to be encoded, and determining the data type of the data to be encoded;
coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type;
and sending the obtained serialized data to a target system.
An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, and when executed by a processor, the computer program implements the following method steps:
acquiring data to be encoded, and determining the data type of the data to be encoded;
coding the data to be coded according to a Breeze coding protocol corresponding to the data type in a preset serialization protocol to obtain serialized data; wherein the serialized data comprises: a type number corresponding to the data type;
and sending the obtained serialized data to a target system.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, an electronic device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, apparatus or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The above description is only an example of the present application and is not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111117236.XA CN114020272A (en) | 2021-09-23 | 2021-09-23 | A serialized encoding and decoding method, device and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111117236.XA CN114020272A (en) | 2021-09-23 | 2021-09-23 | A serialized encoding and decoding method, device and electronic device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114020272A true CN114020272A (en) | 2022-02-08 |
Family
ID=80054727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111117236.XA Pending CN114020272A (en) | 2021-09-23 | 2021-09-23 | A serialized encoding and decoding method, device and electronic device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114020272A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115361454A (en) * | 2022-10-24 | 2022-11-18 | 北京智芯微电子科技有限公司 | Message sequence coding, decoding and transmitting method and coding and decoding equipment |
CN115630614A (en) * | 2022-12-23 | 2023-01-20 | 深圳曼顿科技有限公司 | Data transmission method, device, electronic equipment and medium |
CN115934788A (en) * | 2022-11-17 | 2023-04-07 | 福信富通科技股份有限公司 | High-flexibility low-data-volume serialization and deserialization method |
CN117498987A (en) * | 2024-01-02 | 2024-02-02 | 南京元阵视界科技有限公司 | Method applied to large-scale network data transmission |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110830164A (en) * | 2019-10-22 | 2020-02-21 | 武汉理工光科股份有限公司 | Data serialization method for communication of Internet of things equipment |
US20210028970A1 (en) * | 2019-07-26 | 2021-01-28 | Microfun Co., Ltd | Method and apparatus for serialization and deserialization of message structure |
CN112783974A (en) * | 2020-12-31 | 2021-05-11 | 杭州趣链科技有限公司 | Data conversion method, device, equipment and storage medium |
-
2021
- 2021-09-23 CN CN202111117236.XA patent/CN114020272A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210028970A1 (en) * | 2019-07-26 | 2021-01-28 | Microfun Co., Ltd | Method and apparatus for serialization and deserialization of message structure |
CN110830164A (en) * | 2019-10-22 | 2020-02-21 | 武汉理工光科股份有限公司 | Data serialization method for communication of Internet of things equipment |
CN112783974A (en) * | 2020-12-31 | 2021-05-11 | 杭州趣链科技有限公司 | Data conversion method, device, equipment and storage medium |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115361454A (en) * | 2022-10-24 | 2022-11-18 | 北京智芯微电子科技有限公司 | Message sequence coding, decoding and transmitting method and coding and decoding equipment |
CN115361454B (en) * | 2022-10-24 | 2023-03-24 | 北京智芯微电子科技有限公司 | Message sequence coding, decoding and transmitting method and coding and decoding equipment |
CN115934788A (en) * | 2022-11-17 | 2023-04-07 | 福信富通科技股份有限公司 | High-flexibility low-data-volume serialization and deserialization method |
CN115630614A (en) * | 2022-12-23 | 2023-01-20 | 深圳曼顿科技有限公司 | Data transmission method, device, electronic equipment and medium |
CN115630614B (en) * | 2022-12-23 | 2023-03-28 | 深圳曼顿科技有限公司 | Data transmission method, device, electronic equipment and medium |
CN117498987A (en) * | 2024-01-02 | 2024-02-02 | 南京元阵视界科技有限公司 | Method applied to large-scale network data transmission |
CN117498987B (en) * | 2024-01-02 | 2024-03-15 | 南京元阵视界科技有限公司 | Method applied to large-scale network data transmission |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114020272A (en) | A serialized encoding and decoding method, device and electronic device | |
US8010889B2 (en) | Techniques for efficient loading of binary XML data | |
CN109902274B (en) | Method and system for converting json character string into thraft binary stream | |
CN114490641B (en) | Sharing method, equipment and medium of industrial Internet data | |
CN109104405B (en) | Binary protocol encoding and decoding method and device | |
US8145794B2 (en) | Encoding/decoding while allowing varying message formats per message | |
CN107919943B (en) | Method and device for coding and decoding binary data | |
CN108363588B (en) | Method for realizing interaction between web and native function, electronic device and readable storage medium | |
JP5377818B2 (en) | Method and system for sequentially accessing a compiled schema | |
WO2008042716A2 (en) | Knowledge based encoding of data with multiplexing to facilitate compression | |
EA019680B1 (en) | Service access method and system | |
WO2020224380A1 (en) | Blockchain-based data processing method and device | |
CN110708307B (en) | Transcoder generation method and apparatus, electronic device, and storage medium | |
CN109062906B (en) | Translation method and device for program language resources | |
CN112417515A (en) | Configuration software protocol processing method and system | |
CN114979296B (en) | Internet of things communication method, related terminal and storage medium | |
CN113923268B (en) | Resolution method, device and storage medium for multi-version communication protocol | |
CN115577041A (en) | Method, device, electronic device and readable storage medium for database synchronization | |
CN110020343B (en) | Method and device for determining webpage coding format | |
CN110019347B (en) | Data processing method and device of block chain and terminal equipment | |
CN104462157B (en) | A kind of method and device of text data secondary structure | |
CN114125071A (en) | Data compression transmission method and device | |
CN111178010B (en) | Method and system for displaying digital signature, data editing method and terminal | |
US9619588B1 (en) | Detecting and displaying cumulative lossy transformation | |
CN116431585A (en) | File compression method and device, and file decompression method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |