Updated Branches:
  refs/heads/master 6d9784c4b -> 05ec994f9

JCLOUDS-410. Deprecate Payload.getInput

We plan to transition Payload to ByteSource in the next major release.
Unfortunately Payload.getInput masks its checked exception and
ByteSource.getInput is final so we cannot continue to mask the
exceptions.  Deprecation of getInput and addition openStream allows us
to transition callers from the former to the latter.


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

Branch: refs/heads/master
Commit: f3dcd3fe862cd4c22b430786beb018fdfd967dc2
Parents: 6d9784c
Author: Andrew Gaul <[email protected]>
Authored: Mon Dec 16 11:21:32 2013 -0800
Committer: Andrew Gaul <[email protected]>
Committed: Mon Dec 16 13:02:37 2013 -0800

----------------------------------------------------------------------
 core/src/main/java/org/jclouds/io/Payload.java         |  9 +++++++++
 .../org/jclouds/io/payloads/BaseCipherPayload.java     |  2 +-
 .../main/java/org/jclouds/io/payloads/BasePayload.java | 11 +++++++++++
 .../java/org/jclouds/io/payloads/ByteArrayPayload.java |  2 +-
 .../org/jclouds/io/payloads/DelegatingPayload.java     |  8 ++++++++
 .../main/java/org/jclouds/io/payloads/FilePayload.java | 11 +++--------
 .../org/jclouds/io/payloads/InputStreamPayload.java    |  2 +-
 .../io/payloads/InputStreamSupplierPayload.java        | 13 ++++---------
 .../java/org/jclouds/io/payloads/MultipartForm.java    | 10 ++--------
 .../java/org/jclouds/io/payloads/PhantomPayload.java   |  2 +-
 .../java/org/jclouds/io/payloads/StreamingPayload.java |  9 +++++++++
 .../java/org/jclouds/io/payloads/StringPayload.java    |  2 +-
 .../org/jclouds/io/payloads/UrlEncodedFormPayload.java |  2 +-
 .../java/org/jclouds/http/apachehc/ApacheHCUtils.java  |  7 ++-----
 14 files changed, 54 insertions(+), 36 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/Payload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/Payload.java 
b/core/src/main/java/org/jclouds/io/Payload.java
index 30d7671..6d08ce7 100644
--- a/core/src/main/java/org/jclouds/io/Payload.java
+++ b/core/src/main/java/org/jclouds/io/Payload.java
@@ -18,6 +18,7 @@ package org.jclouds.io;
 
 import java.io.Closeable;
 import java.io.InputStream;
+import java.io.IOException;
 
 import com.google.common.io.InputSupplier;
 
@@ -29,6 +30,14 @@ public interface Payload extends InputSupplier<InputStream>, 
WriteTo, Closeable
    /**
     * Creates a new InputStream object of the payload.
     */
+   InputStream openStream() throws IOException;
+
+   /**
+    * Creates a new InputStream object of the payload.
+    *
+    * @deprecated see openStream
+    */
+   @Deprecated
    InputStream getInput();
 
    /**

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/BaseCipherPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/BaseCipherPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/BaseCipherPayload.java
index d802cec..b1bd930 100644
--- a/core/src/main/java/org/jclouds/io/payloads/BaseCipherPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/BaseCipherPayload.java
@@ -44,7 +44,7 @@ public abstract class BaseCipherPayload extends 
DelegatingPayload {
    public abstract Cipher initializeCipher(Key key);
 
    @Override
-   public CipherInputStream getInput() {
+   public CipherInputStream openStream() {
       return new CipherInputStream(super.getInput(), initializeCipher(key));
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/BasePayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/BasePayload.java 
b/core/src/main/java/org/jclouds/io/payloads/BasePayload.java
index dff3820..6fdd8e5 100644
--- a/core/src/main/java/org/jclouds/io/payloads/BasePayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/BasePayload.java
@@ -25,6 +25,8 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 
+import com.google.common.base.Throwables;
+
 import org.jclouds.io.MutableContentMetadata;
 import org.jclouds.io.Payload;
 
@@ -45,6 +47,15 @@ public abstract class BasePayload<V> implements Payload {
       this.contentMetadata = checkNotNull(contentMetadata, "contentMetadata");
    }
 
+   @Override
+   public InputStream getInput() {
+      try {
+         return openStream();
+      } catch (IOException ioe) {
+         throw Throwables.propagate(ioe);
+      }
+   }
+
    /**
     * {@inheritDoc}
     */

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/ByteArrayPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/ByteArrayPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/ByteArrayPayload.java
index 539fcde..68aeaf7 100644
--- a/core/src/main/java/org/jclouds/io/payloads/ByteArrayPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/ByteArrayPayload.java
@@ -41,7 +41,7 @@ public class ByteArrayPayload extends BasePayload<byte[]> {
     * {@inheritDoc}
     */
    @Override
-   public InputStream getInput() {
+   public InputStream openStream() {
       return new ByteArrayInputStream(content);
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/DelegatingPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/DelegatingPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/DelegatingPayload.java
index ef5cc9d..4524411 100644
--- a/core/src/main/java/org/jclouds/io/payloads/DelegatingPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/DelegatingPayload.java
@@ -41,6 +41,14 @@ public class DelegatingPayload implements Payload {
     * {@inheritDoc}
     */
    @Override
+   public InputStream openStream() throws IOException {
+      return delegate.openStream();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
    public InputStream getInput() {
       return delegate.getInput();
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/FilePayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/FilePayload.java 
b/core/src/main/java/org/jclouds/io/payloads/FilePayload.java
index 338a6e7..430f5d8 100644
--- a/core/src/main/java/org/jclouds/io/payloads/FilePayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/FilePayload.java
@@ -20,10 +20,9 @@ import static 
com.google.common.base.Preconditions.checkNotNull;
 
 import java.io.File;
 import java.io.FileInputStream;
-import java.io.FileNotFoundException;
 import java.io.InputStream;
+import java.io.IOException;
 
-import com.google.common.base.Throwables;
 
 /**
  * @author Adrian Cole
@@ -40,12 +39,8 @@ public class FilePayload extends BasePayload<File> {
     * {@inheritDoc}
     */
    @Override
-   public InputStream getInput() {
-      try {
-         return new FileInputStream(content);
-      } catch (FileNotFoundException e) {
-         throw Throwables.propagate(e);
-      }
+   public InputStream openStream() throws IOException {
+      return new FileInputStream(content);
    }
 
 }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/InputStreamPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/InputStreamPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/InputStreamPayload.java
index 450a6cb..22a1752 100644
--- a/core/src/main/java/org/jclouds/io/payloads/InputStreamPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/InputStreamPayload.java
@@ -33,7 +33,7 @@ public class InputStreamPayload extends 
BasePayload<InputStream> {
     * {@inheritDoc}
     */
    @Override
-   public InputStream getInput() {
+   public InputStream openStream() {
       return content;
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/InputStreamSupplierPayload.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/jclouds/io/payloads/InputStreamSupplierPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/InputStreamSupplierPayload.java
index bd94cd3..54f0123 100644
--- a/core/src/main/java/org/jclouds/io/payloads/InputStreamSupplierPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/InputStreamSupplierPayload.java
@@ -22,7 +22,6 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.util.List;
 
-import com.google.common.base.Throwables;
 import com.google.common.collect.Lists;
 import com.google.common.io.InputSupplier;
 
@@ -40,14 +39,10 @@ public class InputStreamSupplierPayload extends 
BasePayload<InputSupplier<? exte
     * {@inheritDoc}
     */
    @Override
-   public InputStream getInput() {
-      try {
-         InputStream returnVal = content.getInput();
-         toClose.add(returnVal);
-         return returnVal;
-      } catch (IOException e) {
-         throw Throwables.propagate(e);
-      }
+   public InputStream openStream() throws IOException {
+      InputStream returnVal = content.getInput();
+      toClose.add(returnVal);
+      return returnVal;
    }
 
    /**

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/MultipartForm.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/MultipartForm.java 
b/core/src/main/java/org/jclouds/io/payloads/MultipartForm.java
index 655ca3c..8ae44dd 100644
--- a/core/src/main/java/org/jclouds/io/payloads/MultipartForm.java
+++ b/core/src/main/java/org/jclouds/io/payloads/MultipartForm.java
@@ -16,7 +16,6 @@
  */
 package org.jclouds.io.payloads;
 
-import static com.google.common.base.Throwables.propagate;
 import static com.google.common.collect.Lists.newArrayList;
 import static com.google.common.io.ByteStreams.join;
 import static com.google.common.io.ByteStreams.newInputStreamSupplier;
@@ -89,13 +88,8 @@ public class MultipartForm extends BasePayload<Iterable<? 
extends Part>> {
    }
 
    @Override
-   public InputStream getInput() {
-      try {
-         return chain.getInput();
-      } catch (IOException e) {
-         propagate(e);
-         return null;
-      }
+   public InputStream openStream() throws IOException {
+      return chain.getInput();
    }
 
    @Override

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/PhantomPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/PhantomPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/PhantomPayload.java
index 2824d53..4023ee1 100644
--- a/core/src/main/java/org/jclouds/io/payloads/PhantomPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/PhantomPayload.java
@@ -46,7 +46,7 @@ public class PhantomPayload extends BasePayload<Object> {
     * {@inheritDoc}
     */
    @Override
-   public InputStream getInput() {
+   public InputStream openStream() {
       throw new UnsupportedOperationException();
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/StreamingPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/StreamingPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/StreamingPayload.java
index ef34b69..2343091 100644
--- a/core/src/main/java/org/jclouds/io/payloads/StreamingPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/StreamingPayload.java
@@ -61,6 +61,15 @@ public class StreamingPayload implements Payload {
     *            this payload is for streaming writes only
     */
    @Override
+   public InputStream openStream() {
+      throw new UnsupportedOperationException("this payload is for streaming 
writes only");
+   }
+
+   /**
+    * @throws UnsupportedOperationException
+    *            this payload is for streaming writes only
+    */
+   @Override
    public InputStream getInput() {
       throw new UnsupportedOperationException("this payload is for streaming 
writes only");
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/StringPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/io/payloads/StringPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/StringPayload.java
index da1566f..2452a94 100644
--- a/core/src/main/java/org/jclouds/io/payloads/StringPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/StringPayload.java
@@ -43,7 +43,7 @@ public class StringPayload extends BasePayload<String> {
     * {@inheritDoc}
     */
    @Override
-   public InputStream getInput() {
+   public InputStream openStream() {
       return new ByteArrayInputStream(bytes);
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/core/src/main/java/org/jclouds/io/payloads/UrlEncodedFormPayload.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/jclouds/io/payloads/UrlEncodedFormPayload.java 
b/core/src/main/java/org/jclouds/io/payloads/UrlEncodedFormPayload.java
index 8cbfcca..fa906df 100644
--- a/core/src/main/java/org/jclouds/io/payloads/UrlEncodedFormPayload.java
+++ b/core/src/main/java/org/jclouds/io/payloads/UrlEncodedFormPayload.java
@@ -37,7 +37,7 @@ public class UrlEncodedFormPayload extends 
BasePayload<String> {
     * {@inheritDoc}
     */
    @Override
-   public InputStream getInput() {
+   public InputStream openStream() {
       return toInputStream(content);
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/f3dcd3fe/drivers/apachehc/src/main/java/org/jclouds/http/apachehc/ApacheHCUtils.java
----------------------------------------------------------------------
diff --git 
a/drivers/apachehc/src/main/java/org/jclouds/http/apachehc/ApacheHCUtils.java 
b/drivers/apachehc/src/main/java/org/jclouds/http/apachehc/ApacheHCUtils.java
index 5d86df6..47d7903 100644
--- 
a/drivers/apachehc/src/main/java/org/jclouds/http/apachehc/ApacheHCUtils.java
+++ 
b/drivers/apachehc/src/main/java/org/jclouds/http/apachehc/ApacheHCUtils.java
@@ -178,15 +178,12 @@ public class ApacheHCUtils {
       }
 
       @Override
-      public InputStream getInput() {
+      public InputStream openStream() throws IOException {
          try {
             return content.getContent();
          } catch (IllegalStateException e) {
-            Throwables.propagate(e);
-         } catch (IOException e) {
-            Throwables.propagate(e);
+            throw Throwables.propagate(e);
          }
-         return null;
       }
 
       @Override

Reply via email to