|
|
|
|
@ -482,29 +482,52 @@ Sometimes you end up with a complex data structure in JSON format and you need t
|
|
|
|
|
|
|
|
|
|
Now, let's take the following data structure::
|
|
|
|
|
|
|
|
|
|
domain_definition:
|
|
|
|
|
domain:
|
|
|
|
|
cluster:
|
|
|
|
|
- name: "cluster1"
|
|
|
|
|
- name: "cluster2"
|
|
|
|
|
server:
|
|
|
|
|
- name: "server11"
|
|
|
|
|
cluster: "cluster1"
|
|
|
|
|
port: "8080"
|
|
|
|
|
- name: "server12"
|
|
|
|
|
cluster: "cluster1"
|
|
|
|
|
port: "8090"
|
|
|
|
|
- name: "server21"
|
|
|
|
|
cluster: "cluster2"
|
|
|
|
|
port: "9080"
|
|
|
|
|
- name: "server22"
|
|
|
|
|
cluster: "cluster2"
|
|
|
|
|
port: "9090"
|
|
|
|
|
library:
|
|
|
|
|
- name: "lib1"
|
|
|
|
|
target: "cluster1"
|
|
|
|
|
- name: "lib2"
|
|
|
|
|
target: "cluster2"
|
|
|
|
|
{
|
|
|
|
|
"domain_definition": {
|
|
|
|
|
"domain": {
|
|
|
|
|
"cluster": [
|
|
|
|
|
{
|
|
|
|
|
"name": "cluster1"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "cluster2"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"server": [
|
|
|
|
|
{
|
|
|
|
|
"name": "server11",
|
|
|
|
|
"cluster": "cluster1",
|
|
|
|
|
"port": "8080"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "server12",
|
|
|
|
|
"cluster": "cluster1",
|
|
|
|
|
"port": "8090"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "server21",
|
|
|
|
|
"cluster": "cluster2",
|
|
|
|
|
"port": "9080"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "server22",
|
|
|
|
|
"cluster": "cluster2",
|
|
|
|
|
"port": "9090"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"library": [
|
|
|
|
|
{
|
|
|
|
|
"name": "lib1",
|
|
|
|
|
"target": "cluster1"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "lib2",
|
|
|
|
|
"target": "cluster2"
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
To extract all clusters from this structure, you can use the following query::
|
|
|
|
|
|
|
|
|
|
|