Author: hwright
Date: Fri May 28 03:17:27 2010
New Revision: 949082
URL: http://svn.apache.org/viewvc?rev=949082&view=rev
Log:
JavaHL: Instead of using a custom output interface, just use the OutputStream
object from the standard library.
[ in subversion/bindings/javahl/ ]
* tests/org/apache/subversion/javahl/SVNAdminTests.java
(testLoadRepo): Use the proper type.
* tests/org/apache/subversion/javahl/SVNTests.java
(setUp): Use the standard FileOutputStream.
(FileOutputer): Remove.
(IgnoreOutputer): Reimplement in terms of an OutputStream.
* native/SVNAdmin.cpp,
native/SVNAdmin.h
(dump, load, verify): Use the OutputStream object in place of an Outputer.
* native/Outputer.h,
native/Outputer.cpp:
Remove.
* native/OutputStream.cpp:
Copied from Outputer.cpp. Update reference to OutputStream.
* native/OutputStream.h:
Copied from Outputer.h.
* native/org_apache_subversion_javahl_SVNAdmin.cpp
(Java_org_apache_subversion_javahl_SVNAdmin_dump,
Java_org_apache_subversion_javahl_SVNAdmin_load,
Java_org_apache_subversion_javahl_SVNAdmin_verify):
Update to use an OutputStream.
* native/org_apache_subversion_javahl_SVNClient.cpp:
Remove reference to Outputer.h.
* src/org/apache/subversion/javahl/ISVNAdmin.java,
src/org/apache/subversion/javahl/SVNAdmin.java
(dump, load, verify): Use a standard OutputStream.
* src/org/apache/subversion/javahl/IOutput.java:
Remove.
* src/org/tigris/subversion/javahl/SVNAdmin.java
(dump, load, verify): Wrap the output objects so they will be OutputStreams.
(OutputWrapper): New.
* src/org/tigris/subversion/javahl/OutputInterface.java:
Revert changes made in r906648.
Added:
subversion/trunk/subversion/bindings/javahl/native/OutputStream.cpp
- copied, changed from r949066,
subversion/trunk/subversion/bindings/javahl/native/Outputer.cpp
subversion/trunk/subversion/bindings/javahl/native/OutputStream.h
- copied, changed from r949066,
subversion/trunk/subversion/bindings/javahl/native/Outputer.h
Removed:
subversion/trunk/subversion/bindings/javahl/native/Outputer.cpp
subversion/trunk/subversion/bindings/javahl/native/Outputer.h
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/IOutput.java
Modified:
subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.cpp
subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.h
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNAdmin.cpp
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNAdmin.java
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNAdmin.java
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/OutputInterface.java
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNAdmin.java
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNAdminTests.java
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java
Copied: subversion/trunk/subversion/bindings/javahl/native/OutputStream.cpp
(from r949066, subversion/trunk/subversion/bindings/javahl/native/Outputer.cpp)
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/OutputStream.cpp?p2=subversion/trunk/subversion/bindings/javahl/native/OutputStream.cpp&p1=subversion/trunk/subversion/bindings/javahl/native/Outputer.cpp&r1=949066&r2=949082&rev=949082&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/Outputer.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/OutputStream.cpp Fri May
28 03:17:27 2010
@@ -20,19 +20,19 @@
* ====================================================================
* @endcopyright
*
- * @file Outputer.cpp
- * @brief Implementation of the class Outputer
+ * @file OutputStream.cpp
+ * @brief Implementation of the class OutputStream
*/
-#include "Outputer.h"
+#include "OutputStream.h"
#include "JNIUtil.h"
#include "JNIByteArray.h"
/**
- * Create an Outputer object.
+ * Create an OutputStream object.
* @param jthis the Java object to be stored
*/
-Outputer::Outputer(jobject jthis)
+OutputStream::OutputStream(jobject jthis)
{
m_jthis = jthis;
}
@@ -40,7 +40,7 @@ Outputer::Outputer(jobject jthis)
/**
* Destroy an Inputer object.
*/
-Outputer::~Outputer()
+OutputStream::~OutputStream()
{
// The m_jthis does not need to be destroyed, because it is the
// passed in parameter to the Java method.
@@ -52,41 +52,42 @@ Outputer::~Outputer()
* @param pool the pool, from which the structure is allocated
* @return the output stream
*/
-svn_stream_t *Outputer::getStream(const SVN::Pool &pool)
+svn_stream_t *OutputStream::getStream(const SVN::Pool &pool)
{
// Create a stream with this as the baton and set the write and
// close functions.
svn_stream_t *ret = svn_stream_create(this, pool.pool());
- svn_stream_set_write(ret, Outputer::write);
- svn_stream_set_close(ret, Outputer::close);
+ svn_stream_set_write(ret, OutputStream::write);
+ svn_stream_set_close(ret, OutputStream::close);
return ret;
}
/**
* Implements svn_write_fn_t to write data out from Subversion.
- * @param baton an Outputer object for the callback
+ * @param baton an OutputStream object for the callback
* @param buffer the buffer for the write data
* @param len on input the buffer len, on output the number of written
* bytes
* @return a subversion error or SVN_NO_ERROR
*/
-svn_error_t *Outputer::write(void *baton, const char *buffer, apr_size_t *len)
+svn_error_t *OutputStream::write(void *baton, const char *buffer,
+ apr_size_t *len)
{
JNIEnv *env = JNIUtil::getEnv();
// An object of our class is passed in as the baton.
- Outputer *that = (Outputer*)baton;
+ OutputStream *that = (OutputStream*)baton;
// The method id will not change during the time this library is
// loaded, so it can be cached.
static jmethodID mid = 0;
if (mid == 0)
{
- jclass clazz = env->FindClass(JAVA_PACKAGE"/IOutput");
+ jclass clazz = env->FindClass("java/io/OutputStream");
if (JNIUtil::isJavaExceptionThrown())
return SVN_NO_ERROR;
- mid = env->GetMethodID(clazz, "write", "([B)I");
+ mid = env->GetMethodID(clazz, "write", "([B)V");
if (JNIUtil::isJavaExceptionThrown() || mid == 0)
return SVN_NO_ERROR;
@@ -100,29 +101,26 @@ svn_error_t *Outputer::write(void *baton
return SVN_NO_ERROR;
// write the data
- jint written = env->CallIntMethod(that->m_jthis, mid, data);
+ env->CallObjectMethod(that->m_jthis, mid, data);
if (JNIUtil::isJavaExceptionThrown())
return SVN_NO_ERROR;
env->DeleteLocalRef(data);
- // return the number of bytes written
- *len = written;
-
return SVN_NO_ERROR;
}
/**
* Implements svn_close_fn_t to close the output stream.
- * @param baton an Outputer object for the callback
+ * @param baton an OutputStream object for the callback
* @return a subversion error or SVN_NO_ERROR
*/
-svn_error_t *Outputer::close(void *baton)
+svn_error_t *OutputStream::close(void *baton)
{
JNIEnv *env = JNIUtil::getEnv();
// An object of our class is passed in as the baton
- Outputer *that = (Outputer*)baton;
+ OutputStream *that = (OutputStream*)baton;
// The method id will not change during the time this library is
// loaded, so it can be cached.
Copied: subversion/trunk/subversion/bindings/javahl/native/OutputStream.h (from
r949066, subversion/trunk/subversion/bindings/javahl/native/Outputer.h)
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/OutputStream.h?p2=subversion/trunk/subversion/bindings/javahl/native/OutputStream.h&p1=subversion/trunk/subversion/bindings/javahl/native/Outputer.h&r1=949066&r2=949082&rev=949082&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/Outputer.h (original)
+++ subversion/trunk/subversion/bindings/javahl/native/OutputStream.h Fri May
28 03:17:27 2010
@@ -20,22 +20,22 @@
* ====================================================================
* @endcopyright
*
- * @file Outputer.h
- * @brief Interface of the class Outputer
+ * @file OutputStream.h
+ * @brief Interface of the class OutputStream
*/
-#ifndef OUTPUTER_H
-#define OUTPUTER_H
+#ifndef OUTPUT_STREAM_H
+#define OUTPUT_STREAM_H
#include <jni.h>
#include "svn_io.h"
#include "Pool.h"
/**
- * This class contains a Java objects implementing the interface Outputer and
- * implements the functions write & close of svn_stream_t
+ * This class contains a Java objects implementing the interface OutputStream
+ * and implements the functions write & close of svn_stream_t
*/
-class Outputer
+class OutputStream
{
/**
* A local reference to the Java object.
@@ -45,9 +45,9 @@ class Outputer
const char *buffer, apr_size_t *len);
static svn_error_t *close(void *baton);
public:
- Outputer(jobject jthis);
- ~Outputer();
+ OutputStream(jobject jthis);
+ ~OutputStream();
svn_stream_t *getStream(const SVN::Pool &pool);
};
-#endif // OUTPUTER_H
+#endif // OUTPUT_STREAM_H
Modified: subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.cpp
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.cpp?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.cpp Fri May 28
03:17:27 2010
@@ -151,7 +151,8 @@ void SVNAdmin::deltify(const char *path,
return;
}
-void SVNAdmin::dump(const char *path, Outputer &dataOut, Outputer &messageOut,
+void SVNAdmin::dump(const char *path, OutputStream &dataOut,
+ OutputStream &messageOut,
Revision &revsionStart, Revision &revisionEnd,
bool incremental, bool useDeltas)
{
@@ -263,7 +264,7 @@ void SVNAdmin::listUnusedDBLogs(const ch
void SVNAdmin::load(const char *path,
Inputer &dataIn,
- Outputer &messageOut,
+ OutputStream &messageOut,
bool ignoreUUID,
bool forceUUID,
bool usePreCommitHook,
@@ -452,7 +453,7 @@ SVNAdmin::getRevnum(svn_revnum_t *revnum
return SVN_NO_ERROR;
}
-void SVNAdmin::verify(const char *path, Outputer &messageOut,
+void SVNAdmin::verify(const char *path, OutputStream &messageOut,
Revision &revisionStart, Revision &revisionEnd)
{
SVN::Pool requestPool;
Modified: subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.h
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.h?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.h (original)
+++ subversion/trunk/subversion/bindings/javahl/native/SVNAdmin.h Fri May 28
03:17:27 2010
@@ -31,7 +31,7 @@
#include "svn_repos.h"
#include "SVNBase.h"
#include "Revision.h"
-#include "Outputer.h"
+#include "OutputStream.h"
#include "Inputer.h"
#include "MessageReceiver.h"
#include "StringArray.h"
@@ -41,7 +41,7 @@ class SVNAdmin : public SVNBase
public:
void rmlocks(const char *path, StringArray &locks);
jobject lslocks(const char *path);
- void verify(const char *path, Outputer &messageOut,
+ void verify(const char *path, OutputStream &messageOut,
Revision &revisionStart, Revision &revisionEnd);
void setRevProp(const char *path, Revision &revision,
const char *propName, const char *propValue,
@@ -50,14 +50,14 @@ class SVNAdmin : public SVNBase
void rmtxns(const char *path, StringArray &transactions);
jlong recover(const char *path);
void lstxns(const char *path, MessageReceiver &messageReceiver);
- void load(const char *path, Inputer &dataIn, Outputer &messageOut,
+ void load(const char *path, Inputer &dataIn, OutputStream &messageOut,
bool ignoreUUID, bool forceUUID, bool usePreCommitHook,
bool usePostCommitHook, const char *relativePath);
void listUnusedDBLogs(const char *path,
MessageReceiver &messageReceiver);
void listDBLogs(const char *path, MessageReceiver &messageReceiver);
void hotcopy(const char *path, const char *targetPath, bool cleanLogs);
- void dump(const char *path, Outputer &dataOut, Outputer &messageOut,
+ void dump(const char *path, OutputStream &dataOut, OutputStream &messageOut,
Revision &revsionStart, Revision &RevisionEnd,
bool incremental, bool useDeltas);
void deltify(const char *path, Revision &start, Revision &end);
Modified:
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNAdmin.cpp
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNAdmin.cpp?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNAdmin.cpp
(original)
+++
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNAdmin.cpp
Fri May 28 03:17:27 2010
@@ -32,7 +32,7 @@
#include "SVNAdmin.h"
#include "Revision.h"
#include "Inputer.h"
-#include "Outputer.h"
+#include "OutputStream.h"
#include "MessageReceiver.h"
#include "svn_props.h"
#include "svn_private_config.h"
@@ -145,11 +145,11 @@ Java_org_apache_subversion_javahl_SVNAdm
if (JNIUtil::isExceptionThrown())
return;
- Outputer dataOut(jdataout);
+ OutputStream dataOut(jdataout);
if (JNIUtil::isExceptionThrown())
return;
- Outputer messageOut(jmessageout);
+ OutputStream messageOut(jmessageout);
if (JNIUtil::isExceptionThrown())
return;
@@ -258,7 +258,7 @@ Java_org_apache_subversion_javahl_SVNAdm
return;
- Outputer outputMsg(joutputMsg);
+ OutputStream outputMsg(joutputMsg);
if (JNIUtil::isExceptionThrown())
return;
@@ -388,7 +388,7 @@ Java_org_apache_subversion_javahl_SVNAdm
if (JNIUtil::isExceptionThrown())
return;
- Outputer messageOut(jmessageout);
+ OutputStream messageOut(jmessageout);
if (JNIUtil::isExceptionThrown())
return;
Modified:
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
(original)
+++
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
Fri May 28 03:17:27 2010
@@ -53,7 +53,6 @@
#include "svn_version.h"
#include "svn_private_config.h"
#include "version.h"
-#include "Outputer.h"
#include <iostream>
JNIEXPORT jlong JNICALL
Modified:
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNAdmin.java
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNAdmin.java?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNAdmin.java
(original)
+++
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNAdmin.java
Fri May 28 03:17:27 2010
@@ -24,6 +24,7 @@
package org.apache.subversion.javahl;
import java.util.Set;
+import java.io.OutputStream;
import org.apache.subversion.javahl.SVNAdmin.MessageReceiver;
@@ -84,8 +85,9 @@ public interface ISVNAdmin {
* @throws ClientException throw in case of problem
* @since 1.5
*/
- public abstract void dump(String path, IOutput dataOut, IOutput
errorOut,
- Revision start, Revision end, boolean incremental,
boolean useDeltas)
+ public abstract void dump(String path, OutputStream dataOut,
+ OutputStream errorOut, Revision start, Revision end,
+ boolean incremental, boolean useDeltas)
throws ClientException;
/**
@@ -133,7 +135,7 @@ public interface ISVNAdmin {
* @since 1.5
*/
public abstract void load(String path, IInput dataInput,
- IOutput messageOutput, boolean ignoreUUID, boolean
forceUUID,
+ OutputStream messageOutput, boolean ignoreUUID, boolean
forceUUID,
boolean usePreCommitHook, boolean usePostCommitHook,
String relativePath) throws ClientException;
@@ -192,7 +194,7 @@ public interface ISVNAdmin {
* @param end the last revision
* @throws ClientException If an error occurred.
*/
- public abstract void verify(String path, IOutput messageOut,
+ public abstract void verify(String path, OutputStream messageOut,
Revision start, Revision end) throws ClientException;
/**
Modified:
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNAdmin.java
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNAdmin.java?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNAdmin.java
(original)
+++
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNAdmin.java
Fri May 28 03:17:27 2010
@@ -24,6 +24,7 @@
package org.apache.subversion.javahl;
import java.util.Set;
+import java.io.OutputStream;
/**
* This class offers the same commands as the svnadmin commandline
@@ -122,8 +123,8 @@ public class SVNAdmin implements ISVNAdm
* @throws ClientException throw in case of problem
* @since 1.5
*/
- public native void dump(String path, IOutput dataOut,
- IOutput errorOut, Revision start,
+ public native void dump(String path, OutputStream dataOut,
+ OutputStream errorOut, Revision start,
Revision end, boolean incremental,
boolean useDeltas)
throws ClientException;
@@ -185,7 +186,7 @@ public class SVNAdmin implements ISVNAdm
* @since 1.5
*/
public native void load(String path, IInput dataInput,
- IOutput messageOutput, boolean ignoreUUID,
+ OutputStream messageOutput, boolean ignoreUUID,
boolean forceUUID, boolean usePreCommitHook,
boolean usePostCommitHook, String relativePath)
throws ClientException;
@@ -247,7 +248,7 @@ public class SVNAdmin implements ISVNAdm
* @param end the last revision
* @throws ClientException If an error occurred.
*/
- public native void verify(String path, IOutput messageOut,
+ public native void verify(String path, OutputStream messageOut,
Revision start, Revision end)
throws ClientException;
Modified:
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/OutputInterface.java
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/OutputInterface.java?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/OutputInterface.java
(original)
+++
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/OutputInterface.java
Fri May 28 03:17:27 2010
@@ -23,10 +23,23 @@
package org.tigris.subversion.javahl;
+import java.io.IOException;
+
/**
* Interface to send data to subversion used by SVNAdmin.load.
*/
public interface OutputInterface
- extends org.apache.subversion.javahl.IOutput
{
+ /**
+ * write the bytes in data to java
+ * @param data the data to be writtem
+ * @throws IOException throw in case of problems.
+ */
+ public int write(byte[] data) throws IOException;
+
+ /**
+ * close the output
+ * @throws IOException throw in case of problems.
+ */
+ public void close() throws IOException;
}
Modified:
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNAdmin.java
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNAdmin.java?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNAdmin.java
(original)
+++
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNAdmin.java
Fri May 28 03:17:27 2010
@@ -24,6 +24,8 @@
package org.tigris.subversion.javahl;
import java.util.Set;
+import java.io.OutputStream;
+import java.io.IOException;
/**
* This class offers the same commands as the svnadmin commandline
@@ -164,7 +166,8 @@ public class SVNAdmin
{
try
{
- aSVNAdmin.dump(path, dataOut, errorOut,
+ aSVNAdmin.dump(path, new OutputWrapper(dataOut),
+ new OutputWrapper(errorOut),
start == null ? null : start.toApache(),
end == null ? null : end.toApache(),
incremental, useDeltas);
@@ -286,9 +289,9 @@ public class SVNAdmin
{
try
{
- aSVNAdmin.load(path, dataInput, messageOutput, ignoreUUID,
- forceUUID, usePreCommitHook, usePostCommitHook,
- relativePath);
+ aSVNAdmin.load(path, dataInput, new OutputWrapper(messageOutput),
+ ignoreUUID, forceUUID, usePreCommitHook,
+ usePostCommitHook, relativePath);
}
catch (org.apache.subversion.javahl.ClientException ex)
{
@@ -429,7 +432,7 @@ public class SVNAdmin
{
try
{
- aSVNAdmin.verify(path, messageOut,
+ aSVNAdmin.verify(path, new OutputWrapper(messageOut),
start == null ? null : start.toApache(),
end == null ? null : end.toApache());
}
@@ -488,4 +491,29 @@ public class SVNAdmin
throw new ClientException(ex);
}
}
+
+ private class OutputWrapper extends OutputStream
+ {
+ private OutputInterface outputer;
+
+ OutputWrapper(OutputInterface outputer)
+ {
+ this.outputer = outputer;
+ }
+
+ public void write(int b) throws IOException
+ {
+ outputer.write(new byte[]{ (byte) ( b & 0xFF) });
+ }
+
+ public void write(byte[] b) throws IOException
+ {
+ outputer.write(b);
+ }
+
+ public void close() throws IOException
+ {
+ outputer.close();
+ }
+ }
}
Modified:
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNAdminTests.java
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNAdminTests.java?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNAdminTests.java
(original)
+++
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNAdminTests.java
Fri May 28 03:17:27 2010
@@ -25,6 +25,7 @@ package org.apache.subversion.javahl;
import org.apache.subversion.javahl.callback.*;
import java.io.File;
+import java.io.OutputStream;
import java.io.IOException;
import java.util.Map;
@@ -98,7 +99,7 @@ public class SVNAdminTests extends SVNTe
"subversion/bindings/javahl");
File dump = new File(testSrcdir, "tests/data/issue2979.dump");
IInput input = new FileInputer(dump);
- IOutput loadLog = new IgnoreOutputer();
+ OutputStream loadLog = new IgnoreOutputer();
admin.load(thisTest.getRepositoryPath(),
input, loadLog, true, true, false, false, null);
// should have two revs after the load
Modified:
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java?rev=949082&r1=949081&r2=949082&view=diff
==============================================================================
---
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java
(original)
+++
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java
Fri May 28 03:17:27 2010
@@ -27,6 +27,7 @@ import org.apache.subversion.javahl.call
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
+import java.io.OutputStream;
import java.io.IOException;
import java.util.Set;
import java.util.HashSet;
@@ -238,8 +239,9 @@ class SVNTests extends TestCase
NodeKind.none, CommitItemStateFlags.Add);
client.doImport(greekFiles.getAbsolutePath(), makeReposUrl(greekRepos),
null, Depth.infinity, false, false, null);
- admin.dump(greekRepos.getAbsolutePath(), new FileOutputer(greekDump),
- new IgnoreOutputer(), null, null, false, false);
+ admin.dump(greekRepos.getAbsolutePath(),
+ new FileOutputStream(greekDump), new IgnoreOutputer(),
+ null, null, false, false);
}
/**
@@ -427,67 +429,14 @@ class SVNTests extends TestCase
}
/**
- * internal class which implements the OutputInterface to write the data
- * to a file.
+ * internal class extends OutputStream, but ignores the data
*/
- public class FileOutputer implements IOutput
+ public class IgnoreOutputer extends OutputStream
{
- /**
- * the output file stream
- */
- FileOutputStream myStream;
- /**
- * create new object
- * @param outputName the file to write the data to
- * @throws IOException
- */
- public FileOutputer(File outputName) throws IOException
- {
- myStream = new FileOutputStream(outputName);
- }
-
- /**
- * write the bytes in data to java
- * @param data the data to be writtem
- * @throws IOException throw in case of problems.
- */
- public int write(byte[] data) throws IOException
- {
- myStream.write(data);
- return data.length;
- }
-
- /**
- * close the output
- * @throws IOException throw in case of problems.
- */
- public void close() throws IOException
- {
- myStream.close();
- }
- }
-
- /**
- * internal class implements the OutputInterface, but ignores the data
- */
- public class IgnoreOutputer implements IOutput
- {
- /**
- * write the bytes in data to java
- * @param data the data to be writtem
- * @throws IOException throw in case of problems.
- */
- public int write(byte[] data) throws IOException
- {
- return data.length;
- }
-
- /**
- * close the output
- * @throws IOException throw in case of problems.
- */
- public void close() throws IOException
+ public void write(int b) throws IOException
{
+ /* Just do nothing. */
+ return;
}
}