public Bean _getParent() { return parent(); }
boolean isRootElement(BaseBean bean){ BaseBean parent = bean.parent(); boolean root; if(parent.name().equals(bean.name())){ root = true; } else { root = false; } return root; }
BaseBean getBean(BaseBean root, String name) { while (root != null && !root.isRoot()) { if (root.hasName(name)) return root; root = root.parent(); } return null; }
void adjustPathRoot() { if (this.parsingPath.startsWith("../")) { // NOI18N int i = this.parsingPath.lastIndexOf("../"); // NOI18N int n = i/3; do { for (int j=0; j<this.roots.length; j++) { if (this.roots[j].isRoot()) throw new Schema2BeansRuntimeException(Common.getMessage( "CantAccessBaseBeanNode_msg", this.parsingPath)); this.roots[j] = this.roots[j].parent(); } } while(n-- > 0); this.parsingPath = this.parsingPath.substring(i+3); } }
String getValue(BaseBean root, String name) { String val = null; if (root != null) { do { try { val = (String)root.getValue(name); break; } catch(Exception e) { // Unknown property name - ignore it } root = root.parent(); } while (root != null && !root.isRoot()); } return val; }
public String getXPath(){ ///String format = BundleReader.getValue("Name_Value_Pair_Format");//NOI18N ///Object[] arguments = new Object[]{"Name", baseBean.name()}; //NOI18N ///System.out.println(MessageFormat.format(format, arguments)); ///arguments = new Object[]{"FullName", baseBean.fullName()}; //NOI18N ///System.out.println(MessageFormat.format(format, arguments)); BaseBean bean = baseBean; BaseBean parentBean = null; String xpath = bean.dtdName(); ///boolean root = bean.isRoot(); boolean root = isRootElement(bean); parentBean = bean.parent(); while(!root){ xpath = parentBean.dtdName() + Constants.XPATH_DELIMITER + xpath; bean = parentBean; parentBean = bean.parent(); ///root = bean.isRoot(); root = isRootElement(bean); } xpath = Constants.XPATH_DELIMITER + xpath; return xpath; }
public int getCardinal(){ String name = baseBean.name(); BaseBean parent = baseBean.parent(); BaseProperty baseProperty = parent.getProperty(name); return baseProperty.getInstanceType(); }
int getIndex(BaseBean baseBean){ int index = -1; boolean root = isRootElement(baseBean); if(!root){ String name = baseBean.name(); BaseBean parent = baseBean.parent(); if(parent != null) { index = parent.indexOf(name, baseBean); } } return index; }
/** * Return the entry for the BaseBean, if any. */ RegEntry getRegEntry(BaseBean bean, boolean raise) { for (int i=0; i<this.scopes.size(); i++) { RegEntry se = (RegEntry)this.scopes.get(i); if (se.getBean() == bean) { return se; } } // Didn't find it - try to look for the root if ((bean != null) && !bean.isRoot()) { do { bean = bean.parent(); } while(bean != null && !bean.isRoot()); return this.getRegEntry(bean, raise); } if (raise) { throw new IllegalArgumentException(Common.getMessage( "BeanGraphEntryNotInRegistry_msg", bean.name())); } else return null; }
path = bean.parent().name();
public String getIndexedXPath() { BaseBean bean = baseBean; BaseBean parentBean = null; String xpath = bean.dtdName(); int index = getIndex(baseBean); if(index != -1){ xpath = utils.getIndexedName(xpath, index); } boolean root = isRootElement(bean); parentBean = bean.parent(); String name = null; while(!root){ name = parentBean.dtdName(); index = getIndex(parentBean); if(index != -1) { name = utils.getIndexedName(name, index); } xpath = name + Constants.XPATH_DELIMITER + xpath; bean = parentBean; parentBean = bean.parent(); root = isRootElement(bean); } xpath = Constants.XPATH_DELIMITER + xpath; return xpath; }