public InitialContextInitializer(InitParams params) throws NamingException, ConfigurationException,
FileNotFoundException, XMLStreamException
{
for (Iterator propsParams = params.getPropertiesParamIterator(); propsParams.hasNext();)
{
PropertiesParam propParam = (PropertiesParam)propsParams.next();
boolean isDefault = propParam.getName().equals(PROPERTIES_DEFAULT);
boolean isMandatory = propParam.getName().equals(PROPERTIES_MANDATORY);
for (Iterator props = propParam.getPropertyIterator(); props.hasNext();)
{
Property prop = (Property)props.next();
String propName = prop.getName();
String propValue = prop.getValue();
String existedProp = PrivilegedSystemHelper.getProperty(propName);
if (isMandatory)
{
setSystemProperty(propName, propValue, propParam.getName());
}
else if (isDefault)
{
if (existedProp == null)
{
setSystemProperty(propName, propValue, propParam.getName());
}
else
{
LOG.info("Using default system property: " + propName + " = " + existedProp);
}