我需要在 Java 中为 Openstack 对 ReST API 的响应生成引用/反射/模式类。
例如,我使用 API 来获取服务器列表:v2/{tenant_id}/servers/detail
这是我的回复:-
{
"servers": [
{
"status": "ACTIVE",
"updated": "2014-07-11T11:29:58Z",
"hostId": "872e9b93ccd50b93612d49f4c371f49fe6365f02bcb51994868eb88f",
"OS-EXT-SRV-ATTR:host": "controller",
"addresses": {
"officenet": [
{
"OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:c8:52:41",
"version": 4,
"addr": "10.43.1.182",
"OS-EXT-IPS:type": "fixed"
}
]
},
"links": [
{
"href": "http://10.43.1.197:8774/v2/1333f00f05564a02b3c4f608b9622fc9/servers/bbadfe78-c6eb-48ce-a51b-c26617a812ba",
"rel": "self"
},
{
"href": "http://10.43.1.197:8774/1333f00f05564a02b3c4f608b9622fc9/servers/bbadfe78-c6eb-48ce-a51b-c26617a812ba",
"rel": "bookmark"
}
],
"key_name": null,
"image": {
"id": "b724ae53-9113-4e33-987a-f58fd9a4ec81",
"links": [
{
"href": "http://10.43.1.197:8774/1333f00f05564a02b3c4f608b9622fc9/images/b724ae53-9113-4e33-987a-f58fd9a4ec81",
"rel": "bookmark"
}
]
},
"OS-EXT-STS:task_state": null,
"OS-EXT-STS:vm_state": "active",
"OS-EXT-SRV-ATTR:instance_name": "instance-00000016",
"OS-SRV-USG:launched_at": "2014-07-11T11:29:58.000000",
"OS-EXT-SRV-ATTR:hypervisor_hostname": "controller",
"flavor": {
"id": "1",
"links": [
{
"href": "http://10.43.1.197:8774/1333f00f05564a02b3c4f608b9622fc9/flavors/1",
"rel": "bookmark"
}
]
},
"id": "bbadfe78-c6eb-48ce-a51b-c26617a812ba",
"security_groups": [
{
"name": "default"
}
],
"OS-SRV-USG:terminated_at": null,
"OS-EXT-AZ:availability_zone": "nova",
"user_id": "a859477b42794e8fa6dbf339361bb268",
"name": "AKshay-DebianInstance 1",
"created": "2014-07-11T11:29:53Z",
"tenant_id": "1333f00f05564a02b3c4f608b9622fc9",
"OS-DCF:diskConfig": "MANUAL",
"os-extended-volumes:volumes_attached": [],
"accessIPv4": "",
"accessIPv6": "",
"progress": 0,
"OS-EXT-STS:power_state": 1,
"config_drive": "",
"metadata": {}
}
]
}
如何获得此 JSON 的通用架构以及对应 API 的类似 JSON。我在 Openstack 文档上进行了搜索,但它仅与可用的图像服务 JSON 模式有关。另外,在谷歌上搜索过它,但徒劳无功。
[编辑]:我可以得到http://docs.openstack.org/api/openstack-image-service/2.0/content/get-images-schema.html,API是v2/schemas/images。如何获得与计算和网络相关的架构?