Пример использования swift для работы с хранилищем данных.
В классе конфигурации (@Configuration) инициализируем подключение к сервису хранилища.
Для работы с swift в разных потоках, нам необходимо получить Token.
@Bean("swiftToken") public Token swiftClient(SwiftProperties swiftProperties) { String domain = "Default"; OSClient.OSClientV3 result = OSFactory.builderV3() .endpoint(swiftProperties.getUrl()) .credentials(swiftProperties.getLogin() , swiftProperties.getPassword() , Identifier.byName(domain)) .scopeToProject(Identifier.byName(swiftProperties.getTenantId()) , Identifier.byName(domain)) .authenticate(); return result.getToken();}
Дальше для обращения к сервису с помощью Token-а получаем экземпляр клиента.
@Autowiredprivate Token swiftToken; private OSClient.OSClientV3 getOsClientV3() { return OSFactory.clientFromToken(swiftToken);}
Основные ссылки:
- http://www.openstack4j.com/learn/objectstorage
- http://www.openstack4j.com/learn/threads/