Пример API JSA Softlayer для получения всех конфигураций для "Часовой / Предварительно установленной конфигурации Bare Metal Servers"

Я пытаюсь получить все конфигурации для почасовых серверов на SoftLayer, но не получилось. Есть ли пример для Java?

То, что я хочу получить, это элементы, указанные в следующей ссылке (имя центра данных, список ОС, список процессоров / графических процессоров и т. Д.): https://gist.github.com/bmpotter/a0d9a386d8681bdab456/revisions

Я могу получить список кодов ссылок ОС со следующими кодами, но это единственный, который я могу получить сейчас:)

Hardware.Service hardwareService = Hardware.service(client);
Configuration configuration = hardwareService.getCreateObjectOptions();

List<Option> options = configuration.getOperatingSystems();
for (Option option : options) {
    Hardware hardware = option.getTemplate();
    String osRefCode = hardware.getOperatingSystemReferenceCode();
    System.out.println("osRefCode : " + osRefCode ); 
}

Я не могу получить список имен DataCenter и другие конфигурации (например, количество процессоров) со следующими кодами:

List<Option> options = configuration.getDatacenters();
for (Option option : options) {   
    Hardware hardware = option.getTemplate();
    String dcName = hardware.getDatacenterName();
    System.out.println("dcName : " + dcName );
}

Должно быть что-то не так, но я не знаю почему.

Будет здорово, если для этого есть примеры кода Java.

Благодарю.

1 ответ

Решение

Я рекомендую вам отладить свой код, чтобы узнать, как вам нужно правильно обращаться к свойствам, я получил несколько значений для вас:

List<Option> options2 = configuration.getDatacenters();
        for (Option option : options2) {   

            Hardware hardware = option.getTemplate();
            String dcName = hardware.getDatacenter().getName();

            System.out.println("dcName : " + dcName );
        }


        List<Option> options3 = configuration.getProcessors();
        for (Option option : options3) {  
            System.out.println("processors");
            System.out.println("item prices");
            System.out.println("hourly recurring fee" + option.getItemPrice().getHourlyRecurringFee());
            System.out.println("item");
            System.out.println("desciption" + option.getItemPrice().getItem().getDescription());
            Hardware hardware = option.getTemplate();
            System.out.println("Template");
            System.out.println("processorCoreAmount : " + hardware.getProcessorCoreAmount() );
            System.out.println("memoryCapacity : " + hardware.getMemoryCapacity() );
        }

    }
Другие вопросы по тегам