public Object Get(EventBean eventBean) { var asXml = eventBean.Underlying as XmlNode; if (asXml == null) { throw new PropertyAccessException("Mismatched property getter to event bean type, " + "the underlying data object is not of type Node"); } var result = getter.GetValueAsNodeArray(asXml); if (result == null) { return(null); } var array = Array.CreateInstance(componentType, result.Length); for (int i = 0; i < result.Length; i++) { var text = result[i].InnerText; if (string.IsNullOrEmpty(text)) { continue; } var parseResult = parser.Invoke(text); array.SetValue(parseResult, i); } return(array); }
public object Get(EventBean obj) { // The underlying is expected to be a map if (!(obj.Underlying is XmlNode)) { throw new PropertyAccessException( "Mismatched property getter to event bean type, " + "the underlying data object is not of type Node"); } var node = (XmlNode) obj.Underlying; var result = getter.GetValueAsNodeArray(node); if (result == null) { return null; } return GetDOMArrayFromNodes(result, componentType, parser); }
public Object Get(EventBean eventBean) { var asXml = eventBean.Underlying as XmlNode; if (asXml == null) { throw new PropertyAccessException("Mismatched property getter to event bean type, " + "the underlying data object is not of type Node"); } var result = _getter.GetValueAsNodeArray(asXml); if (result == null) { return(null); } return(GetDOMArrayFromNodes(result, _componentType, _parser)); }