|
From: <ha...@us...> - 2007-09-06 22:16:56
|
Revision: 1733
http://cogkit.svn.sourceforge.net/cogkit/?rev=1733&view=rev
Author: hategan
Date: 2007-09-06 15:16:54 -0700 (Thu, 06 Sep 2007)
Log Message:
-----------
honor cwd attribute, if specified
Modified Paths:
--------------
trunk/current/src/cog/modules/abstraction-common/src/org/globus/cog/abstraction/impl/file/TaskHandlerImpl.java
Modified: trunk/current/src/cog/modules/abstraction-common/src/org/globus/cog/abstraction/impl/file/TaskHandlerImpl.java
===================================================================
--- trunk/current/src/cog/modules/abstraction-common/src/org/globus/cog/abstraction/impl/file/TaskHandlerImpl.java 2007-09-06 22:15:49 UTC (rev 1732)
+++ trunk/current/src/cog/modules/abstraction-common/src/org/globus/cog/abstraction/impl/file/TaskHandlerImpl.java 2007-09-06 22:16:54 UTC (rev 1733)
@@ -275,7 +275,13 @@
Object output = null;
//FileOperationSpecification commands are lowercase
String operation = spec.getOperation().toLowerCase();
+ String cwd = null;
+ String taskCwd = (String) spec.getAttribute("cwd");
try {
+ if (taskCwd != null) {
+ cwd = fileResource.getCurrentDirectory();
+ fileResource.setCurrentDirectory(taskCwd);
+ }
if (operation.equals(FileOperationSpecification.LS)
&& spec.getArgumentSize() == 0) {
output = fileResource.list();
@@ -362,10 +368,14 @@
fileResource.changeMode(spec.getArgument(0), Integer.valueOf(
spec.getArgument(1)).intValue());
}
+ fileResource.setCurrentDirectory(cwd);
return output;
}
finally {
// System.err.println(operation + " - " + Thread.currentThread());
+ if (cwd != null) {
+ fileResource.setCurrentDirectory(cwd);
+ }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|