summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Rudyy <orudyy@apache.org>2015-02-09 16:31:07 +0000
committerAlex Rudyy <orudyy@apache.org>2015-02-09 16:31:07 +0000
commitee17dbccdd6cf81d622efede3fa36230b70bdaa7 (patch)
tree8d8fa6693394ac357a7405db1f021f6fb7b30422
parentea2c9f4581ddec8fda51fc9d81146e22ef791921 (diff)
downloadqpid-python-ee17dbccdd6cf81d622efede3fa36230b70bdaa7.tar.gz
QPID-6364: Set Keystore/Truststore derived attribute 'path' to non-data URL. Change the upgrader to upgrade only FileKeyStore and FileTrustStore
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1658453 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileKeyStoreImpl.java9
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java9
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java17
3 files changed, 18 insertions, 17 deletions
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileKeyStoreImpl.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileKeyStoreImpl.java
index 7bed1bcd7d..aa5f55dfb4 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileKeyStoreImpl.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileKeyStoreImpl.java
@@ -312,14 +312,13 @@ public class FileKeyStoreImpl extends AbstractConfiguredObject<FileKeyStoreImpl>
@SuppressWarnings(value = "unused")
private void postSetStoreUrl()
{
- try
+ if (_storeUrl != null && !_storeUrl.startsWith("data:"))
{
- new URL(_storeUrl);
- _path = null;
+ _path = _storeUrl;
}
- catch (MalformedURLException e)
+ else
{
- _path = _storeUrl;
+ _path = null;
}
}
}
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java
index 78f9a5184b..fb161fef4e 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/FileTrustStoreImpl.java
@@ -338,14 +338,13 @@ public class FileTrustStoreImpl extends AbstractConfiguredObject<FileTrustStoreI
@SuppressWarnings(value = "unused")
private void postSetStoreUrl()
{
- try
+ if (_storeUrl != null && !_storeUrl.startsWith("data:"))
{
- new URL(_storeUrl);
- _path = null;
+ _path = _storeUrl;
}
- catch (MalformedURLException e)
+ else
{
- _path = _storeUrl;
+ _path = null;
}
}
}
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java
index 4da9c898f2..69d94a6710 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java
@@ -247,23 +247,26 @@ public class BrokerStoreUpgraderAndRecoverer
}
else if("KeyStore".equals(record.getType()))
{
- record = upgradeKeyStore(record);
+ record = upgradeKeyStoreRecordIfTypeTheSame(record, "FileKeyStore");
}
else if("TrustStore".equals(record.getType()))
{
- record = upgradeKeyStore(record);
+ record = upgradeKeyStoreRecordIfTypeTheSame(record, "FileTrustStore");
}
getNextUpgrader().configuredObject(record);
}
- private ConfiguredObjectRecord upgradeKeyStore(ConfiguredObjectRecord record)
+ private ConfiguredObjectRecord upgradeKeyStoreRecordIfTypeTheSame(ConfiguredObjectRecord record, String expectedType)
{
Map<String, Object> attributes = new HashMap<>(record.getAttributes());
- Object path = attributes.remove("path");
- attributes.put("storeUrl", path);
- record = new ConfiguredObjectRecordImpl(record.getId(), record.getType(), attributes, record.getParents());
- getUpdateMap().put(record.getId(), record);
+ if (expectedType.equals(attributes.get("type")))
+ {
+ Object path = attributes.remove("path");
+ attributes.put("storeUrl", path);
+ record = new ConfiguredObjectRecordImpl(record.getId(), record.getType(), attributes, record.getParents());
+ getUpdateMap().put(record.getId(), record);
+ }
return record;
}