Repository: qpid-jms Updated Branches: refs/heads/master dd8a0adf4 -> 4a6bbc4ee
return any unused properties to the caller Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/05da58a0 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/05da58a0 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/05da58a0 Branch: refs/heads/master Commit: 05da58a0a50fb2bbea857333949936327bdc79c3 Parents: dd8a0ad Author: Robert Gemmell <[email protected]> Authored: Mon Feb 2 11:33:26 2015 +0000 Committer: Robert Gemmell <[email protected]> Committed: Mon Feb 2 11:33:26 2015 +0000 ---------------------------------------------------------------------- .../main/java/org/apache/qpid/jms/JmsConnectionFactory.java | 4 ++-- .../src/main/java/org/apache/qpid/jms/JmsDestination.java | 8 +++++++- .../src/main/java/org/apache/qpid/jms/jndi/JNDIStorable.java | 8 +++++--- 3 files changed, 14 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/05da58a0/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java index 21c3eaf..e196fbd 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java @@ -106,7 +106,7 @@ public class JmsConnectionFactory extends JNDIStorable implements ConnectionFact * @param map */ @Override - protected void buildFromProperties(Map<String, String> map) { + protected Map<String, String> buildFromProperties(Map<String, String> map) { // Apply the remoteURI in a consistent order before // any other properties, since as it may contain // some options within it. @@ -115,7 +115,7 @@ public class JmsConnectionFactory extends JNDIStorable implements ConnectionFact setRemoteURI(remoteURI); } - PropertyUtil.setProperties(this, map); + return PropertyUtil.setProperties(this, map); } /** http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/05da58a0/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsDestination.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsDestination.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsDestination.java index 0ebc204..0402bd7 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsDestination.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsDestination.java @@ -20,6 +20,7 @@ import java.io.Externalizable; import java.io.IOException; import java.io.ObjectInput; import java.io.ObjectOutput; +import java.util.HashMap; import java.util.Map; import org.apache.qpid.jms.jndi.JNDIStorable; @@ -83,8 +84,13 @@ public abstract class JmsDestination extends JNDIStorable implements Externaliza * @param props */ @Override - protected void buildFromProperties(Map<String, String> props) { + protected Map<String, String> buildFromProperties(Map<String, String> props) { setName(getProperty(props, NAME_PROP, "")); + + Map<String, String> unused = new HashMap<String,String>(props); + unused.remove(NAME_PROP); + + return unused; } /** http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/05da58a0/qpid-jms-client/src/main/java/org/apache/qpid/jms/jndi/JNDIStorable.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/jndi/JNDIStorable.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/jndi/JNDIStorable.java index 866f971..d17c1bc 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/jndi/JNDIStorable.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/jndi/JNDIStorable.java @@ -38,8 +38,9 @@ public abstract class JNDIStorable implements Referenceable, Externalizable { * Set the properties that will represent the instance in JNDI * * @param props + * @return a new map containing any unused properties, or an empty map if they were all used. */ - protected abstract void buildFromProperties(Map<String, String> props); + protected abstract Map<String, String> buildFromProperties(Map<String, String> props); /** * Initialize the instance from properties stored in JNDI @@ -52,9 +53,10 @@ public abstract class JNDIStorable implements Referenceable, Externalizable { * set the properties for this instance as retrieved from JNDI * * @param props + * @return a new map containing any unused properties, or an empty map if they were all used. */ - public synchronized void setProperties(Map<String, String> props) { - buildFromProperties(props); + public synchronized Map<String, String> setProperties(Map<String, String> props) { + return buildFromProperties(props); } /** --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
