public void batchRelate( ModelRoot modelRoot, boolean relateProxies, boolean notifyChanges, boolean searchAllRoots) { InstanceList instances = null; ModelRoot baseRoot = modelRoot; // R1013 MessageArgument_c relInst39585 = (MessageArgument_c) baseRoot.getInstanceList(MessageArgument_c.class).get(new Object[] {m_arg_id}); // if there was no local element, check for any global elements // failing that proceed to check other model roots if (relInst39585 == null) { relInst39585 = (MessageArgument_c) Ooaofooa.getDefaultInstance() .getInstanceList(MessageArgument_c.class) .get(new Object[] {m_arg_id}); } if (relInst39585 == null && searchAllRoots && !baseRoot.isCompareRoot()) { Ooaofooa[] roots = Ooaofooa.getInstances(); for (int i = 0; i < roots.length; i++) { if (roots[i].isCompareRoot()) { // never use elements from any compare root continue; } relInst39585 = (MessageArgument_c) roots[i].getInstanceList(MessageArgument_c.class).get(new Object[] {m_arg_id}); if (relInst39585 != null) break; } } // synchronized if (relInst39585 != null) { if (relateProxies || !isProxy() || (inSameComponent(this, relInst39585) && !isProxy())) { relInst39585.relateAcrossR1013To(this, notifyChanges); } } }