{
/*
* so fragment doesn't override. See if the value
* specified matches that of the channel definition
*/
IPortletDefinitionParameter cp =
(IPortletDefinitionParameter) pubParms.get(name);
if (cp != null && cp.getValue().equals(newVal))
/*
* new value matches that of published channel to
* remove any user parameter spec since not needed
*/
pendingActions.add(new LPARemoveParameter
(nodeId, name, owner, ilfNode));
else
/*
* value doesn't match that of published chanel so
* we need change any existing parameter spec or add
* a new one if it doesn't exist.
*/
pendingActions.add(new LPAChangeParameter
(nodeId, name, newVal, owner, ilfNode));
} else if (!fragValue.equals(newVal))
{
/*
* so fragment does specify and user value is different
* so change any existing parameter spec or add a new
* one if it doesn't exist.
*/
pendingActions.add(new LPAChangeParameter
(nodeId, name, newVal, owner, ilfNode));
} else
{
/*
* new val same as fragment value so don't persist.
* remove any parameter spec if it exists.
*/
pendingActions.add(new LPAResetParameter
(nodeId, name, fragValue, owner, ilfNode));
}
}
else // not incorporated from a fragment
{
/*
* see if the value specified matches that of the channel
* definition.
*/
IPortletDefinitionParameter cp =
(IPortletDefinitionParameter) pubParms.get(name);
if (cp != null && cp.getValue().equals(newVal))
pendingActions.add(new LPARemoveParameter
(nodeId, name, owner, ilfNode));
else
pendingActions.add(new LPAChangeParameter
(nodeId, name, newVal, owner, ilfNode));