You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2015/02/27 15:38:34 UTC
svn commit: r1662687 - in /qpid/branches/0.32/qpid: ./ java/
java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/
java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/
java/broker-core/src/main/java/org/ap...
Author: rgodfrey
Date: Fri Feb 27 14:38:33 2015
New Revision: 1662687
URL: http://svn.apache.org/r1662687
Log:
QPID-6418 : Merged 1662473,1662489 onto 0.32 branch
Modified:
qpid/branches/0.32/qpid/ (props changed)
qpid/branches/0.32/qpid/java/ (props changed)
qpid/branches/0.32/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNode.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListener.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectTypeRegistry.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/RemoteReplicationNode.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHostNode.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProvider.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/Base64MD5PasswordDatabaseAuthenticationManager.java
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PlainPasswordDatabaseAuthenticationManager.java
qpid/branches/0.32/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListenerTest.java
Propchange: qpid/branches/0.32/qpid/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Feb 27 14:38:33 2015
@@ -6,4 +6,4 @@
/qpid/branches/mcpierce-QPID-4719/qpid:1477004-1477093
/qpid/branches/qpid-2935/qpid:1061302-1072333
/qpid/branches/qpid-3346/qpid:1144319-1179855
-/qpid/trunk/qpid:1661079,1661142,1661162,1661165-1661166,1661207,1661212,1661364,1661368,1661373,1661530-1661531,1661693,1661741,1661929,1662051
+/qpid/trunk/qpid:1661079,1661142,1661162,1661165-1661166,1661207,1661212,1661364,1661368,1661373,1661530-1661531,1661693,1661741,1661929,1662051,1662473,1662489
Propchange: qpid/branches/0.32/qpid/java/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Feb 27 14:38:33 2015
@@ -9,4 +9,4 @@
/qpid/branches/java-network-refactor/qpid/java:805429-821809
/qpid/branches/qpid-2935/qpid/java:1061302-1072333
/qpid/trunk/qpid:796646-796653
-/qpid/trunk/qpid/java:1661079,1661142,1661162,1661165-1661166,1661207,1661212,1661364,1661368,1661373,1661530-1661531,1661693,1661741,1661929,1662051
+/qpid/trunk/qpid/java:1661079,1661142,1661162,1661165-1661166,1661207,1661212,1661364,1661368,1661373,1661530-1661531,1661693,1661741,1661929,1662051,1662473,1662489
Modified: qpid/branches/0.32/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNode.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNode.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNode.java (original)
+++ qpid/branches/0.32/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNode.java Fri Feb 27 14:38:33 2015
@@ -25,7 +25,7 @@ import org.apache.qpid.server.model.Mana
import org.apache.qpid.server.model.ManagedObject;
import org.apache.qpid.server.model.RemoteReplicationNode;
-@ManagedObject(category=false, managesChildren=false, creatable=false)
+@ManagedObject(category=false, creatable=false)
public interface BDBHARemoteReplicationNode<X extends BDBHARemoteReplicationNode<X>> extends RemoteReplicationNode<X>
{
String GROUP_NAME = "groupName";
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListener.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListener.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListener.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListener.java Fri Feb 27 14:38:33 2015
@@ -25,7 +25,6 @@ import java.util.Collection;
import org.apache.qpid.server.model.ConfigurationChangeListener;
import org.apache.qpid.server.model.ConfiguredObject;
import org.apache.qpid.server.model.State;
-import org.apache.qpid.server.model.VirtualHostNode;
import org.apache.qpid.server.store.DurableConfigurationStore;
public class StoreConfigurationChangeListener implements ConfigurationChangeListener
@@ -51,8 +50,7 @@ public class StoreConfigurationChangeLis
@Override
public void childAdded(ConfiguredObject<?> object, ConfiguredObject<?> child)
{
- // exclude VirtualHostNode children from storing in broker store
- if (!(object instanceof VirtualHostNode))
+ if (!object.managesChildStorage())
{
child.addChangeListener(this);
_store.update(true,child.asObjectRecord());
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java Fri Feb 27 14:38:33 2015
@@ -120,8 +120,11 @@ public abstract class AbstractConfigured
private final TaskExecutor _taskExecutor;
private final Class<? extends ConfiguredObject> _category;
+ private final Class<? extends ConfiguredObject> _typeClass;
private final Class<? extends ConfiguredObject> _bestFitInterface;
private final Model _model;
+ private final boolean _managesChildStorage;
+
@ManagedAttributeField
private long _createdTime;
@@ -204,6 +207,8 @@ public abstract class AbstractConfigured
_model = model;
_category = ConfiguredObjectTypeRegistry.getCategory(getClass());
+ Class<? extends ConfiguredObject> typeClass = model.getTypeRegistry().getTypeClass(getClass());
+ _typeClass = typeClass == null ? _category : typeClass;
_attributeTypes = model.getTypeRegistry().getAttributeTypes(getClass());
_automatedFields = model.getTypeRegistry().getAutomatedFields(getClass());
@@ -240,6 +245,7 @@ public abstract class AbstractConfigured
}
_type = ConfiguredObjectTypeRegistry.getType(getClass());
+ _managesChildStorage = managesChildren(_category) || managesChildren(_typeClass);
_bestFitInterface = calculateBestFitInterface();
if(attributes.get(TYPE) != null && !_type.equals(attributes.get(TYPE)))
@@ -313,6 +319,11 @@ public abstract class AbstractConfigured
}
}
+ private boolean managesChildren(final Class<? extends ConfiguredObject> clazz)
+ {
+ return clazz.getAnnotation(ManagedObject.class).managesChildren();
+ }
+
private Class<? extends ConfiguredObject> calculateBestFitInterface()
{
Set<Class<? extends ConfiguredObject>> candidates = new HashSet<Class<? extends ConfiguredObject>>();
@@ -973,11 +984,24 @@ public abstract class AbstractConfigured
return _model;
}
+ @Override
public Class<? extends ConfiguredObject> getCategoryClass()
{
return _category;
}
+ @Override
+ public Class<? extends ConfiguredObject> getTypeClass()
+ {
+ return _typeClass;
+ }
+
+ @Override
+ public boolean managesChildStorage()
+ {
+ return _managesChildStorage;
+ }
+
public Map<String,String> getContext()
{
return _context == null ? Collections.<String,String>emptyMap() : Collections.unmodifiableMap(_context);
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java Fri Feb 27 14:38:33 2015
@@ -238,6 +238,9 @@ public interface ConfiguredObject<X exte
void setAttributes(Map<String, Object> attributes) throws IllegalStateException, AccessControlException, IllegalArgumentException;
Class<? extends ConfiguredObject> getCategoryClass();
+ Class<? extends ConfiguredObject> getTypeClass();
+
+ boolean managesChildStorage();
<C extends ConfiguredObject<C>> C findConfiguredObject(Class<C> clazz, String name);
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectTypeRegistry.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectTypeRegistry.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectTypeRegistry.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectTypeRegistry.java Fri Feb 27 14:38:33 2015
@@ -385,7 +385,7 @@ public class ConfiguredObjectTypeRegistr
return null;
}
- private Class<? extends ConfiguredObject> getTypeClass(final Class<? extends ConfiguredObject> clazz)
+ public Class<? extends ConfiguredObject> getTypeClass(final Class<? extends ConfiguredObject> clazz)
{
String typeName = getType(clazz);
Class<? extends ConfiguredObject> typeClass = null;
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/RemoteReplicationNode.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/RemoteReplicationNode.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/RemoteReplicationNode.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/RemoteReplicationNode.java Fri Feb 27 14:38:33 2015
@@ -20,9 +20,6 @@
*/
package org.apache.qpid.server.model;
-import org.apache.qpid.server.model.ConfiguredObject;
-import org.apache.qpid.server.model.ManagedObject;
-
@ManagedObject(category=true, managesChildren=false, creatable=false)
public interface RemoteReplicationNode<X extends RemoteReplicationNode<X>> extends ConfiguredObject<X>
{
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java Fri Feb 27 14:38:33 2015
@@ -30,7 +30,7 @@ import org.apache.qpid.server.configurat
import org.apache.qpid.server.message.MessageInstance;
import org.apache.qpid.server.store.MessageStore;
-@ManagedObject( managesChildren = true, defaultType = "ProvidedStore")
+@ManagedObject( defaultType = "ProvidedStore")
public interface VirtualHost<X extends VirtualHost<X, Q, E>, Q extends Queue<?>, E extends Exchange<?> > extends ConfiguredObject<X>
{
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHostNode.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHostNode.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHostNode.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHostNode.java Fri Feb 27 14:38:33 2015
@@ -24,7 +24,7 @@ import java.util.Collection;
import org.apache.qpid.server.store.DurableConfigurationStore;
-@ManagedObject(category=true, managesChildren=false)
+@ManagedObject(category=true, managesChildren=true)
public interface VirtualHostNode<X extends VirtualHostNode<X>> extends ConfiguredObject<X>
{
String QPID_INITIAL_CONFIG_VIRTUALHOST_CONFIG_VAR = "qpid.initial_config_virtualhost_config";
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProvider.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProvider.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProvider.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/FileBasedGroupProvider.java Fri Feb 27 14:38:33 2015
@@ -25,7 +25,7 @@ import org.apache.qpid.server.model.Grou
import org.apache.qpid.server.model.ManagedAttribute;
import org.apache.qpid.server.model.ManagedObject;
-@ManagedObject( category = false, type = "GroupFile" )
+@ManagedObject( category = false, type = "GroupFile", managesChildren = true )
public interface FileBasedGroupProvider<X extends FileBasedGroupProvider<X>> extends GroupProvider<X>, GroupManagingGroupProvider
{
String PATH="path";
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/Base64MD5PasswordDatabaseAuthenticationManager.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/Base64MD5PasswordDatabaseAuthenticationManager.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/Base64MD5PasswordDatabaseAuthenticationManager.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/Base64MD5PasswordDatabaseAuthenticationManager.java Fri Feb 27 14:38:33 2015
@@ -28,7 +28,7 @@ import org.apache.qpid.server.model.Mana
import org.apache.qpid.server.security.auth.database.Base64MD5PasswordFilePrincipalDatabase;
import org.apache.qpid.server.security.auth.database.PrincipalDatabase;
-@ManagedObject( category = false, type = "Base64MD5PasswordFile" )
+@ManagedObject( category = false, managesChildren = true, type = "Base64MD5PasswordFile" )
public class Base64MD5PasswordDatabaseAuthenticationManager
extends PrincipalDatabaseAuthenticationManager<Base64MD5PasswordDatabaseAuthenticationManager>
{
Modified: qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PlainPasswordDatabaseAuthenticationManager.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PlainPasswordDatabaseAuthenticationManager.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PlainPasswordDatabaseAuthenticationManager.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PlainPasswordDatabaseAuthenticationManager.java Fri Feb 27 14:38:33 2015
@@ -28,7 +28,7 @@ import org.apache.qpid.server.model.Mana
import org.apache.qpid.server.security.auth.database.PlainPasswordFilePrincipalDatabase;
import org.apache.qpid.server.security.auth.database.PrincipalDatabase;
-@ManagedObject( category = false, type = "PlainPasswordFile" )
+@ManagedObject( category = false, managesChildren = true, type = "PlainPasswordFile" )
public class PlainPasswordDatabaseAuthenticationManager extends PrincipalDatabaseAuthenticationManager<PlainPasswordDatabaseAuthenticationManager>
{
public static final String PROVIDER_TYPE = "PlainPasswordFile";
Modified: qpid/branches/0.32/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListenerTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListenerTest.java?rev=1662687&r1=1662686&r2=1662687&view=diff
==============================================================================
--- qpid/branches/0.32/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListenerTest.java (original)
+++ qpid/branches/0.32/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/StoreConfigurationChangeListenerTest.java Fri Feb 27 14:38:33 2015
@@ -87,11 +87,12 @@ public class StoreConfigurationChangeLis
verify(_store).update(eq(false),any(ConfiguredObjectRecord.class));
}
- public void testChildAddedForVirtualHostNode()
+ public void testChildAddedWhereParentManagesChildStorage()
{
notifyBrokerStarted();
VirtualHostNode<?> object = mock(VirtualHostNode.class);
+ when(object.managesChildStorage()).thenReturn(true);
VirtualHost<?,?,?> virtualHost = mock(VirtualHost.class);
_listener.childAdded(object, virtualHost);
verifyNoMoreInteractions(_store);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org