-
Notifications
You must be signed in to change notification settings - Fork 70
cobigen jsonplugin
At the moment the plug-in can be used for merge generic JSOn files and Sencha Architect generation depending on the merge strategy defined at the templates.
As for the Sencha Architect generation the input is a java object, the trigger expressions (including matchers and variable assignments) are implemented as Java.
There are currently these merge strategies:
Generic JSON Merge
-
merge strategy
jsonmerge
(add the new code respecting the existent is case of conflict) -
merge strategy
jsonmerge_override
(add the new code overwriting the existent in case of conflict)
Sencha Architect
-
merge strategy
sencharchmerge
(add the new code respecting the existent is case of conflict) -
merge strategy
sencharchmerge_override
(add the new code overwriting the existent in case of conflict)-
JsonArray’s will be ignored / replaced in total
-
JsonObjects in conclict will be processed recursively ignoring adding non existent elements.
-
The merge process will be:
-
Add non existent JSON Objects from patch file to base file.
-
For existent object in both files, will add non existent keys from patch to base object. This process will be done recursively for all existent objects.
-
For Json Arrays existent in both files, the arryas will be just concatenated.
The process is similar for the generic merging, but it only takes into account some specific keys for Sencha Architect itself because these keys need specific actions:
-
Ext.grid.column.Column
-
cn
-
type
-
name
-
userConfig
-
reference
-
Ext.form.Label
-
designerId
-
viewControllerInstanceId
-
viewModelInstanceId
-
Ext.grid.Panel
-
Ext.app.Controller
Disclaimer
If you discover any documentation bugs or would like to request new content, please raise them as an issue or create a pull request. Contributions to this wiki are done through the main repo under the folder documentation.
License
This documentation is licensed under the Creative Commons License (Attribution-NoDerivatives 4.0 International
)