use of org.exoplatform.container.xml.ManageableComponents in project kernel by exoplatform.
the class TestConfigurationXML method testTrimValue.
@SuppressWarnings("unchecked")
public void testTrimValue() throws Exception {
InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("test-trim-value.xml");
assertNotNull(is);
try {
IBindingFactory bfact = BindingDirectory.getFactory(XMLObject.class);
IUnmarshallingContext uctx = bfact.createUnmarshallingContext();
Configuration conf = (Configuration) uctx.unmarshalDocument(is, null);
assertNotNull(conf);
Iterator it = conf.getContainerLifecyclePluginIterator();
assertNotNull(it);
assertTrue(it.hasNext());
ContainerLifecyclePlugin conlp = (ContainerLifecyclePlugin) it.next();
assertEquals("container-lifecycle-plugin-type", conlp.getType());
assertNotNull(conlp.getInitParams());
assertEquals("container-lifecycle-plugin-value-param-value", (conlp.getInitParams().getValueParam("container-lifecycle-plugin-value-param-name")).getValue());
it = conf.getComponentLifecyclePluginIterator();
assertNotNull(it);
assertTrue(it.hasNext());
ComponentLifecyclePlugin comlp = (ComponentLifecyclePlugin) it.next();
assertEquals("component-lifecycle-plugin", comlp.getType());
ManageableComponents mc = comlp.getManageableComponents();
assertNotNull(mc);
assertEquals("manageable-components-component-type", mc.getComponentsType().get(0));
ValuesParam valuesParam = comlp.getInitParams().getValuesParam("component-lifecycle-plugin-values-param-name");
assertNotNull(valuesParam);
assertNotNull(valuesParam.getValues());
assertTrue(valuesParam.getValues().contains("component-lifecycle-plugin-values-param-value1"));
assertTrue(valuesParam.getValues().contains("component-lifecycle-plugin-values-param-value2"));
Component c = conf.getComponent("component-key1");
assertNotNull(c);
assertEquals("component-type1", c.getType());
PropertiesParam propertiesParam = c.getInitParams().getPropertiesParam("component-key1-properties-param-name");
assertNotNull(propertiesParam);
assertEquals("component-key1-properties-param-prop-value", propertiesParam.getProperty("component-key1-properties-param-prop-name"));
c = conf.getComponent("component-type2");
assertNotNull(c);
ObjectParameter objectParameter = c.getInitParams().getObjectParam("component-key2-object-param-name");
assertNotNull(objectParameter);
MyObject o = (MyObject) objectParameter.getObject();
assertNotNull(o);
assertEquals("string-value", o.field1);
assertEquals(1, o.field2);
assertEquals(1l, o.field3);
assertEquals(1d, o.field4);
assertEquals(true, o.field5);
assertNotNull(o.field6);
assertEquals("entry-value", o.field6.get("entry-name"));
assertNotNull(o.field7);
assertTrue(o.field7.contains("string-value"));
assertNotNull(o.field8);
assertEquals(1, o.field8[0]);
List list = c.getComponentPlugins();
assertNotNull(list);
assertFalse(list.isEmpty());
ComponentPlugin cp = (ComponentPlugin) list.get(0);
assertEquals("component-plugins-name", cp.getName());
assertEquals("set-method-name", cp.getSetMethod());
assertEquals("component-plugins-type", cp.getType());
assertEquals(1, cp.getPriority());
it = conf.getExternalComponentPluginsIterator();
assertNotNull(it);
assertTrue(it.hasNext());
ExternalComponentPlugins ecps = (ExternalComponentPlugins) it.next();
assertEquals("target-component-name", ecps.getTargetComponent());
list = ecps.getComponentPlugins();
assertNotNull(list);
assertFalse(list.isEmpty());
cp = (ComponentPlugin) list.get(0);
assertEquals("component-plugins-name", cp.getName());
assertEquals("set-method-name", cp.getSetMethod());
assertEquals("component-plugins-type", cp.getType());
assertEquals(1, cp.getPriority());
list = conf.getImports();
assertNotNull(list);
assertFalse(list.isEmpty());
assertEquals("import-value", list.get(0));
list = conf.getRemoveConfiguration();
assertNotNull(list);
assertFalse(list.isEmpty());
assertEquals("remove-configuration-value", list.get(0));
} finally {
try {
is.close();
} catch (Exception e) {
// ignore me
}
}
}
Aggregations