You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by na...@apache.org on 2016/05/25 19:35:32 UTC

[2/2] jclouds git commit: Allow to override the Image and Security extension bindings

Allow to override the Image and Security extension bindings

Some providers, such as Azure ARM, might need additional
resources present in order to be able to use the extension.
This change allows to override its binding (Guice 4 by default does not
allow to override provider bindings, so we need to define them as final
ones and provide an alternate method for subclasses that need to
override the binding).


Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/d05af224
Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/d05af224
Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/d05af224

Branch: refs/heads/master
Commit: d05af2246b2252782b87f53332fc0a8a7313bbe1
Parents: b7ed4f3
Author: Ignasi Barrera <na...@apache.org>
Authored: Sat May 21 00:30:31 2016 +0200
Committer: Ignasi Barrera <na...@apache.org>
Committed: Wed May 25 21:14:26 2016 +0200

----------------------------------------------------------------------
 .../config/BaseComputeServiceContextModule.java       | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/d05af224/compute/src/main/java/org/jclouds/compute/config/BaseComputeServiceContextModule.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/config/BaseComputeServiceContextModule.java b/compute/src/main/java/org/jclouds/compute/config/BaseComputeServiceContextModule.java
index ab5fb0f..3e83617 100644
--- a/compute/src/main/java/org/jclouds/compute/config/BaseComputeServiceContextModule.java
+++ b/compute/src/main/java/org/jclouds/compute/config/BaseComputeServiceContextModule.java
@@ -304,16 +304,22 @@ public abstract class BaseComputeServiceContextModule extends AbstractModule {
    @Provides
    @Singleton
    public final Optional<ImageExtension> guiceProvideImageExtension(Injector i) {
-      Binding<ImageExtension> binding = i.getExistingBinding(Key.get(ImageExtension.class));
-      return binding == null ? Optional.<ImageExtension> absent() : Optional.of(binding.getProvider().get());
+      return provideImageExtension(i);
    }
 
    @Provides
    @Singleton
    protected final Optional<SecurityGroupExtension> guiceProvideSecurityGroupExtension(Injector i) {
+      return provideSecurityGroupExtension(i);
+   }
+
+   protected Optional<ImageExtension> provideImageExtension(Injector i) {
+      Binding<ImageExtension> binding = i.getExistingBinding(Key.get(ImageExtension.class));
+      return binding == null ? Optional.<ImageExtension> absent() : Optional.of(binding.getProvider().get());
+   }
+
+   protected Optional<SecurityGroupExtension> provideSecurityGroupExtension(Injector i) {
       Binding<SecurityGroupExtension> binding = i.getExistingBinding(Key.get(SecurityGroupExtension.class));
       return binding == null ? Optional.<SecurityGroupExtension> absent() : Optional.of(binding.getProvider().get());
    }
-   
-
 }