nsresult		rv;
RDFTreeBuilderImpl::Notify(nsITimer *timer){	NS_VERIFY(NS_SUCCEEDED(NS_NewTimer(&mTimer)),		"couldn't get timer");	if (!mTimer)	return;	if (mRoot)	{#ifdef	DEBUG		nsIDOMXULElement	*domElement;		nsresult		rv;		if (NS_SUCCEEDED(rv = mRoot->QueryInterface(kIDomXulElementIID, (void **)&domElement)))		{			nsIRDFResource		*res;			if (NS_SUCCEEDED(rv = domElement->GetResource(&res)))			{				nsXPIDLCString	uri;				res->GetValue( getter_Copies(uri) );				const char	*url = uri;				printf("Timer fired for '%s'\n", url);				NS_RELEASE(res);			}			NS_RELEASE(domElement);		}#endif		nsIContent	*treeBody;		if (NS_SUCCEEDED(rv = nsRDFContentUtils::FindTreeBodyElement(mRoot, &treeBody)))		{			UpdateContainer(treeBody);			NS_RELEASE(treeBody);		}	}	// reschedule	mTimer->Init(this, /* PR_TRUE, */ BUILDER_NOTIFY_MINIMUM_TIMEOUT);}