You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by ve...@apache.org on 2009/04/05 10:58:21 UTC
svn commit: r762059 - in /synapse/trunk/java/modules/transports/src:
main/java/org/apache/synapse/transport/vfs/
test/java/org/apache/synapse/transport/vfs/
Author: veithen
Date: Sun Apr 5 08:58:21 2009
New Revision: 762059
URL: http://svn.apache.org/viewvc?rev=762059&view=rev
Log:
* Fixed a problem in VFSTransportListener: the code didn't call onPollCompletion.
* Made the tests more robust: to avoid reading a partial response, the request-response test client now waits for the deletion of the request file.
Modified:
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSClient.java
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSRequestResponseClient.java
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTestUtils.java
Modified: synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java?rev=762059&r1=762058&r2=762059&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java (original)
+++ synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java Sun Apr 5 08:58:21 2009
@@ -266,7 +266,7 @@
log.debug("Unable to access or read file or directory : " + fileURI);
}
}
-
+ onPollCompletion(entry);
} catch (FileSystemException e) {
processFailure("Error checking for existence and readability : " + fileURI, e, entry);
}
Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSClient.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSClient.java?rev=762059&r1=762058&r2=762059&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSClient.java (original)
+++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSClient.java Sun Apr 5 08:58:21 2009
@@ -45,6 +45,10 @@
requestFile = channel.getRequestFile();
}
+ public File getRequestFile() {
+ return requestFile;
+ }
+
public ContentType getContentType(ClientOptions options, ContentType contentType) {
return contentType;
}
Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSRequestResponseClient.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSRequestResponseClient.java?rev=762059&r1=762058&r2=762059&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSRequestResponseClient.java (original)
+++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSRequestResponseClient.java Sun Apr 5 08:58:21 2009
@@ -39,7 +39,12 @@
public IncomingMessage<byte[]> sendMessage(ClientOptions options, ContentType contentType, byte[] message) throws Exception {
send(message);
- byte[] reply = VFSTestUtils.waitForFile(replyFile, 5000);
- return reply == null ? null : new IncomingMessage<byte[]>(contentType, reply);
+ File requestFile = getRequestFile();
+ if (VFSTestUtils.waitForFileDeletion(requestFile, 5000)) {
+ return new IncomingMessage<byte[]>(contentType, VFSTestUtils.readFile(replyFile));
+ } else {
+ requestFile.delete();
+ return null;
+ }
}
}
Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTestUtils.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTestUtils.java?rev=762059&r1=762058&r2=762059&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTestUtils.java (original)
+++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTestUtils.java Sun Apr 5 08:58:21 2009
@@ -30,16 +30,31 @@
public class VFSTestUtils {
private VFSTestUtils() {}
+ public static boolean waitForFileDeletion(File file, int timeout) throws InterruptedException {
+ long time = System.currentTimeMillis();
+ while (System.currentTimeMillis() < time + timeout) {
+ if (!file.exists()) {
+ return true;
+ }
+ Thread.sleep(100);
+ }
+ return false;
+ }
+
+ public static byte[] readFile(File file) throws IOException {
+ InputStream in = new FileInputStream(file);
+ try {
+ return IOUtils.toByteArray(in);
+ } finally {
+ in.close();
+ }
+ }
+
public static byte[] waitForFile(File file, int timeout) throws IOException, InterruptedException {
long time = System.currentTimeMillis();
while (System.currentTimeMillis() < time + timeout) {
if (file.exists()) {
- InputStream in = new FileInputStream(file);
- try {
- return IOUtils.toByteArray(in);
- } finally {
- in.close();
- }
+ return readFile(file);
}
Thread.sleep(100);
}