Repository: camel
Updated Branches:
  refs/heads/camel-2.16.x e791fc277 -> 8ad367357


[CAMEL-9256] Paho file persistence store should be configurable


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/8ad36735
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/8ad36735
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/8ad36735

Branch: refs/heads/camel-2.16.x
Commit: 8ad3673577846167376a6fe18d7fec853ec4e703
Parents: e791fc2
Author: Henryk Konsek <hekon...@gmail.com>
Authored: Mon Oct 26 12:01:37 2015 +0100
Committer: Henryk Konsek <hekon...@gmail.com>
Committed: Mon Oct 26 12:01:37 2015 +0100

----------------------------------------------------------------------
 .../camel/component/paho/PahoEndpoint.java      | 23 +++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/8ad36735/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
----------------------------------------------------------------------
diff --git 
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
 
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
index 2b38b2e..08b55f4 100644
--- 
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
+++ 
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
@@ -64,6 +64,8 @@ public class PahoEndpoint extends DefaultEndpoint {
     private int qos = DEFAULT_QOS;
     @UriParam(defaultValue = "MEMORY")
     private PahoPersistence persistence = MEMORY;
+    @UriParam(description = "Base directory used by file persistence.", 
defaultValue = "Current directory")
+    private String filePersistenceDirectory;
 
     // Collaboration members
     @UriParam
@@ -116,7 +118,15 @@ public class PahoEndpoint extends DefaultEndpoint {
     // Resolvers
 
     protected MqttClientPersistence resolvePersistence() {
-        return persistence == MEMORY ? new MemoryPersistence() : new 
MqttDefaultFilePersistence();
+        if (persistence == MEMORY) {
+            return new MemoryPersistence();
+        } else {
+            if (filePersistenceDirectory != null) {
+                return new 
MqttDefaultFilePersistence(filePersistenceDirectory);
+            } else {
+                return new MqttDefaultFilePersistence();
+            }
+        }
     }
 
     protected MqttConnectOptions resolveMqttConnectOptions() {
@@ -194,6 +204,17 @@ public class PahoEndpoint extends DefaultEndpoint {
         this.persistence = persistence;
     }
 
+    public String getFilePersistenceDirectory() {
+        return filePersistenceDirectory;
+    }
+
+    /**
+     * Base directory used by the file persistence provider.
+     */
+    public void setFilePersistenceDirectory(String filePersistenceDirectory) {
+        this.filePersistenceDirectory = filePersistenceDirectory;
+    }
+
     public MqttClient getClient() {
         return client;
     }

Reply via email to