Data processing method and device, equipment and medium
By implementing permission verification at the data layer and using the write module to perform write operations, the abnormal problem of cross-module data modification in complex software systems is solved, write operation isolation and data security between logical modules are achieved, interaction relationships are simplified, and software stability is ensured.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-13
- Publication Date
- 2026-03-13
AI Technical Summary
In complex software systems, cross-module data modifications lead to complex network relationships between modules and data, making it difficult to determine the source of anomalies, and the complexity of data interaction increases exponentially with the number of modules.
The data layer obtains request information from the logic layer and performs permission verification at the data layer, allowing only logic modules to perform write operations on their own data objects. Write operations are performed using the write module, restricting cross-module write permissions.
It achieves isolation of write operations between logical modules, avoids data anomalies, improves data security, simplifies the interaction between modules and data, and ensures the stable operation of software functions.
Smart Images

Figure CN121659290A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to data processing technology, and more particularly to a data processing method, apparatus, device, and medium. Background Technology
[0002] Complex software is an aggregation of a series of sub-functions, each of which can be abstracted into a module, and a module can be understood as a combination of data and logic.
[0003] To achieve certain business functions, multiple sub-functions need to collaborate and work together, that is, to modify data across modules, modifying data in themselves or other modules through the logic of different modules. The reading and writing of data between modules will gradually become more complex as the number of modules increases.
[0004] Cross-module data modifications result in a complex network of relationships between modules and data points, with interconnected data forming intricate coupling. When data is incorrect, it becomes impossible to determine which module's modification caused the problem. Summary of the Invention
[0005] This disclosure provides a data processing method, apparatus, device, and medium to isolate and restrict write operations between logic modules, thereby simplifying the interaction between logic modules and data.
[0006] In a first aspect, embodiments of this disclosure provide a data processing method, the method comprising:
[0007] The request information transmitted by the first logic module in the logic layer is obtained through the data layer;
[0008] The data layer performs permission verification on the first write request when the request information is a first write request, and obtains the verification result.
[0009] When the verification operation indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, the data layer executes the write operation corresponding to the first write request on the first data object through the write module corresponding to the first data object. The write module is the module that executes the write operation on the first data object.
[0010] Secondly, embodiments of this disclosure also provide a data processing apparatus, the apparatus comprising:
[0011] The information acquisition module is used to acquire request information transmitted by the first logic module in the logic layer through the data layer;
[0012] The result determination module is used to perform permission verification on the first write request through the data layer when the request information is a first write request, and obtain the verification result.
[0013] The operation execution module is used to execute the write operation corresponding to the first write request to the first data object through the write module corresponding to the first data object when the verification operation indicates that the first logic module has the permission to perform a write operation on the first data object corresponding to the first write request. The write module is the module that executes the write operation on the first data object.
[0014] Thirdly, embodiments of this disclosure also provide an electronic device, the electronic device comprising:
[0015] One or more processing devices;
[0016] Storage device for storing one or more programs.
[0017] When the one or more programs are executed by the one or more processing devices, the one or more processing devices implement the data processing method as described in any embodiment of the present invention.
[0018] Fourthly, embodiments of this disclosure also provide a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform the screen switching method as described in any embodiment of the present invention.
[0019] In this embodiment, the request information transmitted by the first logic module in the logic layer is obtained through the data layer; when the request information is a first write request, the data layer performs permission verification on the first write request to obtain a verification result; when the verification operation indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, the write module corresponding to the first data object executes the write operation corresponding to the first write request on the first data object. The write module is the module that executes the write operation on the first data object. By splitting the operation on the data object into write operations and restricting the permission for write operations on the data object, such as each logic module only being able to perform write operations on its own data object, isolation and restriction of write operations between logic modules are achieved, avoiding data anomaly problems caused by unrestrained write operations of logic modules, and improving data security. The interaction between logic modules and data is simplified, ensuring the stable operation of software functions. Attached Figure Description
[0020] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0021] Figure 1 This is an example diagram of a software module provided in an embodiment of this disclosure;
[0022] Figure 2 This is a schematic flowchart of a data processing method provided in an embodiment of this disclosure;
[0023] Figure 3 This is an example diagram of the read / write module in a data processing method provided in the disclosed embodiments.
[0024] Figure 4 This is an example diagram of another read / write module in a data processing method provided in the disclosed embodiments;
[0025] Figure 5 This is an example diagram of the software modules provided in the embodiments of this disclosure;
[0026] Figure 6 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this disclosure;
[0027] Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this disclosure. Detailed Implementation
[0028] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0029] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.
[0030] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0031] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0032] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0033] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0034] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0035] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application, server, or storage medium performing the operations of this disclosed technical solution, based on the prompt message.
[0036] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0037] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.
[0038] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0039] To illustrate how software business logic is implemented, a concrete example will be used. Figure 1 This is an example diagram of a software module provided in an embodiment of this disclosure, such as... Figure 1 As shown, a complex software system 1 may include a logic layer 11 and a data layer 12. The logic layer 11 includes three modules: module A logic 111, module B logic 112, and module C logic 113. The data layer 12 contains three data items corresponding to each module: module A data 121 corresponding to module A logic 111, module B data 122 corresponding to module B logic 112, and module C data 123 corresponding to module C logic 113. The connections show that all module logics can modify each module's data. When a data anomaly occurs, such as when module B data 122 is abnormal, modules A logic 111, B logic 112, and C logic 113 can modify it, making it impossible to determine which module's modification caused the problem. However, the diagram only uses three modules as an example; actual software systems will include more modules, making data reading and writing between modules more complex. Furthermore, with each additional module, the complexity increases by O(n log n). 2 As the speed of data growth increases, a more complex network relationship will emerge between modules and data, making it more difficult to troubleshoot anomalies.
[0040] To address the aforementioned technical problems, this disclosure provides a data processing method. Figure 2 This is a schematic flowchart of a data processing method provided in an embodiment of the present disclosure. The embodiments of the present disclosure are applicable to situations where a logic module modifies a data object. The method can be executed by a data processing device, which can be implemented in the form of software and / or hardware. Optionally, it can be implemented by an electronic device, such as a mobile terminal, a PC, or a server.
[0041] like Figure 2 As shown, the method includes:
[0042] S210. Obtain the request information transmitted by the first logic module in the logic layer through the data layer.
[0043] Software is an aggregation of multiple functions, and each function requires the support of logical modules. Each logical module implements specific business logic through pre-written code; the code can be considered the component of the logic. The logic manipulates data to achieve its corresponding function. Bringing all the logical modules together forms the system's logical layer, while the data is separated and placed in a separate layer called the data layer. Implementing a function also requires the cooperation of the data layer, which manipulates the data of its modules, providing data support for each logical module within the logical layer.
[0044] In this embodiment, the first logic module can be understood as a logic module that has the purpose of operating on data. The request information can be understood as request information for the operation required to implement the corresponding function of the first logic module, which may include the operation to be performed and the data to be operated on.
[0045] Specifically, the logic modules corresponding to the functions and the operations to be performed are usually pre-set. When a function provided by the software is triggered, the processing device can first respond through the first logic module corresponding to the triggered function in the logic layer, determine the operation to be performed on the data layer to implement the function, and generate request information. The processing device can then obtain the request information transmitted by the first logic module in the logic layer through the data layer.
[0046] For example, taking the scenario of adding special effects in software as an example, the software provides special effects selection, music selection, and photo selection functions. The corresponding logic layer includes a music selection logic module, a special effects selection logic module, and a photo selection logic module. Each logic module has corresponding music data, special effects data, and photo data in the data layer. Specifically, to support the display of each special effect, corresponding data is recorded in the special effects data. When the user selects special effects A, the special effects selection logic module (i.e., the first logic module mentioned above) will trigger a request to read data A from the special effects data based on the selected special effects A. The data layer will then receive the request information transmitted by the first logic module and, by obtaining data A, realize the function of adding the specified special effects.
[0047] S220. When the request information is the first write request, the data layer performs permission verification on the first write request to obtain the verification result.
[0048] The operations mentioned above can be broken down by type. If the operation involves reading data values, it's called a read operation, and the issued request is a read request, which includes the data object to be read. If the operation involves modifying data values, it's called a write operation, and the issued request is a write request, which includes the location of the data to be written and the data to be written. Figure 1It can be seen that each logical module in the logic layer can operate on the data of each module in the data layer. That is, each module's data has the same number of interaction lines as the module's logic. This can lead to situations where it is impossible to locate the module logic that modifies the data when there is a data anomaly. To address this issue, operation permissions for each data item can be set in the data layer. When the data layer receives a request from a logical module, permission verification should be performed first.
[0049] In this embodiment, the first write request can be understood as a request from the first logical module to write data, including the object to be written and the data to be written. The verification result can be understood as indicating whether the first logical module has the permission to write to the data object corresponding to the first write request.
[0050] This step determines the operation type corresponding to the request information through the data layer. In the case of a first write request, the data layer can identify the data object corresponding to the first write request and perform permission verification on it to determine whether the first logic module has the permission to perform a write operation on the data object. The permission verification can be determined by pre-setting a permission list, token, and / or key-value pairs for each data object in the data layer to obtain the verification result of whether the first write request has write permission.
[0051] During the permission verification process for the first write request, this operation can determine whether the first data object requested to perform the write operation is the data object of the first logical module that sent the request information. If so, the verification result can be determined as successful, such as determining that the first logical module has permission to perform a write operation on the first data object corresponding to the first write request. The first data object corresponding to the first write request can be considered as the data object for which the first write operation requests to perform the write operation.
[0052] S230. When the verification result indicates that the first logic module has the permission to perform a write operation on the first data object corresponding to the first write request, the data layer executes the write operation corresponding to the first write request on the first data object through the write module corresponding to the first data object. The write module is the module that executes the write operation on the first data object.
[0053] In this embodiment, the first data object can be understood as the data object requested by the first logic module at the data layer. In one example, the first data object can be the data object corresponding to the first logic module at the output layer. For example, the data object of logic module A is module A data, the data object of logic module B is module B data, and the data object of logic module C is module C data.
[0054] A write module can be understood as a module that performs write operations on the first data object in the data layer. It can be represented by ModelWriter. Write modules can be implemented through functions and proxies. Each data object is pre-set to have a corresponding write module that performs write operations on itself. That is, one write module corresponds to one data object to ensure the isolation of write operations between each data object.
[0055] This operation allows the data layer to execute the write operation corresponding to the first write request to the first data object through the write module corresponding to the first data object, provided that the first logic module has the permission to perform the write operation. In other words, the data corresponding to the first write request is written to the first data object.
[0056] If the verification result indicates that the first logic module does not have permission to perform a write operation on the first data object corresponding to the first write operation, then no write operation will be performed on the first data object.
[0057] The technical solution of this disclosure involves obtaining request information transmitted by a first logic module in the logic layer through the data layer; verifying the first write request's permissions through the data layer when the request information is a first write request; and, if the data layer indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, executing the write operation corresponding to the first write request through the write module corresponding to the first data object. The write module is the module that executes the write operation on the first data object. By splitting operations on data objects into write operations and restricting permissions for write operations on data objects (e.g., each logic module can only perform write operations on its own data objects), isolation and restriction of write operations between logic modules are achieved, avoiding data anomalies caused by unrestricted write operations by logic modules and improving data security. The interaction between logic modules and data is simplified, ensuring the stable operation of the software.
[0058] Based on the above embodiments, modified embodiments of the above embodiments are proposed. It should be noted that, in order to keep the description brief, only the differences from the above embodiments are described in the modified embodiments.
[0059] Based on the above embodiments, when the verification operation indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, the write module corresponding to the first data object performs the write operation corresponding to the first write request on the first data object, including:
[0060] When the data layer verifies that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, it calls the write function of the data attribute corresponding to the first write request in the write module corresponding to the first data object.
[0061] In this embodiment, data attributes can be understood as the attributes corresponding to the data to be written in the first write request. The first data object can classify the data it contains through data attributes to form different data attributes. A write function can be understood as a function that implements the write function, such as a write function that can be implemented using a set function.
[0062] In this embodiment, when the data layer verifies that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, since the write operation on the first data object is taken over by the write module, the original data object is shielded under the write module. The data layer can call the write function of the data attribute corresponding to the first write request in the write module corresponding to the first data object to execute the first write request to write data to the data attribute. The write operation can include adding, deleting, and modifying.
[0063] In this embodiment of the disclosure, the data layer performs write operations by calling the write function through the write module of the first data object. Operations can only be performed through the write module corresponding to the data object, which ensures the security of the write operation and the integrity of the data, and avoids data anomalies caused by write operations performed by other modules.
[0064] In one implementation of the write module, the write module is a wrapper class for the first data object. The write module includes a write function corresponding to each data attribute of the first data object, and the write module is held by the logical module to which the first data object belongs.
[0065] In this embodiment, the wrapper class can be understood as a way to provide additional functionality to the first data object, such as encapsulating read and write functions in the wrapper class.
[0066] This embodiment can encapsulate the desired functionality into a wrapper class (e.g., in Android). For example, it can include a write module and a read module to perform read and write operations on the first data object. A corresponding write function can be generated for each data attribute in the first data object, and each write module can only be accessed by the logic module to which the first data object belongs. Other logic modules cannot access the write module, meaning they cannot perform write operations through it. The data object can be defined using a data class.
[0067] This embodiment of the disclosure implements access restrictions on the original data objects by setting a wrapper class for each data object and restricting the write module to be held only by the corresponding logic module. This prevents other modules from operating on the data objects, thereby achieving isolation of module data writing, realizing code modularity and maintainability, and ensuring data security.
[0068] For example, a specific example will be shown. Figure 3 An example diagram of a read / write module in a data processing method provided in this disclosure is shown in the embodiment. Figure 3 As shown, for the first data object 21, the read module 211 containing the read function and the write module 212 containing the write function are integrated by wrapping the class, so that the read module 211 calls the read function to realize the read operation of the first data object 21, and the write module 212 calls the write function to realize the write operation of the first data object 21.
[0069] Correspondingly, in this implementation of the write module, the keyword corresponding to the write module is a private type, so that the write module is held by the logical module to which the first data object belongs; or, the constructor corresponding to the write module indicates the logical module associated with the write module in the form of key-value pairs.
[0070] In this embodiment, keywords can be understood as reserved words used to restrict the scope of writes. Private types can be understood as access modifiers used to restrict the access scope of a member (property or method). When a property or method is marked as private, it cannot be directly accessed by other code outside the wrapper class. Constructors can be understood as functions used to modify data. Key-value pairs can be understood as pre-defined mappings of keys and values with specific permissions for each record.
[0071] To ensure that each write module is held only by the logical module to which the data object belongs, the key corresponding to the write module can be set to a private type, restricting the write module to be held only by the logical module to which the first data object belongs. Alternatively, the constructor corresponding to the write module can indicate the logical module associated with the write module in the form of key-value pairs. For example, since the constructor needs to add the logical module's token in the function, the name or token of the logical module with the appropriate permissions can be associated with the data object. This allows verification through key-value pairs to determine whether the name or token of the logical module in the constructor matches the data object, thereby determining the permissions.
[0072] This embodiment of the disclosure, through this configuration, restricts the write operation scope of the write module, ensuring that each write module can only perform write operations on its corresponding data object, thus supporting the security of subsequent data. It also lays the foundation for simplifying the interaction between logic modules and data objects.
[0073] Based on the above embodiments, this disclosure can also implement the write module in another way: the write function implements the write operation through the setting function in the returned proxy object.
[0074] In this embodiment, the proxy object can be understood as accessing and manipulating data objects through a proxy, located between the logic module and the data object. The proxy object can intervene and control the access to the original object's attributes (such as reading attribute values, setting attribute values, etc.) without directly modifying the original object. The set function can be understood as a function used for write operations, such as the set function.
[0075] In this embodiment, the write module can create a wrapper class `ModelContainer` for the corresponding data object through a proxy mechanism. The data object is a property in the wrapper class. For writing, the write operation is implemented by adding a write function for the first data object, i.e., the `writer` function, which returns a proxy object corresponding to the write module (e.g., under HarmonyOS). The setter function is overridden in this proxy object; performing a write operation in the setter function indicates that the data is writable. The getter function can also be overridden in the proxy object, returning a property of the data object, indicating that it is readable.
[0076] In this embodiment of the disclosure, write operations are implemented through a proxy object, thus satisfying the requirement for write operations to be implemented under different operating systems.
[0077] For example, a specific example will be shown. Figure 4 Another example diagram of a read / write module in a data processing method provided in this disclosure is shown in the embodiment. Figure 4 As shown, the modelproxyfactory can proxy multiple data objects. The diagram only uses the first data object 21, the second data object 22, and the third data object 23 as examples. The dashed lines represent the proxy methods in existing technologies, which do not constrain the logic modules when receiving read or write requests. In this application, for the first data object 21, a wrapper class is used to integrate the read module and the write module, both containing read functions. A read-only proxy object is constructed through the read module, and a read-write proxy object is constructed through the write module. When the logic layer issues a write request, a token is typically included for verification.
[0078] Specifically, when the write function performs a write operation through a set function in the returned proxy object, the data layer performs permission verification on the first write request when the request information is the first write request, and obtains the verification result, including:
[0079] When the request information is a first write request, the data layer performs permission verification on the information to be verified included in the first write request to obtain the verification result.
[0080] In this embodiment, the information to be verified indicates the identity of the first logical module.
[0081] When implementing a write operation in the setup function of the proxy object, the proxy object can identify the information indicating the identity of the first logical module included in the first write request, obtain the information to be verified, and perform permission verification, such as by comparing the information to be verified with a preset permission list, and obtain the verification result.
[0082] In this embodiment of the disclosure, the information to be verified corresponding to the request information can be determined at the data layer, thereby enabling permission verification. This diversifies the verification methods and meets the needs of different verification approaches.
[0083] For example, the statement corresponding to the first write request can be executed by the first logic module, along with the verification information of the first logic module.
[0084] Based on the above embodiments, this disclosure may further include:
[0085] When the request information is a read request, the data layer executes the read operation corresponding to the read request on the first data object through the read module corresponding to the first data object.
[0086] In this embodiment, a read request can be understood as a request to read data. A read module can be understood as a module in the data layer that performs read operations on a first data object, such as by representing it as a ModelReader. Read modules can be implemented using functions and delegates, etc., where each data object corresponds to a specific read module. A read operation can be understood as performing a data reading operation on a data object.
[0087] Specifically, since reading and writing data have different impacts on the data, read and write operations can be separated into modules. A read module can perform read operations independently, and a write module can perform write operations independently. When the data layer requests a read request, since reading data does not affect the data itself, no permission verification is needed. The read module corresponding to the first data object can then execute the read operation corresponding to the read request on the first data object.
[0088] In this embodiment of the disclosure, the separation of read and write operations on data objects is achieved through this configuration. This enables data read operations on data objects.
[0089] Based on the above embodiments, when the request information is a read request, the data layer executes a read operation corresponding to the read request on the first data object through the read module corresponding to the first data object, including:
[0090] When the data layer requests a read request, it calls the read function of the corresponding data attribute in the read module corresponding to the first data object.
[0091] In this embodiment, the read function can be understood as a function used to implement the function of reading data. For example, the read function can be implemented by the get function.
[0092] Since the read operation of the first data object is taken over by its corresponding read module, the data layer can call the read function of the data attribute corresponding to the read request in the read module corresponding to the first data object when the request information is a read request, so as to realize the function of reading the data to be obtained in the read request.
[0093] In one implementation of the read module, the read module is a module within the wrapper class corresponding to the first data object that returns the corresponding data attributes through read functions. The read module includes a read function corresponding to each data attribute of the first data object.
[0094] The read and write modules are encapsulated within a wrapper class of the first data object. A corresponding read function can be generated for each data attribute in the first data object. Furthermore, each write module is restricted to the logic module to which the first data object belongs; other logic modules cannot access the write module and therefore cannot perform write operations through it. This wrapper class enables read and write operations on the data attributes of the first data object.
[0095] In this embodiment of the disclosure, the isolation of read and write operations between data objects is achieved through such a setting, and the separation of read and write operations of the data object itself is realized.
[0096] For example, in the HarmonyOS system, the read module is encapsulated in a wrapper class. The write module can create a wrapper class `ModelContainer` for the corresponding data object through a proxy mechanism. The data object is a property in the wrapper class. For reading, the constructor of the wrapper class is overridden to return a proxy object. The read function (get function) is overridden in the proxy object, directly returning the property of the first data object to indicate that it is readable. The setter function is overridden in the proxy object, and an exception is thrown in the setter function to indicate that it is not writable.
[0097] In this disclosure, data operations are abstracted into read operations and write operations, achieving separation and control of read and write operations. The write module can only be held by its corresponding logical module; other logical modules cannot access it and therefore cannot perform write operations on the data. The read module can be accessed by all logical modules.
[0098] Based on the above embodiments, this disclosure also includes:
[0099] a1. Obtain the second write request from the second logic module in the logic layer through the first logic module in the logic layer. The second write request instructs the first logic module and the second logic module to request to perform a write operation on the first data object corresponding to the first logic module.
[0100] In this embodiment, the second write request can be understood as a request from the second logic module to perform a write operation on the data object corresponding to the first logic module. The second write request may also include context data to locate the data to be modified in the first data object. The first logic module and the second logic module can be modules that implement different logic.
[0101] It is known that in existing software operating systems, when the second logic module wants to write data to the data object of the first logic module, the second logic module can directly perform write operations on the data object of the second logic module.
[0102] In this disclosure, since cross-logic module operations lack authorization, the second logic module can send a second write request to the first logic module to which it wants to write, thus conveying the operation intention of the second logic module. The first logic module in the logic layer obtains the second write request from the second logic module in the logic layer. The second write request instructs the first logic module that the second logic module requests to perform a write operation on the first data object corresponding to the first logic module.
[0103] For example, taking a scenario where software adds special effects as an example, the software provides special effects selection, music selection, and photo selection functions. The corresponding logic layer includes a music selection logic module, a special effects selection logic module, and a photo selection logic module. Each logic module has corresponding music data, special effects data, and photo data in the data layer. Each special effect can be configured with a specified music by default, and the music is implemented through the music selection logic module (corresponding to the second logic module mentioned above). When the user selects special effect A, its default music is music B. The special effects selection logic module (corresponding to the first logic module mentioned above) will then trigger a second request message based on the selected special effect A to transmit binding music B to the music selection logic module. This second request message notifies the first data object corresponding to the first logic module to perform a write operation.
[0104] b1. Verify the second write request through the first logic module in the logic layer.
[0105] Before performing a write operation, the second write request can be verified by the first logic module in the logic layer to determine whether the second logic module has the permission to modify the data attribute part.
[0106] For example, the first logic module exposes events that can be registered with it. Upon receiving a second write request from the second logic module, it can verify the second logic module using dependency inversion. For instance, on the Android platform, the second write request is included in the code of the second logic module, thus confirming that the request originated from the second logic module. The permission verification method mentioned above is then used to verify whether the second logic module has the necessary permissions, yielding the verification result. Alternatively, the second logic module can attach authentication information, such as a token, when sending the second write request. The first logic module can then query its permission status using a local token list.
[0107] c1. If the verification is successful, the second write request is transmitted to the data layer through the first logic module.
[0108] If the verification is successful, the first logic module can output a second write request to the data layer, so that the data layer can execute the write operation corresponding to the second write request to the first data object through the write module corresponding to the first data object.
[0109] This embodiment of the disclosure, through a configuration that restricts cross-logic data object operations, instructs the first logic module to request a write operation on the first logical data object by issuing a second write request. Upon successful verification of the second write request at the logic layer, the first logic module transmits the second write request to the data layer. This achieves convergence of write operation permissions for data objects, enables write operations on data objects between logic modules, simplifies the read-write relationship between logic modules and data objects, reduces the complexity of the software system, thereby improving data maintainability and ensuring the stable operation of software functions.
[0110] Based on the above embodiments, this disclosure also includes:
[0111] If the first logic module receives multiple write requests within a set time period, the first logic module determines the write request to respond to according to the priority of the logic module.
[0112] In this embodiment, the set duration can be understood as the duration during which write requests from different logical modules will cause conflicts. Priority can be understood as the pre-defined order in which logical modules respond, and can be set according to actual needs. For example, if logical module B is prioritized over logical module C, then write requests from logical module B will be responded to first.
[0113] If the first logic module receives multiple write requests within a set time period, it selects the highest priority write request or multiple write requests as the response write request, based on the priority of the logic module and without conflict.
[0114] This embodiment of the disclosure avoids problems caused by write operation conflicts by setting the priority of logic modules, thereby improving the stability of software operation.
[0115] For example, continuing with the scenario of adding special effects, when the user selects effect A, the corresponding default music is music B. The effect selection logic module will trigger a second request to the music selection logic module to bind music B based on the selected effect A. At the same time, the user clicks the music selection function and selects music C, sending a write request to the music selection logic module to bind music C. The music selection logic module receives multiple write requests within a set time, but the priority of the music selection logic module is higher than that of the effect selection logic module, so the write request to bind music C is selected.
[0116] For example, to facilitate understanding of the interaction mode between modules after setting permission verification in this disclosure, a specific example is provided. Figure 5 Example diagrams of software modules provided in embodiments of this disclosure, such as... Figure 5 As shown, in the data layer, operations on each module's data can be broken down into read and write operations. Each logical module can only write to its own module's data, but can read from other logical modules. In the logic layer, request information can be passed between logical modules.
[0117] Figure 6 This is a schematic diagram of a data processing device structure provided in an embodiment of the present disclosure, as shown below. Figure 6 As shown, the device includes: an information acquisition module 410, a result determination module 420, and an operation execution module 430.
[0118] The information acquisition module 410 is used to acquire request information transmitted by the first logic module in the logic layer through the data layer;
[0119] The result determination module 420 is used to perform permission verification on the first write request through the data layer when the request information is a first write request, and obtain the verification result.
[0120] The operation execution module 430 is used to execute the write operation corresponding to the first write request to the first data object through the write module corresponding to the first data object when the verification operation indicates that the first logic module has the permission to perform a write operation on the first data object corresponding to the first write request. The write module is the module that executes the write operation on the first data object.
[0121] The technical solution provided in this disclosure involves obtaining request information transmitted by a first logic module in the logic layer through the data layer; verifying the first write request's permissions through the data layer when the request information is a first write request; and, if the data layer indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, executing the write operation corresponding to the first write request on the first data object through the write module corresponding to the first data object. The write module is the module that executes the write operation on the first data object. By splitting operations on data objects into write operations and restricting permissions for write operations on data objects, each logic module can only perform write operations on its own data objects. This achieves isolation and restriction of write operations between logic modules, avoiding data anomalies caused by write operations from other logic modules and improving data security. It also simplifies the interaction between logic modules and data, ensuring the stable operation of the software.
[0122] Furthermore, the operation execution module 430 is specifically used for:
[0123] When the verification result indicates that the first logic module has the authority to perform a write operation on the first data object corresponding to the first write request, the data layer calls the write function of the data attribute corresponding to the first write request in the write module corresponding to the first data object.
[0124] The write module is a wrapper class for the first data object, and includes a write function corresponding to each data attribute of the first data object. The write module is held by the logic module to which the first data object belongs.
[0125] Wherein, the keyword corresponding to the write module is of a private type, so that the write module is held by the logical module to which the first data object belongs; or,
[0126] The constructor corresponding to the write module indicates the logical module associated with the write module in the form of key-value pairs.
[0127] The write function implements the write operation through a setting function in the returned proxy object.
[0128] Furthermore, the result determination module 420 is specifically used for:
[0129] When the request information is a first write request, the data layer performs permission verification on the information to be verified included in the first write request to obtain the verification result.
[0130] Optionally, the device further includes:
[0131] The read operation module is used to execute the read operation corresponding to the read request to the first data object through the read module corresponding to the first data object when the request information is a read request.
[0132] Specifically, the read operation module is used for:
[0133] When the request information is a read request, the data layer calls the read function corresponding to the data attribute of the read request in the read module corresponding to the first data object.
[0134] The read module is a module within the wrapper class corresponding to the first data object that returns the corresponding data attributes through a read function. The read module includes a read function corresponding to each data attribute of the first data object.
[0135] Optionally, the device further includes:
[0136] The request acquisition module is used to acquire a second write request from a second logic module in the logic layer through a first logic module in the logic layer. The second write request indicates that the first logic module and the second logic module request to perform a write operation on the first data object corresponding to the first logic module.
[0137] The request verification module is used to verify the second write request through the first logic module in the logic layer;
[0138] The request transmission module is used to transmit the second write request to the data layer through the first logic module if the verification is successful.
[0139] Optionally, the device further includes:
[0140] The priority determination module is used to determine the corresponding write request according to the priority of the logic module when the first logic module receives multiple write requests within a set time period.
[0141] The data processing apparatus provided in this disclosure can execute the data processing method provided in any embodiment of this disclosure, and has the corresponding functional modules and beneficial effects for executing the method.
[0142] It is worth noting that the various units and modules included in the above-mentioned device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of this disclosure.
[0143] Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this disclosure. Reference is made below. Figure 7 It illustrates an electronic device suitable for implementing embodiments of the present disclosure (e.g., Figure 7 A structural diagram of the terminal device or server in the 500.
[0144] One or more processing devices; a storage device for storing one or more programs, which, when executed by the one or more processing devices, cause the one or more processing devices to implement any of the data processing methods described in this invention.
[0145] The terminal devices in this disclosure may include, but are not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), and in-vehicle terminals (such as in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 7 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0146] like Figure 7 As shown, electronic device 500 may include a processing unit (e.g., central processing unit, graphics processor, etc.) 501, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 502 or a program loaded from storage device 508 into random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of electronic device 500. The processing unit 501, ROM 502, and RAM 503 are interconnected via bus 504. An edit / output (I / O) interface 505 is also connected to bus 504.
[0147] Typically, the following devices can be connected to I / O interface 505: input devices 506 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 507 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 508 including, for example, magnetic tapes, hard disks, etc.; and communication devices 509. Communication device 509 allows electronic device 500 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 7An electronic device 500 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0148] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 509, or installed from a storage device 508, or installed from a ROM 502. When the computer program is executed by the processing device 501, it performs the functions defined in the methods of embodiments of this disclosure.
[0149] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0150] The electronic device provided in this embodiment and the data processing method provided in the above embodiments belong to the same inventive concept. Technical details not described in detail in this embodiment can be found in the above embodiments, and this embodiment has the same beneficial effects as the above embodiments.
[0151] This disclosure provides a computer storage medium storing a computer program that, when executed by a processor, implements the data processing method provided in the above embodiments.
[0152] It should be noted that the computer-readable medium described above in this disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination thereof.
[0153] The computer storage medium may be a storage medium for computer-executable instructions, which, when executed by a computer processor, are used to perform the methods provided in this disclosure.
[0154] Computer-readable storage media can be, for example, but not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to, electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including, but not limited to, electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. Program code contained on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0155] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0156] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0157] The aforementioned computer-readable medium carries one or more programs. When the electronic device executes the aforementioned one or more programs, the electronic device causes the following: it obtains request information transmitted by a first logic module in the logic layer through the data layer; when the request information is a first write request, it performs permission verification on the first write request through the data layer to obtain a verification result; and when the verification result indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, it executes the write operation corresponding to the first write request on the first data object through the write module corresponding to the first data object, wherein the write module is the module that performs the write operation on the first data object.
[0158] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0159] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0160] The modules or units described in the embodiments of this disclosure can be implemented in software or hardware. The names of the modules or units do not necessarily limit the specific unit itself.
[0161] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0162] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0163] According to one or more embodiments of this disclosure, [Example 1] provides a data processing method, including obtaining request information transmitted by a first logic module in a logic layer through a data layer; when the request information is a first write request, the data layer performs permission verification on the first write request to obtain a verification result; when the verification result indicates that the first logic module has permission to perform a write operation on a first data object corresponding to the first write request, the data layer executes the write operation corresponding to the first write request on the first data object through a write module corresponding to the first data object, wherein the write module is a module that executes the write operation on the first data object.
[0164] According to one or more embodiments of this disclosure, [Example 2] provides the method of Example 1, including: when the verification result indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, the data layer calls the write function corresponding to the data attribute of the first write request in the write module corresponding to the first data object.
[0165] According to one or more embodiments of this disclosure, [Example 3] provides the method of Example 2, wherein the write module is a wrapper class of the first data object, the write module includes a write function corresponding to each data attribute of the first data object, and the write module is held by the logic module to which the first data object belongs.
[0166] According to one or more embodiments of this disclosure, [Example 4] provides the method of Example 3, wherein the key corresponding to the write module is of a private type, so that the write module is held by the logical module to which the first data object belongs; or, the constructor corresponding to the write module indicates the logical module associated with the write module in the form of key-value pairs.
[0167] According to one or more embodiments of this disclosure, Example 5 provides the method of Example 2, wherein the write function performs a write operation by setting a function in the returned proxy object.
[0168] According to one or more embodiments of this disclosure, Example 6 provides the method of Example 5, including:
[0169] When the request information is a first write request, the data layer performs permission verification on the information to be verified included in the first write request to obtain the verification result.
[0170] According to one or more embodiments of this disclosure, [Example 7] provides the method of Example 1, which further includes: when the request information is a read request, the data layer performs a read operation corresponding to the read request to the first data object through the read module corresponding to the first data object.
[0171] According to one or more embodiments of this disclosure, [Example 8] provides the method of Example 7, in which the data layer calls the read function corresponding to the data attribute corresponding to the read request in the read module corresponding to the first data object when the request information is a read request.
[0172] According to one or more embodiments of this disclosure, [Example 9] provides the method of Example 8, wherein the reading module is a module within the wrapper class corresponding to the first data object that returns the corresponding data attribute through a reading function, and the reading module includes a reading function corresponding to each data attribute of the first data object.
[0173] According to one or more embodiments of this disclosure, [Example 10] provides the method of Example 1, which further includes: obtaining a second write request from a second logic module in the logic layer through a first logic module in the logic layer, wherein the second write request instructs the first logic module to request the second logic module to perform a write operation on a first data object corresponding to the first logic module; verifying the second write request through the first logic module in the logic layer; and transmitting the second write request to the data layer through the first logic module if the verification is successful.
[0174] According to one or more embodiments of this disclosure, Example 11 provides the method of Example 10, which further includes: when the first logic module receives multiple write requests within a set time period, the first logic module determines the responding write request according to the priority corresponding to the logic module.
[0175] According to one or more embodiments of this disclosure, [Example 12] provides a data processing apparatus, characterized in that it includes: an information acquisition module, configured to acquire request information transmitted by a first logic module in a logic layer through a data layer; a result determination module, configured to perform permission verification on the first write request through the data layer when the request information is a first write request, and obtain a verification result; and an operation execution module, configured to execute the write operation corresponding to the first write request on the first data object through a write module corresponding to the first data object through the data layer when the verification operation indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, wherein the write module is a module that executes the write operation on the first data object.
[0176] According to one or more embodiments of this disclosure, [Example 13] provides an electronic device, the electronic device comprising: one or more processing means; and a storage means for storing one or more programs, wherein when the one or more programs are executed by the one or more processing means, the one or more processing means implement the data processing method as described in any one of the embodiments of the present invention.
[0177] According to one or more embodiments of this disclosure, [Example 14] provides a storage medium for computer-executable instructions, which, when executed by a computer processor, are used to perform a data processing method as described in any one of the embodiments of the present invention.
[0178] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
[0179] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0180] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A data processing method, characterized in that, include: The request information transmitted by the first logic module in the logic layer is obtained through the data layer; The data layer performs permission verification on the first write request when the request information is a first write request to obtain the verification result. When the verification result indicates that the first logic module has the authority to perform a write operation on the first data object corresponding to the first write request, the data layer executes the write operation corresponding to the first write request on the first data object through the write module corresponding to the first data object. The write module is the module that executes the write operation on the first data object.
2. The method according to claim 1, characterized in that, When the verification result indicates that the first logic module has permission to perform a write operation on the first data object corresponding to the first write request, the step of executing the write operation corresponding to the first write request on the first data object through the write module corresponding to the first data object via the data layer includes: When the verification result indicates that the first logic module has the authority to perform a write operation on the first data object corresponding to the first write request, the data layer calls the write function of the data attribute corresponding to the first write request in the write module corresponding to the first data object.
3. The method according to claim 2, characterized in that, The write module is a wrapper class for the first data object. The write module includes a write function corresponding to each data attribute of the first data object. The write module is held by the logic module to which the first data object belongs.
4. The method according to claim 3, characterized in that, The key corresponding to the write module is of a private type, so that the write module is held by the logical module to which the first data object belongs; or, The constructor corresponding to the write module indicates the logical module associated with the write module in the form of key-value pairs.
5. The method according to claim 2, characterized in that, The write function implements the write operation through the set function in the returned proxy object.
6. The method according to claim 5, characterized in that, The step of obtaining a verification result by performing permission verification on the first write request through the data layer when the request information is a first write request includes: When the request information is a first write request, the data layer performs permission verification on the information to be verified included in the first write request to obtain the verification result.
7. The method according to claim 1, characterized in that, Also includes: When the request information is a read request, the data layer executes the read operation corresponding to the read request on the first data object through the read module corresponding to the first data object.
8. The method according to claim 7, characterized in that, The step of executing a read operation corresponding to the read request to the first data object through the read module corresponding to the first data object when the request information is a read request via the data layer includes: When the request information is a read request, the data layer calls the read function corresponding to the data attribute of the read request in the read module corresponding to the first data object.
9. The method according to claim 8, characterized in that, The read module is a module within the wrapper class corresponding to the first data object that returns the corresponding data attributes through read functions. The read module includes a read function corresponding to each data attribute of the first data object.
10. The method according to claim 1, characterized in that, Also includes: The first logic module in the logic layer obtains the second write request of the second logic module in the logic layer. The second write request instructs the first logic module and the second logic module to perform a write operation on the first data object corresponding to the first logic module. The second write request is verified by the first logic module in the logic layer; If the verification is successful, the second write request is transmitted to the data layer through the first logic module.
11. The method according to claim 10, characterized in that, Also includes: If the first logic module receives multiple write requests within a set time period, the first logic module determines the write request to respond to according to the priority of the logic module.
12. A data processing apparatus, characterized in that, include: The information acquisition module is used to acquire request information transmitted by the first logic module in the logic layer through the data layer; The result determination module is used to perform permission verification on the first write request through the data layer when the request information is a first write request, and obtain the verification result. The operation execution module is used to execute the write operation corresponding to the first write request to the first data object through the write module corresponding to the first data object when the verification operation indicates that the first logic module has the permission to perform a write operation on the first data object corresponding to the first write request. The write module is the module that executes the write operation on the first data object.
13. An electronic device, characterized in that, The electronic device includes: One or more processing devices; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processing devices, the one or more processing devices implement the data processing method as described in any one of claims 1-11.
14. A storage medium comprising computer-executable instructions, which, when executed by a computer processor, are used to perform the data processing method as described in any one of claims 1-11.