0

我需要在 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,APIv2/schemas/images。如何获得与计算和网络相关的架构?

4

1 回答 1

1

它们不是 JSON 模式,但您可以处理OpenStack WADL来代替您需要做的事情。

于 2014-07-26T19:36:09.343 回答