/** * Recursively sets the custom property value, by setting all values along the * property path. * * @param propertyDepth the current position along the property path * @param origValue the value to set the property to * @throws Exception if an error occurs */ protected void setProperty(int propertyDepth, Object origValue) throws Exception { PropertyDescriptor current = m_PropertyPath[propertyDepth].property; Object subVal = null; if (propertyDepth < m_PropertyPath.length - 1) { Method getter = current.getReadMethod(); Object getArgs[] = {}; subVal = getter.invoke(origValue, getArgs); setProperty(propertyDepth + 1, subVal); } else { subVal = Array.get(m_PropertyArray, m_PropertyNumber); } Method setter = current.getWriteMethod(); Object[] args = { subVal }; setter.invoke(origValue, args); }
/** * Recursively sets the custom property value, by setting all values along the * property path. * * @param propertyDepth the current position along the property path * @param origValue the value to set the property to * @throws Exception if an error occurs */ protected void setProperty(int propertyDepth, Object origValue) throws Exception { PropertyDescriptor current = m_PropertyPath[propertyDepth].property; Object subVal = null; if (propertyDepth < m_PropertyPath.length - 1) { Method getter = current.getReadMethod(); Object getArgs[] = {}; subVal = getter.invoke(origValue, getArgs); setProperty(propertyDepth + 1, subVal); } else { subVal = Array.get(m_PropertyArray, m_PropertyNumber); } Method setter = current.getWriteMethod(); Object[] args = { subVal }; setter.invoke(origValue, args); }
setProperty(0, m_ResultProducer); m_CurrentProperty = m_PropertyNumber;
setProperty(0, m_ResultProducer); m_CurrentProperty = m_PropertyNumber;