@Provides @LazySingleton public CloudFilesApi getCloudFilesApi(final CloudFilesAccountConfig config) { log.info("Building Cloud Files Api..."); Iterable<com.google.inject.Module> modules; if (config.getUseServiceNet()) { log.info("Configuring Cloud Files Api to use the internal service network..."); modules = ImmutableSet.of(new SLF4JLoggingModule(), new InternalUrlModule()); } else { log.info("Configuring Cloud Files Api to use the public network..."); modules = ImmutableSet.of(new SLF4JLoggingModule()); } ProviderRegistry.registerProvider(CloudFilesUSProviderMetadata.builder().build()); ProviderRegistry.registerProvider(CloudFilesUKProviderMetadata.builder().build()); ContextBuilder cb = ContextBuilder.newBuilder(config.getProvider()) .credentials(config.getUserName(), config.getApiKey()).modules(modules); CloudFilesApi cfa = cb.buildApi(CloudFilesApi.class); log.info("Cloud Files Api built."); return cfa; }
/** * Searches for {@link ProviderMetadata} and {@link ApiMetadata} inside the {@link Bundle}. If metadata are found * they are registered in the {@link ProviderRegistry} and {@link ApiRegistry}. Also the {@link ProviderListener} and * {@link ApiListener} are notified. * * @param bundle */ private synchronized void addBundle(Bundle bundle) { for (ProviderMetadata providerMetadata : listProviderMetadata(bundle)) { if (providerMetadata != null) { ProviderRegistry.registerProvider(providerMetadata); providerMetadataMap.put(bundle.getBundleId(), providerMetadata); for (ProviderListener listener : providerListeners) { listener.added(providerMetadata); } } } for (ApiMetadata apiMetadata : listApiMetadata(bundle)) { if (apiMetadata != null) { ApiRegistry.registerApi(apiMetadata); apiMetadataMap.put(bundle.getBundleId(), apiMetadata); for (ApiListener listener : apiListeners) { listener.added(apiMetadata); } } } }
/** * Searches for {@link ProviderMetadata} and {@link ApiMetadata} inside the {@link Bundle}. If metadata are found * they are registered in the {@link ProviderRegistry} and {@link ApiRegistry}. Also the {@link ProviderListener} and * {@link ApiListener} are notified. * * @param bundle */ private synchronized void addBundle(Bundle bundle) { for (ProviderMetadata providerMetadata : listProviderMetadata(bundle)) { if (providerMetadata != null) { ProviderRegistry.registerProvider(providerMetadata); providerMetadataMap.put(bundle.getBundleId(), providerMetadata); for (ProviderListener listener : providerListeners) { listener.added(providerMetadata); } } } for (ApiMetadata apiMetadata : listApiMetadata(bundle)) { if (apiMetadata != null) { ApiRegistry.registerApi(apiMetadata); apiMetadataMap.put(bundle.getBundleId(), apiMetadata); for (ApiListener listener : apiListeners) { listener.added(apiMetadata); } } } }
/** * Searches for {@link ProviderMetadata} and {@link ApiMetadata} inside the {@link Bundle}. If metadata are found * they are registered in the {@link ProviderRegistry} and {@link ApiRegistry}. Also the {@link ProviderListener} and * {@link ApiListener} are notified. * * @param bundle */ private synchronized void addBundle(Bundle bundle) { for (ProviderMetadata providerMetadata : listProviderMetadata(bundle)) { if (providerMetadata != null) { ProviderRegistry.registerProvider(providerMetadata); providerMetadataMap.put(bundle.getBundleId(), providerMetadata); for (ProviderListener listener : providerListeners) { listener.added(providerMetadata); } } } for (ApiMetadata apiMetadata : listApiMetadata(bundle)) { if (apiMetadata != null) { ApiRegistry.registerApi(apiMetadata); apiMetadataMap.put(bundle.getBundleId(), apiMetadata); for (ApiListener listener : apiListeners) { listener.added(apiMetadata); } } } }
/** * Searches for {@link ProviderMetadata} and {@link ApiMetadata} inside the {@link Bundle}. If metadata are found * they are registered in the {@link ProviderRegistry} and {@link ApiRegistry}. Also the {@link ProviderListener} and * {@link ApiListener} are notified. * * @param bundle */ private synchronized void addBundle(Bundle bundle) { for (ProviderMetadata providerMetadata : listProviderMetadata(bundle)) { if (providerMetadata != null) { ProviderRegistry.registerProvider(providerMetadata); providerMetadataMap.put(bundle.getBundleId(), providerMetadata); for (ProviderListener listener : providerListeners) { listener.added(providerMetadata); } } } for (ApiMetadata apiMetadata : listApiMetadata(bundle)) { if (apiMetadata != null) { ApiRegistry.registerApi(apiMetadata); apiMetadataMap.put(bundle.getBundleId(), apiMetadata); for (ApiListener listener : apiListeners) { listener.added(apiMetadata); } } } }
/** * Searches for {@link ProviderMetadata} and {@link ApiMetadata} inside the {@link Bundle}. If metadata are found * they are registered in the {@link ProviderRegistry} and {@link ApiRegistry}. Also the {@link ProviderListener} and * {@link ApiListener} are notified. * * @param bundle */ private synchronized void addBundle(Bundle bundle) { for (ProviderMetadata providerMetadata : listProviderMetadata(bundle)) { if (providerMetadata != null) { ProviderRegistry.registerProvider(providerMetadata); providerMetadataMap.put(bundle.getBundleId(), providerMetadata); for (ProviderListener listener : providerListeners) { listener.added(providerMetadata); } } } for (ApiMetadata apiMetadata : listApiMetadata(bundle)) { if (apiMetadata != null) { ApiRegistry.registerApi(apiMetadata); apiMetadataMap.put(bundle.getBundleId(), apiMetadata); for (ApiListener listener : apiListeners) { listener.added(apiMetadata); } } } }
/** * Searches for {@link ProviderMetadata} and {@link ApiMetadata} inside the {@link Bundle}. If metadata are found * they are registered in the {@link ProviderRegistry} and {@link ApiRegistry}. Also the {@link ProviderListener} and * {@link ApiListener} are notified. * * @param bundle */ private synchronized void addBundle(Bundle bundle) { for (ProviderMetadata providerMetadata : listProviderMetadata(bundle)) { if (providerMetadata != null) { ProviderRegistry.registerProvider(providerMetadata); providerMetadataMap.put(bundle.getBundleId(), providerMetadata); for (ProviderListener listener : providerListeners) { listener.added(providerMetadata); } } } for (ApiMetadata apiMetadata : listApiMetadata(bundle)) { if (apiMetadata != null) { ApiRegistry.registerApi(apiMetadata); apiMetadataMap.put(bundle.getBundleId(), apiMetadata); for (ApiListener listener : apiListeners) { listener.added(apiMetadata); } } } }
@Test public void testRegisteredProvider() throws Exception { String id = "my-example-provider"; assertFalse(JcloudsProviderAndApiLoader.isProvider(id)); ProviderMetadata provider = new BaseProviderMetadata.Builder() .id(id) .name("My Example Provider") .apiMetadata(new AWSEC2ApiMetadata()) .build(); ProviderRegistry.registerProvider(provider); try { assertIsProvider(id); ProviderRegistry.unregisterProvider(provider); assertFalse(JcloudsProviderAndApiLoader.isProvider(id)); } finally { ProviderRegistry.unregisterProvider(provider); } }
@Test public void testRenamedRegisteredProvider() throws Exception { String newId = "my-example-provider2"; String oldId = "my-example-provider-renamed"; assertFalse(JcloudsProviderAndApiLoader.isProvider(newId)); ProviderMetadata provider = new BaseProviderMetadata.Builder() .id(newId) .name("My Example Provider 2") .apiMetadata(new AWSEC2ApiMetadata()) .build(); ProviderRegistry.registerProvider(provider); try { assertIsProvider(newId); assertFalse(JcloudsProviderAndApiLoader.isProvider(oldId)); DeserializingJcloudsRenamesProvider.INSTANCE.loadDeserializingMapping().put(oldId,newId); assertIsProvider(oldId, newId); ProviderRegistry.unregisterProvider(provider); assertFalse(JcloudsProviderAndApiLoader.isProvider(newId)); assertFalse(JcloudsProviderAndApiLoader.isProvider(oldId)); } finally { ProviderRegistry.unregisterProvider(provider); } }