[exo-jcr-commits] exo-jcr SVN: r3309 - kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition and 2 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Thu Oct 21 05:40:09 EDT 2010
Author: nfilotto
Date: 2010-10-21 05:40:08 -0400 (Thu, 21 Oct 2010)
New Revision: 3309
Modified:
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/kernel/container-configuration.xml
kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerConfig.java
kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinition.java
kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionChangePlugin.java
kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionDisablePlugin.java
kernel/trunk/exo.kernel.container/src/test/java/org/exoplatform/container/definition/TestPortalContainerConfig.java
kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-both-settings-with-default-portal-def.xml
kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-default-portal-def.xml
kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-empty-portal-def2.xml
kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml
kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def.xml
kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-no-default-values-but-with-portal-defs.xml
Log:
EXOJCR-1011: Now most of the value of the parameters can be set thanks to variables defined in the file loaded by the PropertyConfiguration which is by default configuration.properties in GateIn. Refer to the doc for more details
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/kernel/container-configuration.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/kernel/container-configuration.xml 2010-10-21 09:33:22 UTC (rev 3308)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/kernel/container-configuration.xml 2010-10-21 09:40:08 UTC (rev 3309)
@@ -454,28 +454,28 @@
<tgroup cols="2">
<tbody>
<row>
- <entry>default.portal.container</entry>
+ <entry>default.portal.container (*)</entry>
<entry>The name of the default portal container. This field is
optional.</entry>
</row>
<row>
- <entry>default.rest.context</entry>
+ <entry>default.rest.context (*)</entry>
<entry>The name of the default rest
<envar>ServletContext</envar>. This field is optional.</entry>
</row>
<row>
- <entry>default.realm.name</entry>
+ <entry>default.realm.name (*)</entry>
<entry>The name of the default realm. This field is
optional.</entry>
</row>
<row>
- <entry>ignore.unregistered.webapp</entry>
+ <entry>ignore.unregistered.webapp (*)</entry>
<entry>Indicates whether the unregistered webapps have to be
ignored. If a webapp has not been registered as a dependency
@@ -510,6 +510,15 @@
</tgroup>
</table>
+ <note>
+ <para>All the value of the parameters marked with a (*) can be
+ defined thanks to System properties like any values in configuration
+ files but also thanks to variables loaded by the
+ <emphasis>PropertyConfigurator</emphasis>. For example in GateIn by
+ default, it would be all the variables defined in the file
+ <emphasis>configuration.properties</emphasis>.</para>
+ </note>
+
<para>A new <envar>PortalContainerDefinition</envar> can be defined at
the <envar>RootContainer</envar> level thanks to an external plugin,
see an example below:<programlisting> <external-component-plugins>
@@ -615,14 +624,14 @@
<tgroup cols="2">
<tbody>
<row>
- <entry>name</entry>
+ <entry>name (*)</entry>
<entry>The name of the portal container. This field is
mandatory .</entry>
</row>
<row>
- <entry>restContextName</entry>
+ <entry>restContextName (*)</entry>
<entry>The name of the context name of the rest web
application. This field is optional. The default value will be
@@ -631,7 +640,7 @@
</row>
<row>
- <entry>realmName</entry>
+ <entry>realmName (*)</entry>
<entry>The name of the realm. This field is optional. The
default value will be defined at the
@@ -757,7 +766,7 @@
<tgroup cols="2">
<tbody>
<row>
- <entry>name</entry>
+ <entry>name (*)</entry>
<entry>The name of the portal container. This field is
optional. The default portal name will be:<orderedlist>
@@ -783,7 +792,7 @@
</row>
<row>
- <entry>restContextName</entry>
+ <entry>restContextName (*)</entry>
<entry>The name of the context name of the rest web
application. This field is optional. The default value wil
@@ -810,7 +819,7 @@
</row>
<row>
- <entry>realmName</entry>
+ <entry>realmName (*)</entry>
<entry>The name of the realm. This field is optional. The
default value wil be:<orderedlist>
@@ -891,6 +900,15 @@
</tgroup>
</table>
+ <note>
+ <para>All the value of the parameters marked with a (*) can be
+ defined thanks to System properties like any values in configuration
+ files but also thanks to variables loaded by the
+ <emphasis>PropertyConfigurator</emphasis>. For example in GateIn by
+ default, it would be all the variables defined in the file
+ <emphasis>configuration.properties</emphasis>.</para>
+ </note>
+
<para>Internal and external settings are both optional, but if we give
a non empty value for both the application will merge the settings. If
the same setting name exists in both settings, we apply the following
@@ -1102,7 +1120,7 @@
<tgroup cols="2">
<tbody>
<row>
- <entry>apply.all</entry>
+ <entry>apply.all (*)</entry>
<entry>Indicates whether the changes have to be applied to all
the portal containers or not. The default value of this field
@@ -1111,7 +1129,7 @@
</row>
<row>
- <entry>apply.default</entry>
+ <entry>apply.default (*)</entry>
<entry>Indicates whether the changes have to be applied to the
default portal container or not. The default value of this
@@ -1120,7 +1138,7 @@
</row>
<row>
- <entry>apply.specific</entry>
+ <entry>apply.specific (*)</entry>
<entry>A set of specific portal container names to which we
want to apply the changes. This field is a
@@ -1143,6 +1161,15 @@
</tgroup>
</table>
+ <note>
+ <para>All the value of the parameters marked with a (*) can be
+ defined thanks to System properties like any values in configuration
+ files but also thanks to variables loaded by the
+ <emphasis>PropertyConfigurator</emphasis>. For example in GateIn by
+ default, it would be all the variables defined in the file
+ <emphasis>configuration.properties</emphasis>.</para>
+ </note>
+
<para>To identify the portal containers to which the changes have to
be applied, we use the follwing algorithm:</para>
@@ -1534,7 +1561,7 @@
<tgroup cols="2">
<tbody>
<row>
- <entry>names</entry>
+ <entry>names (*)</entry>
<entry>The list of the name of the portal containers to
disable.</entry>
@@ -1543,6 +1570,15 @@
</tgroup>
</table>
+ <note>
+ <para>All the value of the parameters marked with a (*) can be
+ defined thanks to System properties like any values in configuration
+ files but also thanks to variables loaded by the
+ <emphasis>PropertyConfigurator</emphasis>. For example in GateIn by
+ default, it would be all the variables defined in the file
+ <emphasis>configuration.properties</emphasis>.</para>
+ </note>
+
<para>To prevent any accesses to a web application corresponding to
<envar>PortalContainer</envar> that has been disabled, you need to
make sure that the following Http Filter (or a sub class of it) has
Modified: kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerConfig.java
===================================================================
--- kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerConfig.java 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerConfig.java 2010-10-21 09:40:08 UTC (rev 3309)
@@ -205,8 +205,10 @@
this.serverInfo = serverInfo;
this.defaultDefinition = create(params);
this.ignoreUnregisteredWebapp =
- params != null && params.getValueParam("ignore.unregistered.webapp") != null
- && Boolean.valueOf(params.getValueParam("ignore.unregistered.webapp").getValue());
+ params != null
+ && params.getValueParam("ignore.unregistered.webapp") != null
+ && Boolean.valueOf(Deserializer.resolveVariables(params.getValueParam("ignore.unregistered.webapp")
+ .getValue()));
}
/**
@@ -266,7 +268,7 @@
if (vp != null && vp.getValue().trim().length() > 0)
{
// A realm name has been defined in the value parameter, thus we use it
- def.setRealmName(vp.getValue().trim());
+ def.setRealmName(Deserializer.resolveVariables(vp.getValue().trim()));
}
}
else
@@ -294,7 +296,7 @@
if (vp != null && vp.getValue().trim().length() > 0)
{
// A rest context name has been defined in the value parameter, thus we use it
- def.setRestContextName(vp.getValue().trim());
+ def.setRestContextName(Deserializer.resolveVariables(vp.getValue().trim()));
}
}
else
@@ -322,7 +324,7 @@
if (vp != null && vp.getValue().trim().length() > 0)
{
// A name has been defined in the value parameter, thus we use it
- def.setName(vp.getValue().trim());
+ def.setName(Deserializer.resolveVariables(vp.getValue().trim()));
}
}
else
Modified: kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinition.java
===================================================================
--- kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinition.java 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinition.java 2010-10-21 09:40:08 UTC (rev 3309)
@@ -19,9 +19,11 @@
package org.exoplatform.container.definition;
import org.exoplatform.container.PortalContainer;
+import org.exoplatform.container.xml.Deserializer;
import java.util.List;
import java.util.Map;
+import java.util.concurrent.atomic.AtomicBoolean;
import javax.servlet.ServletContext;
@@ -39,6 +41,11 @@
{
/**
+ * Indicates whether the current instance has been initialized
+ */
+ private final AtomicBoolean initialized = new AtomicBoolean();
+
+ /**
* The name of the related {@link PortalContainer}
*/
private String name;
@@ -72,6 +79,7 @@
public String getName()
{
+ init();
return name;
}
@@ -92,6 +100,7 @@
public String getRealmName()
{
+ init();
return realmName;
}
@@ -102,6 +111,7 @@
public String getRestContextName()
{
+ init();
return restContextName;
}
@@ -129,4 +139,26 @@
{
this.externalSettingsPath = externalSettingsPath;
}
+
+ /**
+ * Ensure that all the parameter values have been resolved in order to allow to
+ * use variables to define their values. It will be executed only if it has the current
+ * instance has not been initialized
+ */
+ private void init()
+ {
+ if (!initialized.get())
+ {
+ synchronized (this)
+ {
+ if (!initialized.get())
+ {
+ setName(Deserializer.resolveVariables(name));
+ setRestContextName(Deserializer.resolveVariables(restContextName));
+ setRealmName(Deserializer.resolveVariables(realmName));
+ initialized.set(true);
+ }
+ }
+ }
+ }
}
Modified: kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionChangePlugin.java
===================================================================
--- kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionChangePlugin.java 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionChangePlugin.java 2010-10-21 09:40:08 UTC (rev 3309)
@@ -17,6 +17,7 @@
package org.exoplatform.container.definition;
import org.exoplatform.container.component.BaseComponentPlugin;
+import org.exoplatform.container.xml.Deserializer;
import org.exoplatform.container.xml.InitParams;
import org.exoplatform.container.xml.ValueParam;
import org.exoplatform.container.xml.ValuesParam;
@@ -62,17 +63,22 @@
ValueParam vp = params.getValueParam("apply.all");
if (vp != null && vp.getValue().length() > 0)
{
- this.all = Boolean.valueOf(vp.getValue());
+ this.all = Boolean.valueOf(Deserializer.resolveVariables(vp.getValue()));
}
vp = params.getValueParam("apply.default");
if (vp != null && vp.getValue().length() > 0)
{
- this.bDefault = Boolean.valueOf(vp.getValue());
+ this.bDefault = Boolean.valueOf(Deserializer.resolveVariables(vp.getValue()));
}
ValuesParam vsp = params.getValuesParam("apply.specific");
if (vsp != null && !vsp.getValues().isEmpty())
{
- this.names = new HashSet<String>(vsp.getValues());
+ this.names = new HashSet<String>(vsp.getValues().size());
+ List<String> lnames = vsp.getValues();
+ for (String name : lnames)
+ {
+ names.add(Deserializer.resolveVariables(name));
+ }
}
this.changes = params.getObjectParamValues(PortalContainerDefinitionChange.class);
}
Modified: kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionDisablePlugin.java
===================================================================
--- kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionDisablePlugin.java 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/definition/PortalContainerDefinitionDisablePlugin.java 2010-10-21 09:40:08 UTC (rev 3309)
@@ -17,10 +17,12 @@
package org.exoplatform.container.definition;
import org.exoplatform.container.component.BaseComponentPlugin;
+import org.exoplatform.container.xml.Deserializer;
import org.exoplatform.container.xml.InitParams;
import org.exoplatform.container.xml.ValuesParam;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
/**
@@ -45,7 +47,12 @@
ValuesParam vsp = params.getValuesParam("names");
if (vsp != null && !vsp.getValues().isEmpty())
{
- this.names = new HashSet<String>(vsp.getValues());
+ this.names = new HashSet<String>(vsp.getValues().size());
+ List<String> lnames = vsp.getValues();
+ for (String name : lnames)
+ {
+ names.add(Deserializer.resolveVariables(name));
+ }
}
}
Modified: kernel/trunk/exo.kernel.container/src/test/java/org/exoplatform/container/definition/TestPortalContainerConfig.java
===================================================================
--- kernel/trunk/exo.kernel.container/src/test/java/org/exoplatform/container/definition/TestPortalContainerConfig.java 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/test/java/org/exoplatform/container/definition/TestPortalContainerConfig.java 2010-10-21 09:40:08 UTC (rev 3309)
@@ -16,6 +16,7 @@
*/
package org.exoplatform.container.definition;
+import org.exoplatform.commons.utils.PropertyManager;
import org.exoplatform.container.RootContainer;
import org.exoplatform.container.jmx.AbstractTestContainer;
import org.exoplatform.container.monitor.jvm.J2EEServerInfo;
@@ -64,25 +65,49 @@
assertFalse(config.isPortalContainerName("myPortal-dpcdef"));
assertFalse(config.hasDefinition());
- rootContainer =
- createRootContainer("portal-container-config-with-default-values-and-with-default-portal-def.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ try
+ {
+ rootContainer =
+ createRootContainer("portal-container-config-with-default-values-and-with-default-portal-def.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertEquals("myPortal-dpcdef", config.getDefaultPortalContainer());
- assertEquals("myRest-dpcdef", config.getDefaultRestContext());
- assertEquals("my-exo-domain-dpcdef", config.getDefaultRealmName());
- assertFalse(config.isPortalContainerName("portal"));
- assertFalse(config.isPortalContainerName("myPortal"));
- assertTrue(config.isPortalContainerName("myPortal-dpcdef"));
- assertFalse(config.hasDefinition());
+ assertEquals("myPortal-dpcdef", config.getDefaultPortalContainer());
+ assertEquals("myRest-dpcdef", config.getDefaultRestContext());
+ assertEquals("my-exo-domain-dpcdef", config.getDefaultRealmName());
+ assertFalse(config.isPortalContainerName("portal"));
+ assertFalse(config.isPortalContainerName("myPortal"));
+ assertTrue(config.isPortalContainerName("myPortal-dpcdef"));
+ assertFalse(config.hasDefinition());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_default.portal.container");
+ System.getProperties().remove("_default.rest.context");
+ System.getProperties().remove("_default.realm.name");
+ System.getProperties().remove("_portal.container");
+ System.getProperties().remove("_rest.context");
+ System.getProperties().remove("_realm.name");
+ PropertyManager.refresh();
+ }
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ try
+ {
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertEquals("myPortal", config.getDefaultPortalContainer());
- assertEquals("myRest", config.getDefaultRestContext());
- assertEquals("my-exo-domain", config.getDefaultRealmName());
- assertTrue(config.hasDefinition());
+ assertEquals("myPortal", config.getDefaultPortalContainer());
+ assertEquals("myRest", config.getDefaultRestContext());
+ assertEquals("my-exo-domain", config.getDefaultRealmName());
+ assertTrue(config.hasDefinition());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_ignore.unregistered.webapp.true");
+ System.getProperties().remove("_ignore.unregistered.webapp.false");
+ PropertyManager.refresh();
+ }
rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-defs.xml");
config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
@@ -92,14 +117,23 @@
assertEquals("my-exo-domain", config.getDefaultRealmName());
assertTrue(config.hasDefinition());
- rootContainer =
- createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ try
+ {
+ rootContainer =
+ createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertEquals("myPortal-dpcdef", config.getDefaultPortalContainer());
- assertEquals("myRest-dpcdef", config.getDefaultRestContext());
- assertEquals("my-exo-domain-dpcdef", config.getDefaultRealmName());
- assertTrue(config.hasDefinition());
+ assertEquals("myPortal-dpcdef", config.getDefaultPortalContainer());
+ assertEquals("myRest-dpcdef", config.getDefaultRestContext());
+ assertEquals("my-exo-domain-dpcdef", config.getDefaultRealmName());
+ assertTrue(config.hasDefinition());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
rootContainer = createRootContainer("portal-container-config-with-no-default-values-but-with-portal-def.xml");
config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
@@ -109,13 +143,22 @@
assertEquals("my-exo-domain-pcdef", config.getDefaultRealmName());
assertTrue(config.hasDefinition());
- rootContainer = createRootContainer("portal-container-config-with-no-default-values-but-with-portal-defs.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ try
+ {
+ rootContainer = createRootContainer("portal-container-config-with-no-default-values-but-with-portal-defs.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertEquals("portal", config.getDefaultPortalContainer());
- assertEquals("myRest", config.getDefaultRestContext());
- assertEquals("my-exo-domain", config.getDefaultRealmName());
- assertTrue(config.hasDefinition());
+ assertEquals("portal", config.getDefaultPortalContainer());
+ assertEquals("myRest", config.getDefaultRestContext());
+ assertEquals("my-exo-domain", config.getDefaultRealmName());
+ assertTrue(config.hasDefinition());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_value.true");
+ PropertyManager.refresh();
+ }
rootContainer = createRootContainer("portal-container-config-with-no-default-values-but-with-portal-defs2.xml");
config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
@@ -165,6 +208,9 @@
finally
{
TestPortalContainerDefinitionChange.NAMES.clear();
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_value.true");
+ PropertyManager.refresh();
}
try
@@ -178,6 +224,9 @@
finally
{
TestPortalContainerDefinitionChange.NAMES.clear();
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_value.true");
+ PropertyManager.refresh();
}
}
@@ -292,123 +341,153 @@
String[] ignoreWebappProfiles = {"ignore.unregistered.webapp-default", "ignore.unregistered.webapp-false", "ignore.unregistered.webapp-true"};
for (int i = 0; i < ignoreWebappProfiles.length; i++)
{
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml", ignoreWebappProfiles[i]);
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertNull(config.getDependencies("foo"));
- assertNull(config.getDependencies("myPortal"));
- assertNull(config.getDependencies("myPortal-pcdef"));
- names = config.getPortalContainerNames("foo");
- if (i < ignoreWebappProfiles.length - 1)
+ try
{
- // Default behavior
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml", ignoreWebappProfiles[i]);
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertNull(config.getDependencies("foo"));
+ assertNull(config.getDependencies("myPortal"));
+ assertNull(config.getDependencies("myPortal-pcdef"));
+ names = config.getPortalContainerNames("foo");
+ if (i < ignoreWebappProfiles.length - 1)
+ {
+ // Default behavior
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(2, names.size());
+ assertTrue(names.contains("myPortal"));
+ assertTrue(names.contains("myPortal-pcdef"));
+ assertEquals("myPortal", config.getPortalContainerName("foo"));
+ }
+ else
+ {
+ // Ignore webapp needed for EXOJCR-795
+ assertTrue(names != null && names.isEmpty());
+ assertNull(config.getPortalContainerName("foo"));
+ }
+ names = config.getPortalContainerNames("myPortal");
assertTrue(names != null && !names.isEmpty());
- assertEquals(2, names.size());
- assertTrue(names.contains("myPortal"));
- assertTrue(names.contains("myPortal-pcdef"));
- assertEquals("myPortal", config.getPortalContainerName("foo"));
+ assertEquals("myPortal", names.get(0));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals("myPortal-pcdef", names.get(0));
+ assertEquals("myPortal", config.getPortalContainerName("myPortal"));
+ assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
+ assertEquals("myRest", config.getRestContextName("foo"));
+ assertEquals("myRest", config.getRestContextName("myPortal"));
+ assertEquals("myRest-pcdef", config.getRestContextName("myPortal-pcdef"));
+ assertEquals("my-exo-domain", config.getRealmName("foo"));
+ assertEquals("my-exo-domain", config.getRealmName("myPortal"));
+ assertEquals("my-exo-domain-pcdef", config.getRealmName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("foo"));
+ assertTrue(config.isPortalContainerName("myPortal"));
+ assertTrue(config.isPortalContainerName("myPortal-pcdef"));
+ // Needed for backward compatibility
+ assertFalse(config.isScopeValid("foo", "foo"));
+ if (i < ignoreWebappProfiles.length - 1)
+ {
+ // Default behavior
+ assertTrue(config.isScopeValid("myPortal", "foo"));
+ assertTrue(config.isScopeValid("myPortal-pcdef", "foo"));
+ }
+ else
+ {
+ // Ignore webapp needed for EXOJCR-795
+ assertFalse(config.isScopeValid("myPortal", "foo"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "foo"));
+ }
+ assertTrue(config.isScopeValid("myPortal", "myPortal"));
+ assertTrue(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ assertTrue(config.hasDefinition());
}
- else
+ finally
{
- // Ignore webapp needed for EXOJCR-795
- assertTrue(names != null && names.isEmpty());
- assertNull(config.getPortalContainerName("foo"));
- }
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_ignore.unregistered.webapp.true");
+ System.getProperties().remove("_ignore.unregistered.webapp.false");
+ PropertyManager.refresh();
+ }
+ }
+
+ try
+ {
+ // Unregister the portal container
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml", "disable-pc");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertNull(config.getPortalContainerName("myPortal-pcdef"));
+ assertEquals("myPortal", config.getPortalContainerName("myPortal"));
+ assertFalse(config.isPortalContainerName("myPortal-pcdef"));
+ assertTrue(config.isPortalContainerName("myPortal"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
+ assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
+ assertTrue(config.isScopeValid("myPortal", "myPortal"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && names.isEmpty());
names = config.getPortalContainerNames("myPortal");
assertTrue(names != null && !names.isEmpty());
- assertEquals("myPortal", names.get(0));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && !names.isEmpty());
- assertEquals("myPortal-pcdef", names.get(0));
- assertEquals("myPortal", config.getPortalContainerName("myPortal"));
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal"));
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_ignore.unregistered.webapp.true");
+ System.getProperties().remove("_ignore.unregistered.webapp.false");
+ PropertyManager.refresh();
+ }
+ try
+ {
+ // Unregister the default portal container
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml", "disable-pc2");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
- assertEquals("myRest", config.getRestContextName("foo"));
- assertEquals("myRest", config.getRestContextName("myPortal"));
- assertEquals("myRest-pcdef", config.getRestContextName("myPortal-pcdef"));
- assertEquals("my-exo-domain", config.getRealmName("foo"));
- assertEquals("my-exo-domain", config.getRealmName("myPortal"));
- assertEquals("my-exo-domain-pcdef", config.getRealmName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("foo"));
- assertTrue(config.isPortalContainerName("myPortal"));
+ assertNull(config.getPortalContainerName("myPortal"));
assertTrue(config.isPortalContainerName("myPortal-pcdef"));
- // Needed for backward compatibility
- assertFalse(config.isScopeValid("foo", "foo"));
- if (i < ignoreWebappProfiles.length - 1)
- {
- // Default behavior
- assertTrue(config.isScopeValid("myPortal", "foo"));
- assertTrue(config.isScopeValid("myPortal-pcdef", "foo"));
- }
- else
- {
- // Ignore webapp needed for EXOJCR-795
- assertFalse(config.isScopeValid("myPortal", "foo"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "foo"));
- }
- assertTrue(config.isScopeValid("myPortal", "myPortal"));
+ assertFalse(config.isPortalContainerName("myPortal"));
assertTrue(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- assertTrue(config.hasDefinition());
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
+ assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
+ assertFalse(config.isScopeValid("myPortal", "myPortal"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal");
+ assertTrue(names != null && names.isEmpty());
+ config.disablePortalContainer("myPortal-pcdef");
+ assertNull(config.getPortalContainerName("myPortal-pcdef"));
+ assertNull(config.getPortalContainerName("myPortal"));
+ assertFalse(config.isPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("myPortal"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
+ assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
+ assertFalse(config.isScopeValid("myPortal", "myPortal"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && names.isEmpty());
+ names = config.getPortalContainerNames("myPortal");
+ assertTrue(names != null && names.isEmpty());
+ config.registerPortalContainerName("myPortal-pcdef");
+ assertNull(config.getPortalContainerName("myPortal-pcdef"));
+ assertNull(config.getPortalContainerName("myPortal"));
+ assertFalse(config.isPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("myPortal"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
+ assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
+ assertFalse(config.isScopeValid("myPortal", "myPortal"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && names.isEmpty());
+ names = config.getPortalContainerNames("myPortal");
+ assertTrue(names != null && names.isEmpty());
}
-
- // Unregister the portal container
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml", "disable-pc");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertNull(config.getPortalContainerName("myPortal-pcdef"));
- assertEquals("myPortal", config.getPortalContainerName("myPortal"));
- assertFalse(config.isPortalContainerName("myPortal-pcdef"));
- assertTrue(config.isPortalContainerName("myPortal"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
- assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
- assertTrue(config.isScopeValid("myPortal", "myPortal"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && names.isEmpty());
- names = config.getPortalContainerNames("myPortal");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal"));
- // Unregister the default portal container
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml", "disable-pc2");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
- assertNull(config.getPortalContainerName("myPortal"));
- assertTrue(config.isPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("myPortal"));
- assertTrue(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
- assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal", "myPortal"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal");
- assertTrue(names != null && names.isEmpty());
- config.disablePortalContainer("myPortal-pcdef");
- assertNull(config.getPortalContainerName("myPortal-pcdef"));
- assertNull(config.getPortalContainerName("myPortal"));
- assertFalse(config.isPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("myPortal"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
- assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal", "myPortal"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && names.isEmpty());
- names = config.getPortalContainerNames("myPortal");
- assertTrue(names != null && names.isEmpty());
- config.registerPortalContainerName("myPortal-pcdef");
- assertNull(config.getPortalContainerName("myPortal-pcdef"));
- assertNull(config.getPortalContainerName("myPortal"));
- assertFalse(config.isPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("myPortal"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal"));
- assertFalse(config.isScopeValid("myPortal", "myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal", "myPortal"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && names.isEmpty());
- names = config.getPortalContainerNames("myPortal");
- assertTrue(names != null && names.isEmpty());
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_ignore.unregistered.webapp.true");
+ System.getProperties().remove("_ignore.unregistered.webapp.false");
+ PropertyManager.refresh();
+ }
// Without dependencies and with no portal container name
rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-empty-portal-def.xml");
@@ -447,181 +526,87 @@
assertTrue(names != null && !names.isEmpty());
assertEquals("myPortal", names.get(0));
- // Without dependencies and with no rest context name an realm name
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-empty-portal-def2.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertNull(config.getDependencies("foo"));
- assertNull(config.getDependencies("myPortal"));
- assertNull(config.getDependencies("myPortal-pcdef"));
- names = config.getPortalContainerNames("foo");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(2, names.size());
- assertTrue(names.contains("myPortal"));
- assertTrue(names.contains("myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal");
- assertTrue(names != null && !names.isEmpty());
- assertEquals("myPortal", names.get(0));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && !names.isEmpty());
- assertEquals("myPortal-pcdef", names.get(0));
- assertEquals("myPortal", config.getPortalContainerName("foo"));
- assertEquals("myPortal", config.getPortalContainerName("myPortal"));
- assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
- assertEquals("myRest", config.getRestContextName("foo"));
- assertEquals("myRest", config.getRestContextName("myPortal"));
- assertEquals("myRest", config.getRestContextName("myPortal-pcdef"));
- assertEquals("my-exo-domain", config.getRealmName("foo"));
- assertEquals("my-exo-domain", config.getRealmName("myPortal"));
- assertEquals("my-exo-domain", config.getRealmName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("foo"));
- assertTrue(config.isPortalContainerName("myPortal"));
- assertTrue(config.isPortalContainerName("myPortal-pcdef"));
- // Needed for backward compatibility
- assertFalse(config.isScopeValid("foo", "foo"));
- assertTrue(config.isScopeValid("myPortal", "foo"));
- assertTrue(config.isScopeValid("myPortal-pcdef", "foo"));
- assertTrue(config.isScopeValid("myPortal", "myPortal"));
- assertTrue(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- assertTrue(config.hasDefinition());
- // Unregister the portal container
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-empty-portal-def2.xml", "disable-pc");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertNull(config.getPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && names.isEmpty());
+ try
+ {
+ // Without dependencies and with no rest context name an realm name
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-empty-portal-def2.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertNull(config.getDependencies("foo"));
+ assertNull(config.getDependencies("myPortal"));
+ assertNull(config.getDependencies("myPortal-pcdef"));
+ names = config.getPortalContainerNames("foo");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(2, names.size());
+ assertTrue(names.contains("myPortal"));
+ assertTrue(names.contains("myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals("myPortal", names.get(0));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals("myPortal-pcdef", names.get(0));
+ assertEquals("myPortal", config.getPortalContainerName("foo"));
+ assertEquals("myPortal", config.getPortalContainerName("myPortal"));
+ assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
+ assertEquals("myRest", config.getRestContextName("foo"));
+ assertEquals("myRest", config.getRestContextName("myPortal"));
+ assertEquals("myRest", config.getRestContextName("myPortal-pcdef"));
+ assertEquals("my-exo-domain", config.getRealmName("foo"));
+ assertEquals("my-exo-domain", config.getRealmName("myPortal"));
+ assertEquals("my-exo-domain", config.getRealmName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("foo"));
+ assertTrue(config.isPortalContainerName("myPortal"));
+ assertTrue(config.isPortalContainerName("myPortal-pcdef"));
+ // Needed for backward compatibility
+ assertFalse(config.isScopeValid("foo", "foo"));
+ assertTrue(config.isScopeValid("myPortal", "foo"));
+ assertTrue(config.isScopeValid("myPortal-pcdef", "foo"));
+ assertTrue(config.isScopeValid("myPortal", "myPortal"));
+ assertTrue(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ assertTrue(config.hasDefinition());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_default.portal.container");
+ System.getProperties().remove("_default.rest.context");
+ System.getProperties().remove("_default.realm.name");
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
+ try
+ {
+ // Unregister the portal container
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-empty-portal-def2.xml", "disable-pc");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertNull(config.getPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && names.isEmpty());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_default.portal.container");
+ System.getProperties().remove("_default.rest.context");
+ System.getProperties().remove("_default.realm.name");
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
- // Without dependencies and with default portal container definition
- rootContainer =
- createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- deps = config.getDependencies("foo");
- assertNull(deps);
- deps = config.getDependencies("myPortal");
- assertNull(deps);
- deps = config.getDependencies("myPortal-pcdef");
- assertTrue(deps != null && deps.size() == 1 && deps.contains("fooX"));
- names = config.getPortalContainerNames("fooX");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(2, names.size());
- assertTrue(names.contains("myPortal-dpcdef"));
- assertTrue(names.contains("myPortal-pcdef"));
- names = config.getPortalContainerNames("foo");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(2, names.size());
- assertTrue(names.contains("myPortal-dpcdef"));
- assertTrue(names.contains("myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(2, names.size());
- assertTrue(names.contains("myPortal-dpcdef"));
- assertTrue(names.contains("myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && !names.isEmpty());
- assertEquals("myPortal-pcdef", names.get(0));
- assertEquals("myPortal-dpcdef", config.getPortalContainerName("foo"));
- assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal"));
- assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
- assertEquals("myRest-dpcdef", config.getRestContextName("foo"));
- assertEquals("myRest-dpcdef", config.getRestContextName("myPortal"));
- assertEquals("myRest-pcdef", config.getRestContextName("myPortal-pcdef"));
- assertEquals("my-exo-domain-dpcdef", config.getRealmName("foo"));
- assertEquals("my-exo-domain-dpcdef", config.getRealmName("myPortal"));
- assertEquals("my-exo-domain-pcdef", config.getRealmName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("foo"));
- assertFalse(config.isPortalContainerName("myPortal"));
- assertTrue(config.isPortalContainerName("myPortal-dpcdef"));
- assertTrue(config.isPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isScopeValid("foo", "fooX"));
- assertFalse(config.isScopeValid("myPortal", "fooX"));
- assertTrue(config.isScopeValid("myPortal-dpcdef", "fooX"));
- assertTrue(config.isScopeValid("myPortal-pcdef", "fooX"));
- assertTrue(config.hasDefinition());
- // Unregister the portal container
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml", "disable-pc");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertEquals("myPortal-dpcdef", config.getPortalContainerName("foo"));
- assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal"));
- assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal-dpcdef"));
- assertNull(config.getPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("foo"));
- assertFalse(config.isPortalContainerName("myPortal"));
- assertTrue(config.isPortalContainerName("myPortal-dpcdef"));
- assertFalse(config.isPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isScopeValid("foo", "fooX"));
- assertFalse(config.isScopeValid("myPortal", "fooX"));
- assertTrue(config.isScopeValid("myPortal-dpcdef", "fooX"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "fooX"));
- assertTrue(config.isScopeValid("myPortal-dpcdef", "myPortal-dpcdef"));
- assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && names.isEmpty());
- names = config.getPortalContainerNames("myPortal-dpcdef");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-dpcdef"));
- names = config.getPortalContainerNames("fooX");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-dpcdef"));
- // Unregister the default portal container
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml", "disable-pc2");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertEquals("myPortal-pcdef", config.getPortalContainerName("foo"));
- assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal"));
- assertNull(config.getPortalContainerName("myPortal-dpcdef"));
- assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isPortalContainerName("foo"));
- assertFalse(config.isPortalContainerName("myPortal"));
- assertFalse(config.isPortalContainerName("myPortal-dpcdef"));
- assertTrue(config.isPortalContainerName("myPortal-pcdef"));
- assertFalse(config.isScopeValid("foo", "fooX"));
- assertFalse(config.isScopeValid("myPortal", "fooX"));
- assertFalse(config.isScopeValid("myPortal-dpcdef", "fooX"));
- assertTrue(config.isScopeValid("myPortal-pcdef", "fooX"));
- assertFalse(config.isScopeValid("myPortal-dpcdef", "myPortal-dpcdef"));
- assertTrue(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal-pcdef");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-pcdef"));
- names = config.getPortalContainerNames("myPortal-dpcdef");
- assertTrue(names != null && names.isEmpty());
- names = config.getPortalContainerNames("fooX");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-pcdef"));
-
- profiles =
- new String[]{"AddDependencies", "AddDependenciesBefore-No-Target", "AddDependenciesBefore-With-Fake-Target",
- "AddDependenciesBefore-With-Target", "AddDependenciesAfter-No-Target",
- "AddDependenciesAfter-With-Fake-Target", "AddDependenciesAfter-With-Target"};
-
- for (String profile : profiles)
+ try
{
+ // Without dependencies and with default portal container definition
rootContainer =
- createRootContainer(
- "portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml",
- "with-profiles", profile);
+ createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml");
config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
deps = config.getDependencies("foo");
assertNull(deps);
deps = config.getDependencies("myPortal");
assertNull(deps);
deps = config.getDependencies("myPortal-pcdef");
- assertTrue(deps != null && deps.size() == 2 && deps.contains("fooX") && deps.contains("foo"));
- int index = deps.indexOf("foo");
- if (profile.equals("AddDependenciesBefore-No-Target")
- || profile.equals("AddDependenciesBefore-With-Fake-Target")
- || profile.equals("AddDependenciesBefore-With-Target"))
- {
- assertEquals(0, index);
- }
- else
- {
- assertEquals(1, index);
- }
+ assertTrue(deps != null && deps.size() == 1 && deps.contains("fooX"));
names = config.getPortalContainerNames("fooX");
assertTrue(names != null && !names.isEmpty());
assertEquals(2, names.size());
@@ -640,7 +625,7 @@
names = config.getPortalContainerNames("myPortal-pcdef");
assertTrue(names != null && !names.isEmpty());
assertEquals("myPortal-pcdef", names.get(0));
- assertEquals("myPortal-pcdef", config.getPortalContainerName("foo"));
+ assertEquals("myPortal-dpcdef", config.getPortalContainerName("foo"));
assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal"));
assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
assertEquals("myRest-dpcdef", config.getRestContextName("foo"));
@@ -651,15 +636,24 @@
assertEquals("my-exo-domain-pcdef", config.getRealmName("myPortal-pcdef"));
assertFalse(config.isPortalContainerName("foo"));
assertFalse(config.isPortalContainerName("myPortal"));
+ assertTrue(config.isPortalContainerName("myPortal-dpcdef"));
assertTrue(config.isPortalContainerName("myPortal-pcdef"));
assertFalse(config.isScopeValid("foo", "fooX"));
assertFalse(config.isScopeValid("myPortal", "fooX"));
+ assertTrue(config.isScopeValid("myPortal-dpcdef", "fooX"));
assertTrue(config.isScopeValid("myPortal-pcdef", "fooX"));
assertTrue(config.hasDefinition());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
+ try
+ {
// Unregister the portal container
- rootContainer = createRootContainer(
- "portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml",
- "with-profiles", profile, "disable-pc");
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml", "disable-pc");
config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
assertEquals("myPortal-dpcdef", config.getPortalContainerName("foo"));
assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal"));
@@ -681,18 +675,21 @@
assertTrue(names != null && !names.isEmpty());
assertEquals(1, names.size());
assertTrue(names.contains("myPortal-dpcdef"));
- names = config.getPortalContainerNames("foo");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-dpcdef"));
names = config.getPortalContainerNames("fooX");
assertTrue(names != null && !names.isEmpty());
assertEquals(1, names.size());
assertTrue(names.contains("myPortal-dpcdef"));
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
+ try
+ {
// Unregister the default portal container
- rootContainer = createRootContainer(
- "portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml",
- "with-profiles", profile, "disable-pc2");
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml", "disable-pc2");
config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
assertEquals("myPortal-pcdef", config.getPortalContainerName("foo"));
assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal"));
@@ -713,17 +710,177 @@
assertEquals(1, names.size());
assertTrue(names.contains("myPortal-pcdef"));
names = config.getPortalContainerNames("myPortal-dpcdef");
- assertTrue(names != null && names.isEmpty());
- names = config.getPortalContainerNames("foo");
- assertTrue(names != null && !names.isEmpty());
- assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-pcdef"));
+ assertTrue(names != null && names.isEmpty());
names = config.getPortalContainerNames("fooX");
assertTrue(names != null && !names.isEmpty());
assertEquals(1, names.size());
- assertTrue(names.contains("myPortal-pcdef"));
+ assertTrue(names.contains("myPortal-pcdef"));
}
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
+
+ profiles =
+ new String[]{"AddDependencies", "AddDependenciesBefore-No-Target", "AddDependenciesBefore-With-Fake-Target",
+ "AddDependenciesBefore-With-Target", "AddDependenciesAfter-No-Target",
+ "AddDependenciesAfter-With-Fake-Target", "AddDependenciesAfter-With-Target"};
+ for (String profile : profiles)
+ {
+ try
+ {
+ rootContainer =
+ createRootContainer(
+ "portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml",
+ "with-profiles", profile);
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ deps = config.getDependencies("foo");
+ assertNull(deps);
+ deps = config.getDependencies("myPortal");
+ assertNull(deps);
+ deps = config.getDependencies("myPortal-pcdef");
+ assertTrue(deps != null && deps.size() == 2 && deps.contains("fooX") && deps.contains("foo"));
+ int index = deps.indexOf("foo");
+ if (profile.equals("AddDependenciesBefore-No-Target")
+ || profile.equals("AddDependenciesBefore-With-Fake-Target")
+ || profile.equals("AddDependenciesBefore-With-Target"))
+ {
+ assertEquals(0, index);
+ }
+ else
+ {
+ assertEquals(1, index);
+ }
+ names = config.getPortalContainerNames("fooX");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(2, names.size());
+ assertTrue(names.contains("myPortal-dpcdef"));
+ assertTrue(names.contains("myPortal-pcdef"));
+ names = config.getPortalContainerNames("foo");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(2, names.size());
+ assertTrue(names.contains("myPortal-dpcdef"));
+ assertTrue(names.contains("myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(2, names.size());
+ assertTrue(names.contains("myPortal-dpcdef"));
+ assertTrue(names.contains("myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals("myPortal-pcdef", names.get(0));
+ assertEquals("myPortal-pcdef", config.getPortalContainerName("foo"));
+ assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal"));
+ assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
+ assertEquals("myRest-dpcdef", config.getRestContextName("foo"));
+ assertEquals("myRest-dpcdef", config.getRestContextName("myPortal"));
+ assertEquals("myRest-pcdef", config.getRestContextName("myPortal-pcdef"));
+ assertEquals("my-exo-domain-dpcdef", config.getRealmName("foo"));
+ assertEquals("my-exo-domain-dpcdef", config.getRealmName("myPortal"));
+ assertEquals("my-exo-domain-pcdef", config.getRealmName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("foo"));
+ assertFalse(config.isPortalContainerName("myPortal"));
+ assertTrue(config.isPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isScopeValid("foo", "fooX"));
+ assertFalse(config.isScopeValid("myPortal", "fooX"));
+ assertTrue(config.isScopeValid("myPortal-pcdef", "fooX"));
+ assertTrue(config.hasDefinition());
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
+ try
+ {
+ // Unregister the portal container
+ rootContainer = createRootContainer(
+ "portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml",
+ "with-profiles", profile, "disable-pc");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertEquals("myPortal-dpcdef", config.getPortalContainerName("foo"));
+ assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal"));
+ assertEquals("myPortal-dpcdef", config.getPortalContainerName("myPortal-dpcdef"));
+ assertNull(config.getPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("foo"));
+ assertFalse(config.isPortalContainerName("myPortal"));
+ assertTrue(config.isPortalContainerName("myPortal-dpcdef"));
+ assertFalse(config.isPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isScopeValid("foo", "fooX"));
+ assertFalse(config.isScopeValid("myPortal", "fooX"));
+ assertTrue(config.isScopeValid("myPortal-dpcdef", "fooX"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "fooX"));
+ assertTrue(config.isScopeValid("myPortal-dpcdef", "myPortal-dpcdef"));
+ assertFalse(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && names.isEmpty());
+ names = config.getPortalContainerNames("myPortal-dpcdef");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal-dpcdef"));
+ names = config.getPortalContainerNames("foo");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal-dpcdef"));
+ names = config.getPortalContainerNames("fooX");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal-dpcdef"));
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
+ try
+ {
+ // Unregister the default portal container
+ rootContainer = createRootContainer(
+ "portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml",
+ "with-profiles", profile, "disable-pc2");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertEquals("myPortal-pcdef", config.getPortalContainerName("foo"));
+ assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal"));
+ assertNull(config.getPortalContainerName("myPortal-dpcdef"));
+ assertEquals("myPortal-pcdef", config.getPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isPortalContainerName("foo"));
+ assertFalse(config.isPortalContainerName("myPortal"));
+ assertFalse(config.isPortalContainerName("myPortal-dpcdef"));
+ assertTrue(config.isPortalContainerName("myPortal-pcdef"));
+ assertFalse(config.isScopeValid("foo", "fooX"));
+ assertFalse(config.isScopeValid("myPortal", "fooX"));
+ assertFalse(config.isScopeValid("myPortal-dpcdef", "fooX"));
+ assertTrue(config.isScopeValid("myPortal-pcdef", "fooX"));
+ assertFalse(config.isScopeValid("myPortal-dpcdef", "myPortal-dpcdef"));
+ assertTrue(config.isScopeValid("myPortal-pcdef", "myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal-pcdef");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal-pcdef"));
+ names = config.getPortalContainerNames("myPortal-dpcdef");
+ assertTrue(names != null && names.isEmpty());
+ names = config.getPortalContainerNames("foo");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal-pcdef"));
+ names = config.getPortalContainerNames("fooX");
+ assertTrue(names != null && !names.isEmpty());
+ assertEquals(1, names.size());
+ assertTrue(names.contains("myPortal-pcdef"));
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
+ }
+
// With dependencies
rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def2.xml");
config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
@@ -1025,76 +1182,109 @@
assertEquals("my-exo-domain", config.getSetting("myPortal-pcdef", PortalContainerConfig.REALM_SETTING_NAME));
// Without settings, without portal definition and with default portal container definition
- rootContainer =
- createRootContainer("portal-container-config-with-default-values-and-with-default-portal-def.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertNull(config.getSetting("foo", "foo"));
- assertNull(config.getSetting("myPortal", "foo"));
- assertNull(config.getSetting("myPortal-pcdef", "foo"));
- assertEquals("myPortal-dpcdef", config.getSetting("foo", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myPortal-dpcdef", config
- .getSetting("myPortal", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myPortal-dpcdef", config.getSetting("myPortal-pcdef",
- PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myRest-dpcdef", config.getSetting("foo", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("myRest-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("myRest-dpcdef", config
- .getSetting("myPortal-pcdef", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("my-exo-domain-dpcdef", config.getSetting("foo", PortalContainerConfig.REALM_SETTING_NAME));
- assertEquals("my-exo-domain-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REALM_SETTING_NAME));
- assertEquals("my-exo-domain-dpcdef", config
- .getSetting("myPortal-pcdef", PortalContainerConfig.REALM_SETTING_NAME));
- assertEquals("value0", config.getSetting("foo", "string"));
- assertEquals(new Integer(100), config.getSetting("foo", "int"));
- assertEquals(new Long(100), config.getSetting("foo", "long"));
- assertEquals(new Double(100), config.getSetting("foo", "double"));
- assertEquals(new Boolean(false), config.getSetting("foo", "boolean"));
- assertEquals("value0", config.getSetting("myPortal", "string"));
- assertEquals(new Integer(100), config.getSetting("myPortal", "int"));
- assertEquals(new Long(100), config.getSetting("myPortal", "long"));
- assertEquals(new Double(100), config.getSetting("myPortal", "double"));
- assertEquals(new Boolean(false), config.getSetting("myPortal", "boolean"));
- assertEquals("value0", config.getSetting("myPortal-pcdef", "string"));
- assertEquals(new Integer(100), config.getSetting("myPortal-pcdef", "int"));
- assertEquals(new Long(100), config.getSetting("myPortal-pcdef", "long"));
- assertEquals(new Double(100), config.getSetting("myPortal-pcdef", "double"));
- assertEquals(new Boolean(false), config.getSetting("myPortal-pcdef", "boolean"));
+ try
+ {
+ rootContainer =
+ createRootContainer("portal-container-config-with-default-values-and-with-default-portal-def.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertNull(config.getSetting("foo", "foo"));
+ assertNull(config.getSetting("myPortal", "foo"));
+ assertNull(config.getSetting("myPortal-pcdef", "foo"));
+ assertEquals("myPortal-dpcdef", config.getSetting("foo", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myPortal-dpcdef", config
+ .getSetting("myPortal", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myPortal-dpcdef", config.getSetting("myPortal-pcdef",
+ PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myRest-dpcdef", config.getSetting("foo", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("myRest-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("myRest-dpcdef", config
+ .getSetting("myPortal-pcdef", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("my-exo-domain-dpcdef", config.getSetting("foo", PortalContainerConfig.REALM_SETTING_NAME));
+ assertEquals("my-exo-domain-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REALM_SETTING_NAME));
+ assertEquals("my-exo-domain-dpcdef", config
+ .getSetting("myPortal-pcdef", PortalContainerConfig.REALM_SETTING_NAME));
+ assertEquals("value0", config.getSetting("foo", "string"));
+ assertEquals(new Integer(100), config.getSetting("foo", "int"));
+ assertEquals(new Long(100), config.getSetting("foo", "long"));
+ assertEquals(new Double(100), config.getSetting("foo", "double"));
+ assertEquals(new Boolean(false), config.getSetting("foo", "boolean"));
+ assertEquals("value0", config.getSetting("myPortal", "string"));
+ assertEquals(new Integer(100), config.getSetting("myPortal", "int"));
+ assertEquals(new Long(100), config.getSetting("myPortal", "long"));
+ assertEquals(new Double(100), config.getSetting("myPortal", "double"));
+ assertEquals(new Boolean(false), config.getSetting("myPortal", "boolean"));
+ assertEquals("value0", config.getSetting("myPortal-pcdef", "string"));
+ assertEquals(new Integer(100), config.getSetting("myPortal-pcdef", "int"));
+ assertEquals(new Long(100), config.getSetting("myPortal-pcdef", "long"));
+ assertEquals(new Double(100), config.getSetting("myPortal-pcdef", "double"));
+ assertEquals(new Boolean(false), config.getSetting("myPortal-pcdef", "boolean"));
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_default.portal.container");
+ System.getProperties().remove("_default.rest.context");
+ System.getProperties().remove("_default.realm.name");
+ System.getProperties().remove("_portal.container");
+ System.getProperties().remove("_rest.context");
+ System.getProperties().remove("_realm.name");
+ PropertyManager.refresh();
+ }
- // Without settings and with portal definition
- rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertNull(config.getSetting("foo", "foo"));
- assertNull(config.getSetting("myPortal", "foo"));
- assertNull(config.getSetting("myPortal-pcdef", "foo"));
- assertEquals("myPortal", config.getSetting("foo", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myPortal", config.getSetting("myPortal", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myPortal-pcdef", config.getSetting("myPortal-pcdef",
- PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myRest", config.getSetting("foo", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("myRest", config.getSetting("myPortal", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("myRest-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("my-exo-domain", config.getSetting("foo", PortalContainerConfig.REALM_SETTING_NAME));
- assertEquals("my-exo-domain", config.getSetting("myPortal", PortalContainerConfig.REALM_SETTING_NAME));
- assertEquals("my-exo-domain-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REALM_SETTING_NAME));
+ try
+ {
+ // Without settings and with portal definition
+ rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-portal-def.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertNull(config.getSetting("foo", "foo"));
+ assertNull(config.getSetting("myPortal", "foo"));
+ assertNull(config.getSetting("myPortal-pcdef", "foo"));
+ assertEquals("myPortal", config.getSetting("foo", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myPortal", config.getSetting("myPortal", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myPortal-pcdef", config.getSetting("myPortal-pcdef",
+ PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myRest", config.getSetting("foo", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("myRest", config.getSetting("myPortal", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("myRest-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("my-exo-domain", config.getSetting("foo", PortalContainerConfig.REALM_SETTING_NAME));
+ assertEquals("my-exo-domain", config.getSetting("myPortal", PortalContainerConfig.REALM_SETTING_NAME));
+ assertEquals("my-exo-domain-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REALM_SETTING_NAME));
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_ignore.unregistered.webapp.true");
+ System.getProperties().remove("_ignore.unregistered.webapp.false");
+ PropertyManager.refresh();
+ }
- // Without settings, with portal definition and with default portal definition
- rootContainer =
- createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml");
- config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
- assertNull(config.getSetting("foo", "foo"));
- assertNull(config.getSetting("myPortal", "foo"));
- assertNull(config.getSetting("myPortal-pcdef", "foo"));
- assertEquals("myPortal-dpcdef", config.getSetting("foo", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myPortal-dpcdef", config
- .getSetting("myPortal", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myPortal-pcdef", config.getSetting("myPortal-pcdef",
- PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
- assertEquals("myRest-dpcdef", config.getSetting("foo", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("myRest-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("myRest-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
- assertEquals("my-exo-domain-dpcdef", config.getSetting("foo", PortalContainerConfig.REALM_SETTING_NAME));
- assertEquals("my-exo-domain-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REALM_SETTING_NAME));
- assertEquals("my-exo-domain-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REALM_SETTING_NAME));
+ try
+ {
+ // Without settings, with portal definition and with default portal definition
+ rootContainer =
+ createRootContainer("portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml");
+ config = (PortalContainerConfig)rootContainer.getComponentInstanceOfType(PortalContainerConfig.class);
+ assertNull(config.getSetting("foo", "foo"));
+ assertNull(config.getSetting("myPortal", "foo"));
+ assertNull(config.getSetting("myPortal-pcdef", "foo"));
+ assertEquals("myPortal-dpcdef", config.getSetting("foo", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myPortal-dpcdef", config
+ .getSetting("myPortal", PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myPortal-pcdef", config.getSetting("myPortal-pcdef",
+ PortalContainerConfig.PORTAL_CONTAINER_SETTING_NAME));
+ assertEquals("myRest-dpcdef", config.getSetting("foo", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("myRest-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("myRest-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REST_CONTEXT_SETTING_NAME));
+ assertEquals("my-exo-domain-dpcdef", config.getSetting("foo", PortalContainerConfig.REALM_SETTING_NAME));
+ assertEquals("my-exo-domain-dpcdef", config.getSetting("myPortal", PortalContainerConfig.REALM_SETTING_NAME));
+ assertEquals("my-exo-domain-pcdef", config.getSetting("myPortal-pcdef", PortalContainerConfig.REALM_SETTING_NAME));
+ }
+ finally
+ {
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_portal.container");
+ PropertyManager.refresh();
+ }
// With internal settings
rootContainer = createRootContainer("portal-container-config-with-default-values-and-with-settings.xml");
@@ -1480,6 +1670,14 @@
{
System.getProperties().remove("TestPortalContainerConfig-string");
System.getProperties().remove("TestPortalContainerConfig-int");
+ // Clear the System Properties added by the PropertyConfigurator
+ System.getProperties().remove("_default.portal.container");
+ System.getProperties().remove("_default.rest.context");
+ System.getProperties().remove("_default.realm.name");
+ System.getProperties().remove("_portal.container");
+ System.getProperties().remove("_rest.context");
+ System.getProperties().remove("_realm.name");
+ PropertyManager.refresh();
}
// With both settings internal and external, and with invalid values
Modified: kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-both-settings-with-default-portal-def.xml
===================================================================
--- kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-both-settings-with-default-portal-def.xml 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-both-settings-with-default-portal-def.xml 2010-10-21 09:40:08 UTC (rev 3309)
@@ -16,17 +16,17 @@
<!-- The name of the default portal container -->
<value-param>
<name>default.portal.container</name>
- <value>myPortal</value>
+ <value>${_default.portal.container}</value>
</value-param>
<!-- The name of the default rest ServletContext -->
<value-param>
<name>default.rest.context</name>
- <value>myRest</value>
+ <value>${_default.rest.context}</value>
</value-param>
<!-- The name of the default realm -->
<value-param>
<name>default.realm.name</name>
- <value>my-exo-domain</value>
+ <value>${_default.realm.name}</value>
</value-param>
<!-- The default portal container definition -->
<!-- It cans be used to avoid duplicating configuration -->
@@ -142,6 +142,12 @@
<name>properties</name>
<property name="property_String" value="property_value_1" />
<property name="property_Int" value="60" />
+ <property name="_default.portal.container" value="myPortal" />
+ <property name="_default.rest.context" value="myRest" />
+ <property name="_default.realm.name" value="my-exo-domain" />
+ <property name="_portal.container" value="myPortal-pcdef" />
+ <property name="_rest.context" value="myRest-pcdef" />
+ <property name="_realm.name" value="my-exo-domain-pcdef" />
</properties-param>
</init-params>
</component>
@@ -161,15 +167,15 @@
<object type="org.exoplatform.container.definition.PortalContainerDefinition">
<!-- The name of the portal container -->
<field name="name">
- <string>myPortal-pcdef</string>
+ <string>${_portal.container}</string>
</field>
<!-- The name of the context name of the rest web application -->
<field name="restContextName">
- <string>myRest-pcdef</string>
+ <string>${_rest.context}</string>
</field>
<!-- The name of the realm -->
<field name="realmName">
- <string>my-exo-domain-pcdef</string>
+ <string>${_realm.name}</string>
</field>
<!-- A map of settings tied to the portal container -->
<field name="settings">
Modified: kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-default-portal-def.xml
===================================================================
--- kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-default-portal-def.xml 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-default-portal-def.xml 2010-10-21 09:40:08 UTC (rev 3309)
@@ -16,17 +16,17 @@
<!-- The name of the default portal container -->
<value-param>
<name>default.portal.container</name>
- <value>myPortal</value>
+ <value>${_default.portal.container}</value>
</value-param>
<!-- The name of the default rest ServletContext -->
<value-param>
<name>default.rest.context</name>
- <value>myRest</value>
+ <value>${_default.rest.context}</value>
</value-param>
<!-- The name of the default realm -->
<value-param>
<name>default.realm.name</name>
- <value>my-exo-domain</value>
+ <value>${_default.realm.name}</value>
</value-param>
<!-- The default portal container definition -->
<!-- It cans be used to avoid duplicating configuration -->
@@ -37,19 +37,19 @@
<!-- If this value is not null, it will replace the value defined
by the value-param "default.portal.container" -->
<field name="name">
- <string>myPortal-dpcdef</string>
+ <string>${_portal.container}</string>
</field>
<!-- The name of the context name of the rest web application -->
<!-- If this value is not null, it will replace the value defined
by the value-param "default.rest.context" -->
<field name="restContextName">
- <string>myRest-dpcdef</string>
+ <string>${_rest.context}</string>
</field>
<!-- The name of the realm -->
<!-- If this value is not null, it will replace the value defined
by the value-param "default.realm.name" -->
<field name="realmName">
- <string>my-exo-domain-dpcdef</string>
+ <string>${_realm.name}</string>
</field>
<!-- A map of settings tied to the default portal container -->
<field name="settings">
@@ -100,4 +100,19 @@
</object-param>
</init-params>
</component>
+ <component>
+ <key>PropertyManagerConfigurator</key>
+ <type>org.exoplatform.container.PropertyConfigurator</type>
+ <init-params>
+ <properties-param>
+ <name>properties</name>
+ <property name="_default.portal.container" value="myPortal" />
+ <property name="_default.rest.context" value="myRest" />
+ <property name="_default.realm.name" value="my-exo-domain" />
+ <property name="_portal.container" value="myPortal-dpcdef" />
+ <property name="_rest.context" value="myRest-dpcdef" />
+ <property name="_realm.name" value="my-exo-domain-dpcdef" />
+ </properties-param>
+ </init-params>
+ </component>
</configuration>
\ No newline at end of file
Modified: kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-empty-portal-def2.xml
===================================================================
--- kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-empty-portal-def2.xml 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-empty-portal-def2.xml 2010-10-21 09:40:08 UTC (rev 3309)
@@ -16,20 +16,33 @@
<!-- The name of the default portal container -->
<value-param>
<name>default.portal.container</name>
- <value>myPortal</value>
+ <value>${_default.portal.container}</value>
</value-param>
<!-- The name of the default rest ServletContext -->
<value-param>
<name>default.rest.context</name>
- <value>myRest</value>
+ <value>${_default.rest.context}</value>
</value-param>
<!-- The name of the default realm -->
<value-param>
<name>default.realm.name</name>
- <value>my-exo-domain</value>
+ <value>${_default.realm.name}</value>
</value-param>
</init-params>
</component>
+ <component>
+ <key>PropertyManagerConfigurator</key>
+ <type>org.exoplatform.container.PropertyConfigurator</type>
+ <init-params>
+ <properties-param>
+ <name>properties</name>
+ <property name="_default.portal.container" value="myPortal" />
+ <property name="_default.rest.context" value="myRest" />
+ <property name="_default.realm.name" value="my-exo-domain" />
+ <property name="_portal.container" value="myPortal-pcdef" />
+ </properties-param>
+ </init-params>
+ </component>
<external-component-plugins>
<!-- The full qualified name of the PortalContainerConfig -->
<target-component>org.exoplatform.container.definition.PortalContainerConfig</target-component>
@@ -46,7 +59,7 @@
<object type="org.exoplatform.container.definition.PortalContainerDefinition">
<!-- The name of the portal container -->
<field name="name">
- <string>myPortal-pcdef</string>
+ <string>${_portal.container}</string>
</field>
</object>
</object-param>
@@ -67,7 +80,7 @@
<!-- The list of the name of the portal containers to disable -->
<values-param>
<name>names</name>
- <value>myPortal-pcdef</value>
+ <value>${_portal.container}</value>
</values-param>
</init-params>
</component-plugin>
Modified: kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml
===================================================================
--- kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def-with-default-portal-def.xml 2010-10-21 09:40:08 UTC (rev 3309)
@@ -62,6 +62,16 @@
</object-param>
</init-params>
</component>
+ <component>
+ <key>PropertyManagerConfigurator</key>
+ <type>org.exoplatform.container.PropertyConfigurator</type>
+ <init-params>
+ <properties-param>
+ <name>properties</name>
+ <property name="_portal.container" value="myPortal-pcdef" />
+ </properties-param>
+ </init-params>
+ </component>
<external-component-plugins>
<!-- The full qualified name of the PortalContainerConfig -->
<target-component>org.exoplatform.container.definition.PortalContainerConfig</target-component>
@@ -78,7 +88,7 @@
<object type="org.exoplatform.container.definition.PortalContainerDefinition">
<!-- The name of the portal container -->
<field name="name">
- <string>myPortal-pcdef</string>
+ <string>${_portal.container}</string>
</field>
<!-- The name of the context name of the rest web application -->
<field name="restContextName">
@@ -107,7 +117,7 @@
<values-param>
<name>apply.specific</name>
<value>fake</value>
- <value>myPortal-pcdef</value>
+ <value>${_portal.container}</value>
</values-param>
<object-param profiles="AddDependencies">
<name>change</name>
@@ -233,7 +243,7 @@
<!-- The list of the name of the portal containers to disable -->
<values-param>
<name>names</name>
- <value>myPortal-pcdef</value>
+ <value>${_portal.container}</value>
</values-param>
</init-params>
</component-plugin>
Modified: kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def.xml
===================================================================
--- kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def.xml 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-default-values-and-with-portal-def.xml 2010-10-21 09:40:08 UTC (rev 3309)
@@ -31,14 +31,25 @@
<!-- Indicates whether the unregistered webapps have to be ignored -->
<value-param profiles="ignore.unregistered.webapp-false">
<name>ignore.unregistered.webapp</name>
- <value>false</value>
+ <value>${_ignore.unregistered.webapp.false}</value>
</value-param>
<value-param profiles="ignore.unregistered.webapp-true">
<name>ignore.unregistered.webapp</name>
- <value>true</value>
+ <value>${_ignore.unregistered.webapp.true}</value>
</value-param>
</init-params>
</component>
+ <component>
+ <key>PropertyManagerConfigurator</key>
+ <type>org.exoplatform.container.PropertyConfigurator</type>
+ <init-params>
+ <properties-param>
+ <name>properties</name>
+ <property name="_ignore.unregistered.webapp.true" value="true" />
+ <property name="_ignore.unregistered.webapp.false" value="false" />
+ </properties-param>
+ </init-params>
+ </component>
<external-component-plugins>
<!-- The full qualified name of the PortalContainerConfig -->
<target-component>org.exoplatform.container.definition.PortalContainerConfig</target-component>
Modified: kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-no-default-values-but-with-portal-defs.xml
===================================================================
--- kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-no-default-values-but-with-portal-defs.xml 2010-10-21 09:33:22 UTC (rev 3308)
+++ kernel/trunk/exo.kernel.container/src/test/resources/org/exoplatform/container/definition/portal-container-config-with-no-default-values-but-with-portal-defs.xml 2010-10-21 09:40:08 UTC (rev 3309)
@@ -12,6 +12,16 @@
<component>
<type>org.exoplatform.container.definition.PortalContainerConfig</type>
</component>
+ <component>
+ <key>PropertyManagerConfigurator</key>
+ <type>org.exoplatform.container.PropertyConfigurator</type>
+ <init-params>
+ <properties-param>
+ <name>properties</name>
+ <property name="_value.true" value="true" />
+ </properties-param>
+ </init-params>
+ </component>
<external-component-plugins>
<!-- The full qualified name of the PortalContainerConfig -->
<target-component>org.exoplatform.container.definition.PortalContainerConfig</target-component>
@@ -69,7 +79,7 @@
<init-params>
<value-param>
<name>apply.all</name>
- <value>true</value>
+ <value>${_value.true}</value>
</value-param>
<object-param>
<name>change1</name>
@@ -92,7 +102,7 @@
<init-params>
<value-param>
<name>apply.default</name>
- <value>true</value>
+ <value>${_value.true}</value>
</value-param>
<object-param>
<name>change2</name>
@@ -139,7 +149,7 @@
<init-params>
<value-param>
<name>apply.default</name>
- <value>true</value>
+ <value>${_value.true}</value>
</value-param>
<values-param>
<name>apply.specific</name>
More information about the exo-jcr-commits
mailing list