RpcLogArtifact tweaked to use the canonical diskCache method, simplifies transition to EmittedArtifact.

http://gwt-code-reviews.appspot.com/1366801/

Review by: robertvawter@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9780 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/user/linker/rpc/RpcLogArtifact.java b/user/src/com/google/gwt/user/linker/rpc/RpcLogArtifact.java
index 0b2b00f..f326cf3 100644
--- a/user/src/com/google/gwt/user/linker/rpc/RpcLogArtifact.java
+++ b/user/src/com/google/gwt/user/linker/rpc/RpcLogArtifact.java
@@ -15,15 +15,10 @@
  */
 package com.google.gwt.user.linker.rpc;
 
-import com.google.gwt.core.ext.TreeLogger;
 import com.google.gwt.core.ext.linker.Artifact;
 import com.google.gwt.dev.util.DiskCache;
-import com.google.gwt.dev.util.Util;
 
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
 import java.io.IOException;
-import java.io.InputStream;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 
@@ -54,8 +49,8 @@
   /**
    * @param logger a TreeLogger
    */
-  public InputStream getContents(TreeLogger logger) {
-    return new ByteArrayInputStream(diskCache.readByteArray(diskCacheToken));
+  public byte[] getContents() {
+    return diskCache.readByteArray(diskCacheToken);
   }
 
   public String getQualifiedSourceName() {
@@ -89,9 +84,7 @@
   private void readObject(ObjectInputStream stream) throws IOException,
       ClassNotFoundException {
     stream.defaultReadObject();
-    ByteArrayOutputStream baos = new ByteArrayOutputStream();
-    Util.copyNoClose(stream, baos);
-    diskCacheToken = diskCache.writeByteArray(baos.toByteArray());
+    diskCacheToken = diskCache.transferFromStream(stream);
   }
 
   private void writeObject(ObjectOutputStream stream) throws IOException {
diff --git a/user/src/com/google/gwt/user/linker/rpc/RpcLogLinker.java b/user/src/com/google/gwt/user/linker/rpc/RpcLogLinker.java
index 91c58d5..cd0a3aa 100644
--- a/user/src/com/google/gwt/user/linker/rpc/RpcLogLinker.java
+++ b/user/src/com/google/gwt/user/linker/rpc/RpcLogLinker.java
@@ -57,9 +57,9 @@
              */
             policyStrongName = result.getStrongName();
           }
-          EmittedArtifact art = emitInputStream(logger,
-              logArt.getContents(logger), logArt.getQualifiedSourceName() + "-"
-                  + policyStrongName + ".rpc.log");
+          EmittedArtifact art = emitBytes(logger, logArt.getContents(),
+              logArt.getQualifiedSourceName() + "-" + policyStrongName
+                  + ".rpc.log");
           art.setVisibility(Visibility.Private);
           toReturn.add(art);
         }