You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2016/02/17 09:51:39 UTC
[3/3] camel git commit: CAMEL-9607: chmod does not work for the File
producer whitout setting a charset. Thanks to Nicolas Mugnier for spotting
this.
CAMEL-9607: chmod does not work for the File producer whitout setting a charset. Thanks to Nicolas Mugnier for spotting this.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/41510874
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/41510874
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/41510874
Branch: refs/heads/camel-2.15.x
Commit: 41510874ae1dc95baccbf9b42bc6a4ba19a14ec1
Parents: b727189
Author: Claus Ibsen <da...@apache.org>
Authored: Wed Feb 17 09:18:24 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Feb 17 09:51:27 2016 +0100
----------------------------------------------------------------------
.../camel/component/file/FileOperations.java | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/41510874/camel-core/src/main/java/org/apache/camel/component/file/FileOperations.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/file/FileOperations.java b/camel-core/src/main/java/org/apache/camel/component/file/FileOperations.java
index 5bf82bb..cfb4d37 100644
--- a/camel-core/src/main/java/org/apache/camel/component/file/FileOperations.java
+++ b/camel-core/src/main/java/org/apache/camel/component/file/FileOperations.java
@@ -242,6 +242,14 @@ public class FileOperations implements GenericFileOperations<File> {
if (renamed) {
// try to keep last modified timestamp if configured to do so
keepLastModified(exchange, file);
+ // set permissions if the chmod option was set
+ if (ObjectHelper.isNotEmpty(endpoint.getChmod())) {
+ Set<PosixFilePermission> permissions = endpoint.getPermissions();
+ if (!permissions.isEmpty()) {
+ Files.setPosixFilePermissions(file.toPath(), permissions);
+ LOG.trace("Setting chmod: {} on file: {} ", PosixFilePermissions.toString(permissions), file);
+ }
+ }
// clear header as we have renamed the file
exchange.getIn().setHeader(Exchange.FILE_LOCAL_WORK_PATH, null);
// return as the operation is complete, we just renamed the local work file
@@ -253,6 +261,14 @@ public class FileOperations implements GenericFileOperations<File> {
writeFileByFile(source, file);
// try to keep last modified timestamp if configured to do so
keepLastModified(exchange, file);
+ // set permissions if the chmod option was set
+ if (ObjectHelper.isNotEmpty(endpoint.getChmod())) {
+ Set<PosixFilePermission> permissions = endpoint.getPermissions();
+ if (!permissions.isEmpty()) {
+ Files.setPosixFilePermissions(file.toPath(), permissions);
+ LOG.trace("Setting chmod: {} on file: {} ", PosixFilePermissions.toString(permissions), file);
+ }
+ }
return true;
}
}
@@ -273,9 +289,9 @@ public class FileOperations implements GenericFileOperations<File> {
InputStream in = exchange.getIn().getMandatoryBody(InputStream.class);
writeFileByStream(in, file);
}
+
// try to keep last modified timestamp if configured to do so
keepLastModified(exchange, file);
-
// set permissions if the chmod option was set
if (ObjectHelper.isNotEmpty(endpoint.getChmod())) {
Set<PosixFilePermission> permissions = endpoint.getPermissions();