diff --git a/rdf/content/public/nsIRDFContentSink.h b/rdf/content/public/nsIRDFContentSink.h index a99b15cb0d41..127cf649f199 100644 --- a/rdf/content/public/nsIRDFContentSink.h +++ b/rdf/content/public/nsIRDFContentSink.h @@ -22,6 +22,7 @@ #include "nsIXMLContentSink.h" class nsIRDFDataSource; class nsINameSpaceManager; +class nsIURL; // {751843E2-8309-11d2-8EAC-00805F29F370} #define NS_IRDFCONTENTSINK_IID \ @@ -33,15 +34,20 @@ class nsINameSpaceManager; class nsIRDFContentSink : public nsIXMLContentSink { public: + /** + * Initialize the content sink. + */ + NS_IMETHOD Init(nsIURL* aURL, nsINameSpaceManager* aNameSpaceManager) = 0; + /** * Set the content sink's RDF Data source */ - NS_IMETHOD SetDataSource(nsIRDFDataSource* ds) = 0; + NS_IMETHOD SetDataSource(nsIRDFDataSource* aDataSource) = 0; /** * Retrieve the content sink's RDF data source. */ - NS_IMETHOD GetDataSource(nsIRDFDataSource*& result) = 0; + NS_IMETHOD GetDataSource(nsIRDFDataSource*& rDataSource) = 0; }; diff --git a/rdf/content/src/nsRDFContentSink.cpp b/rdf/content/src/nsRDFContentSink.cpp index e640f96e5d84..25fbf62aee09 100644 --- a/rdf/content/src/nsRDFContentSink.cpp +++ b/rdf/content/src/nsRDFContentSink.cpp @@ -301,29 +301,6 @@ nsRDFContentSink::~nsRDFContentSink() //////////////////////////////////////////////////////////////////////// -nsresult -nsRDFContentSink::Init(nsIURL* aURL, nsINameSpaceManager* aNameSpaceManager) -{ - NS_PRECONDITION((nsnull != aURL) && (nsnull != aNameSpaceManager), "null ptr"); - if ((! aURL) || (! aNameSpaceManager)) - return NS_ERROR_NULL_POINTER; - - mDocumentURL = aURL; - NS_ADDREF(aURL); - - mNameSpaceManager = aNameSpaceManager; - NS_ADDREF(mNameSpaceManager); - - nsresult rv; - if (NS_FAILED(rv = nsServiceManager::GetService(kRDFResourceManagerCID, - kIRDFResourceManagerIID, - (nsISupports**) &mResourceMgr))) - return rv; - - mState = eRDFContentSinkState_InProlog; - return NS_OK; -} - //////////////////////////////////////////////////////////////////////// // nsISupports interface @@ -588,6 +565,29 @@ nsRDFContentSink::AddEntityReference(const nsIParserNode& aNode) //////////////////////////////////////////////////////////////////////// // nsIRDFContentSink interface +NS_IMETHODIMP +nsRDFContentSink::Init(nsIURL* aURL, nsINameSpaceManager* aNameSpaceManager) +{ + NS_PRECONDITION((nsnull != aURL) && (nsnull != aNameSpaceManager), "null ptr"); + if ((! aURL) || (! aNameSpaceManager)) + return NS_ERROR_NULL_POINTER; + + mDocumentURL = aURL; + NS_ADDREF(aURL); + + mNameSpaceManager = aNameSpaceManager; + NS_ADDREF(mNameSpaceManager); + + nsresult rv; + if (NS_FAILED(rv = nsServiceManager::GetService(kRDFResourceManagerCID, + kIRDFResourceManagerIID, + (nsISupports**) &mResourceMgr))) + return rv; + + mState = eRDFContentSinkState_InProlog; + return NS_OK; +} + NS_IMETHODIMP nsRDFContentSink::SetDataSource(nsIRDFDataSource* ds) { diff --git a/rdf/content/src/nsRDFContentSink.h b/rdf/content/src/nsRDFContentSink.h index cb74145a3798..5b3140d986ef 100644 --- a/rdf/content/src/nsRDFContentSink.h +++ b/rdf/content/src/nsRDFContentSink.h @@ -46,8 +46,6 @@ public: nsRDFContentSink(); virtual ~nsRDFContentSink(); - virtual nsresult Init(nsIURL* aURL, nsINameSpaceManager* aNameSpaceManager); - // nsISupports NS_DECL_ISUPPORTS @@ -75,6 +73,7 @@ public: // nsIRDFContentSink NS_IMETHOD SetDataSource(nsIRDFDataSource* ds); NS_IMETHOD GetDataSource(nsIRDFDataSource*& ds); + NS_IMETHOD Init(nsIURL* aURL, nsINameSpaceManager* aNameSpaceManager); protected: // Text management