Systems and methods for building applications using building blocks linkable with metadata
First Claim
1. A computer-implemented method comprising:
- providing an interface configured to enable a user to define a customization setting for one or more existing building blocks associated with an application, each existing building block of the one or more existing building blocks corresponding to executable logic configured to receive an input or generate an output associated with the application;
identifying an application class associated with an existing building block of the one or more existing building blocks, the application class being associated with one or more rendering objects, and the application class corresponding to executable logic;
generating a new application class associated with a new building block corresponding to the existing building block, the new application class being associated with one or more new rendering objects, and the new application class corresponding to new executable logic including customized metadata configured to customize the application at runtime;
receiving, via the interface, user input corresponding to a selection of a selectable feature, wherein the selectable feature corresponds to one of a plurality of states, wherein each state of the plurality of states indicates whether the application is customized using the new application class, and wherein the selection of the selectable feature causes the selectable feature to switch between a first mode and a second mode;
in response to receiving the user input, generating mode metadata associated with the new building block, wherein the mode metadata corresponds to the first mode when the state of the selectable feature is in the first mode, and wherein the mode metadata corresponds to the second mode when the state of the selectable feature is in the second mode;
receiving a request to execute the new building block; and
in response to receiving the request, determining whether the mode metadata corresponds to the first mode or the second mode, wherein;
when the mode metadata corresponds to the first mode;
receiving a first instruction that overrides the new application class; and
calling the application class, such that the customized metadata associated with the new building block is applied to the one or more rendering objects; and
when the mode metadata corresponds to the second mode;
causing a copy of the one or more rendering objects to be stored in association with the new building block;
receiving a second instruction that overrides the application class; and
calling the new application class, such that the customized metadata associated with the new building block is applied to the copy of the one or more rendering objects.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods relate to creating applications using building blocks linked together with metadata. A user interface can enable a user to create an application. Creating the application can include defining a new building block configured to generate output data. The new building block can include one or more existing building blocks and the metadata associated with the existing building blocks. For example, a building block can include at least one input/output (I/O) feature configured to receive inputs and/or generate outputs. Further, the existing building block can correspond to a data structure including external I/O features. The new building block can be linked to an existing building block by mapping an external I/O feature of the existing building block to an open I/O feature of the new building block. The mapping can be stored in metadata associated with the new building block.
-
Citations
20 Claims
-
1. A computer-implemented method comprising:
-
providing an interface configured to enable a user to define a customization setting for one or more existing building blocks associated with an application, each existing building block of the one or more existing building blocks corresponding to executable logic configured to receive an input or generate an output associated with the application; identifying an application class associated with an existing building block of the one or more existing building blocks, the application class being associated with one or more rendering objects, and the application class corresponding to executable logic; generating a new application class associated with a new building block corresponding to the existing building block, the new application class being associated with one or more new rendering objects, and the new application class corresponding to new executable logic including customized metadata configured to customize the application at runtime; receiving, via the interface, user input corresponding to a selection of a selectable feature, wherein the selectable feature corresponds to one of a plurality of states, wherein each state of the plurality of states indicates whether the application is customized using the new application class, and wherein the selection of the selectable feature causes the selectable feature to switch between a first mode and a second mode; in response to receiving the user input, generating mode metadata associated with the new building block, wherein the mode metadata corresponds to the first mode when the state of the selectable feature is in the first mode, and wherein the mode metadata corresponds to the second mode when the state of the selectable feature is in the second mode; receiving a request to execute the new building block; and in response to receiving the request, determining whether the mode metadata corresponds to the first mode or the second mode, wherein; when the mode metadata corresponds to the first mode; receiving a first instruction that overrides the new application class; and calling the application class, such that the customized metadata associated with the new building block is applied to the one or more rendering objects; and when the mode metadata corresponds to the second mode; causing a copy of the one or more rendering objects to be stored in association with the new building block; receiving a second instruction that overrides the application class; and calling the new application class, such that the customized metadata associated with the new building block is applied to the copy of the one or more rendering objects. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system, comprising:
-
one or more data processors; and a non-transitory computer-readable storage medium containing instructions which, when executed on the one or more data processors, cause the one or more data processors to perform operations including; providing an interface configured to enable a user to define a customization setting for one or more existing building blocks associated with an application, each existing building block of the one or more existing building blocks corresponding to executable logic configured to receive an input or generate an output associated with the application; identifying an application class associated with an existing building block of the one or more existing building blocks, the application class being associated with one or more rendering objects, and the application class corresponding to executable logic; generating a new application class associated with a new building block corresponding to the existing building block, the new application class being associated with one or more new rendering objects, and the new application class corresponding to new executable logic including customized metadata configured to customize the application at runtime; receiving, via the interface, user input corresponding to a selection of a selectable feature, wherein the selectable feature corresponds to one of a plurality of states, wherein each state of the plurality of states indicates whether the application is customized using the new application class, and wherein the selection of the selectable feature causes the selectable feature to switch between a first mode and a second mode; in response to receiving the user input, generating mode metadata associated with the new building block, wherein the mode metadata corresponds to the first mode when the state of the selectable feature is in the first mode, and wherein the mode metadata corresponds to the second mode when the state of the selectable feature is in the second mode; receiving a request to execute the new building block; and in response to receiving the request, determining whether the mode metadata corresponds to the first mode or the second mode, wherein; when the mode metadata corresponds to the first mode; receiving a first instruction that overrides the new application class; and calling the application class, such that the customized metadata associated with the new building block is applied to the one or more rendering objects; and when the mode metadata corresponds to the second mode; causing a copy of the one or more rendering objects to be stored in association with the new building block; receiving a second instruction that overrides the application class; and calling the new application class, such that the customized metadata associated with the new building block is applied to the copy of the one or more rendering objects. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause a data processing apparatus to perform operations including:
-
providing an interface configured to enable a user to define a customization setting for one or more existing building blocks associated with an application, each existing building block of the one or more existing building blocks corresponding to executable logic configured to receive an input or generate an output associated with the application; identifying an application class associated with an existing building block of the one or more existing building blocks, the application class being associated with one or more rendering objects, and the application class corresponding to executable logic; generating a new application class associated with a new building block corresponding to the existing building block, the new application class being associated with one or more new rendering objects, and the new application class corresponding to new executable logic including customized metadata configured to customize the application at runtime; receiving, via the interface, user input corresponding to a selection of a selectable feature, wherein the selectable feature corresponds to one of a plurality of states, wherein each state of the plurality of states indicates whether the application is customized using the new application class, and wherein the selection of the selectable feature causes the selectable feature to switch between a first mode and a second mode; in response to receiving the user input, generating mode metadata associated with the new building block, wherein the mode metadata corresponds to the first mode when the state of the selectable feature is in the first mode, and wherein the mode metadata corresponds to the second mode when the state of the selectable feature is in the second mode; receiving a request to execute the new building block; and in response to receiving the request, determining whether the mode metadata corresponds to the first mode or the second mode, wherein; when the mode metadata corresponds to the first mode; receiving a first instruction that overrides the new application class; and calling the application class, such that the customized metadata associated with the new building block is applied to the one or more rendering objects; and when the mode metadata corresponds to the second mode; causing a copy of the one or more rendering objects to be stored in association with the new building block; receiving a second instruction that overrides the application class; and calling the new application class, such that the customized metadata associated with the new building block is applied to the copy of the one or more rendering objects. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification