summaryrefslogtreecommitdiff
path: root/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java')
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java51
1 files changed, 16 insertions, 35 deletions
diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java
index 80196c395e..707cf8076d 100644
--- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java
+++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java
@@ -37,20 +37,21 @@ import org.apache.qpid.server.util.MapValueConverter;
public abstract class AbstractKeyStoreAdapter extends AbstractAdapter
{
+ public static final String DUMMY_PASSWORD_MASK = "********";
+ public static final String DEFAULT_KEYSTORE_TYPE = java.security.KeyStore.getDefaultType();
+
private String _name;
private String _password;
- protected AbstractKeyStoreAdapter(UUID id, Broker broker, Map<String, Object> attributes)
+ protected AbstractKeyStoreAdapter(UUID id, Broker broker, Map<String, Object> defaults,
+ Map<String, Object> attributes)
{
- super(id, broker.getTaskExecutor());
+ super(id, defaults, attributes, broker.getTaskExecutor());
addParent(Broker.class, broker);
+
_name = MapValueConverter.getStringAttribute(TrustStore.NAME, attributes);
_password = MapValueConverter.getStringAttribute(TrustStore.PASSWORD, attributes);
- setMandatoryAttribute(TrustStore.PATH, attributes);
- setOptionalAttribute(TrustStore.PEERS_ONLY, attributes);
- setOptionalAttribute(TrustStore.TYPE, attributes);
- setOptionalAttribute(TrustStore.KEY_MANAGER_FACTORY_ALGORITHM, attributes);
- setOptionalAttribute(TrustStore.DESCRIPTION, attributes);
+ MapValueConverter.assertMandatoryAttribute(KeyStore.PATH, attributes);
}
@Override
@@ -163,15 +164,16 @@ public abstract class AbstractKeyStoreAdapter extends AbstractAdapter
}
else if(KeyStore.PASSWORD.equals(name))
{
- return null; // for security reasons we don't expose the password
+ // For security reasons we don't expose the password
+ if (getPassword() != null)
+ {
+ return DUMMY_PASSWORD_MASK;
+ }
+
+ return null;
}
- return super.getAttribute(name);
- }
- @Override
- protected boolean setState(State currentState, State desiredState)
- {
- return false;
+ return super.getAttribute(name);
}
public String getPassword()
@@ -183,25 +185,4 @@ public abstract class AbstractKeyStoreAdapter extends AbstractAdapter
{
_password = password;
}
-
- private void setMandatoryAttribute(String name, Map<String, Object> attributeValues)
- {
- changeAttribute(name, null, MapValueConverter.getStringAttribute(name, attributeValues));
- }
-
- private void setOptionalAttribute(String name, Map<String, Object> attributeValues)
- {
- Object attrValue = attributeValues.get(name);
- if (attrValue != null)
- {
- if (attrValue instanceof Boolean)
- {
- changeAttribute(name, null, MapValueConverter.getBooleanAttribute(name, attributeValues));
- }
- else
- {
- changeAttribute(name, null, MapValueConverter.getStringAttribute(name, attributeValues));
- }
- }
- }
}