Пример 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() );
}
}