/** Parses sub-objects of the root element given for components. */ public void parse(Element root) { failed = false; if (timer != null) { timer.schedule(timeout); } ComponentQuery elements = ComponentQuery.query("Component", root); int count = elements.getLength(); for (int i = 0; i < count; ++i) { root = elements.getItem(i); if (getComponent(root) == null) { ComponentContainer cc = ComponentContainer.get(root, this); String requestId = createRequestId(cc); createComponent(cc, requestId); } } }
/** Creates a unique request id. */ private String createRequestId(ComponentContainer cc) { Date now = new Date(); String rtn = "r" + Math.random() + "__t" + now.getTime() + "__c" + cc.getType(); componentRequests.add(rtn); return (rtn); }