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/12/07 16:24:12 UTC

[2/2] jclouds git commit: Deprecate user metadata in DigitalOcean

Deprecate user metadata in DigitalOcean


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

Branch: refs/heads/master
Commit: baab388c577ac8a23a3c2b347fdceafd8d51a74b
Parents: 92044e3
Author: Ignasi Barrera <na...@apache.org>
Authored: Wed Dec 7 17:16:51 2016 +0100
Committer: Ignasi Barrera <na...@apache.org>
Committed: Wed Dec 7 17:18:23 2016 +0100

----------------------------------------------------------------------
 .../DigitalOcean2ComputeServiceAdapter.java     | 15 +++-------
 .../options/DigitalOcean2TemplateOptions.java   | 31 ++++++++++++++++++++
 2 files changed, 35 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/baab388c/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/DigitalOcean2ComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/DigitalOcean2ComputeServiceAdapter.java b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/DigitalOcean2ComputeServiceAdapter.java
index 1782551..b8f34ae 100644
--- a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/DigitalOcean2ComputeServiceAdapter.java
+++ b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/DigitalOcean2ComputeServiceAdapter.java
@@ -28,7 +28,6 @@ import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_NODE_S
 import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_NODE_TERMINATED;
 
 import java.util.List;
-import java.util.Map;
 import java.util.Set;
 
 import javax.annotation.Resource;
@@ -48,7 +47,6 @@ import org.jclouds.digitalocean2.domain.Region;
 import org.jclouds.digitalocean2.domain.Size;
 import org.jclouds.digitalocean2.domain.options.CreateDropletOptions;
 import org.jclouds.domain.LoginCredentials;
-import org.jclouds.json.Json;
 import org.jclouds.logging.Logger;
 
 import com.google.common.base.Function;
@@ -68,18 +66,15 @@ public class DigitalOcean2ComputeServiceAdapter implements ComputeServiceAdapter
    private final Predicate<Integer> nodeRunningPredicate;
    private final Predicate<Integer> nodeStoppedPredicate;
    private final Predicate<Integer> nodeTerminatedPredicate;
-   private final Json json;
 
    @Inject DigitalOcean2ComputeServiceAdapter(DigitalOcean2Api api,
          @Named(TIMEOUT_NODE_RUNNING) Predicate<Integer> nodeRunningPredicate,
          @Named(TIMEOUT_NODE_SUSPENDED) Predicate<Integer> nodeStoppedPredicate,
-         @Named(TIMEOUT_NODE_TERMINATED) Predicate<Integer> nodeTerminatedPredicate,
-         Json json) {
+         @Named(TIMEOUT_NODE_TERMINATED) Predicate<Integer> nodeTerminatedPredicate) {
       this.api = api;
       this.nodeRunningPredicate = nodeRunningPredicate;
       this.nodeStoppedPredicate = nodeStoppedPredicate;
       this.nodeTerminatedPredicate = nodeTerminatedPredicate;
-      this.json = json;
    }
 
    private void setUserDataIfSupported(Template template, CreateDropletOptions.Builder options, String userData) {
@@ -110,11 +105,9 @@ public class DigitalOcean2ComputeServiceAdapter implements ComputeServiceAdapter
       // Encoding tags or anything else than user_data in here breaks their functionality.
       if (null != templateOptions.getUserData()) {
          setUserDataIfSupported(template, options, new String(templateOptions.getUserData()));
-      }
-      // Backwards compatible variant, getting userData from userMetaData map.
-      Map<String, String> metadataAndTags = templateOptions.getUserMetadata();
-      if (null != metadataAndTags.get("user_data")) {
-         setUserDataIfSupported(template, options, metadataAndTags.get("user_data"));
+      } else if (null != templateOptions.getUserMetadata().get("user_data")) {
+         // Backwards compatible variant, getting userData from userMetaData map.
+         setUserDataIfSupported(template, options, templateOptions.getUserMetadata().get("user_data"));
       }
 
       DropletCreate dropletCreated = api.dropletApi().create(name,

http://git-wip-us.apache.org/repos/asf/jclouds/blob/baab388c/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/options/DigitalOcean2TemplateOptions.java
----------------------------------------------------------------------
diff --git a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/options/DigitalOcean2TemplateOptions.java b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/options/DigitalOcean2TemplateOptions.java
index bc18a59..2a86f85 100644
--- a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/options/DigitalOcean2TemplateOptions.java
+++ b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/compute/options/DigitalOcean2TemplateOptions.java
@@ -20,6 +20,7 @@ import static com.google.common.base.Objects.equal;
 import static com.google.common.base.Preconditions.checkNotNull;
 
 import java.util.Arrays;
+import java.util.Map;
 import java.util.Set;
 
 import org.jclouds.compute.options.TemplateOptions;
@@ -77,6 +78,36 @@ public class DigitalOcean2TemplateOptions extends TemplateOptions implements Clo
       this.userData = userData;
       return this;
    }
+   
+   /**
+    * @deprecated Key value metadata is not supported in DigitalOcean. Use
+    *             {@link #userData(byte[])} instead.
+    */
+   @Deprecated
+   @Override
+   public TemplateOptions userMetadata(Map<String, String> userMetadata) {
+      return super.userMetadata(userMetadata);
+   }
+
+   /**
+    * @deprecated Key value metadata is not supported in DigitalOcean. Use
+    *             {@link #userData(byte[])} instead.
+    */
+   @Deprecated
+   @Override
+   public TemplateOptions userMetadata(String key, String value) {
+      return super.userMetadata(key, value);
+   }
+
+   /**
+    * @deprecated Key value metadata is not supported in DigitalOcean. User data
+    *             can be retrieved with {@link #getUserData()}.
+    */
+   @Deprecated
+   @Override
+   public Map<String, String> getUserMetadata() {
+      return super.getUserMetadata();
+   }
 
    public Set<Integer> getSshKeyIds() {
       return sshKeyIds;