public void attributes(Object o, QName elementName, ElementBinding element, Attributes attrs, NamespaceContext nsCtx)
{
Holder value = (Holder) o;
AbstractDependencyValueMetaData dependency = (AbstractDependencyValueMetaData) value.getValue();
for (int i = 0; i < attrs.getLength(); ++i)
{
String localName = attrs.getLocalName(i);
if ("bean".equals(localName))
dependency.setValue(attrs.getValue(i));
else if ("property".equals(localName))
dependency.setProperty(attrs.getValue(i));
else if ("state".equals(localName))
dependency.setDependentState(ControllerState.getInstance(attrs.getValue(i)));
else if ("whenRequired".equals(localName))
dependency.setWhenRequiredState(ControllerState.getInstance(attrs.getValue(i)));
}
}