[jbosstools-commits] JBoss Tools SVN: r22448 - in trunk: jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template and 18 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Tue Jun 1 00:32:00 EDT 2010


Author: yradtsevich
Date: 2010-06-01 00:31:55 -0400 (Tue, 01 Jun 2010)
New Revision: 22448

Added:
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XPCOM.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XulRunnerVpeUtils.java
Removed:
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/XPCOM.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/browser/util/
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeUtils.java
Modified:
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/META-INF/MANIFEST.MF
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectManyListbox.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneListbox.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneMenuTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneRadioTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/InputNumberSliderTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesCalendarTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataDefinitionListTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableStyleClassesApplier.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSeparatorTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTabPanelTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesToggleControlTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeNodeTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesVirtualEarthTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/META-INF/MANIFEST.MF
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamMailBodyTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfAbstractChapterTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfCellTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfChapterTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfDocumentTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFontTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFooterTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfParagraphTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfSectionTemplate.java
   trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfTableTemplate.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.facelets.test/src/org/jboss/tools/jsf/vpe/facelets/test/FaceletsComponentTest.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/EditingSPecialSymbolsVPE_JBIDE3810.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1484Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1615Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1720Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1744Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2010Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2119Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2582Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3473Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3734Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1467Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1501Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1718Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/SelectWholeElement_JBIDE4713.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/META-INF/MANIFEST.MF
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesColumnsTemplateTestCase.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesComboBoxTemplateTestCase.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesPickListTemplateTestCase.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1579Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1606Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1613Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1713Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1548Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1580Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1614Test.java
   trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1682Test.java
   trunk/vpe/plugins/org.jboss.tools.vpe.html/META-INF/MANIFEST.MF
   trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlCommentTemplate.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/META-INF/MANIFEST.MF
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/browser/XulRunnerBrowser.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/Flasher.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseListener.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseMotionListener.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeResizer.java
   trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/DOMTreeDumper.java
   trunk/vpe/tests/org.jboss.tools.vpe.html.test/src/org/jboss/tools/vpe/html/test/jbide/JBIDE3280Test.java
   trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java
Log:
https://jira.jboss.org/browse/JBIDE-6393
Create generic queryInterface method
- All calls of nsISupports.queryInterface have been replaced by XPCOM.queryInterface.
- Utility classes of the plug-in org.jboss.tools.vpe.xulrunner have been moved to the package org.jboss.tools.vpe.xulrunner.util

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/META-INF/MANIFEST.MF
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/META-INF/MANIFEST.MF	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/META-INF/MANIFEST.MF	2010-06-01 04:31:55 UTC (rev 22448)
@@ -18,7 +18,8 @@
  org.jboss.tools.vpe.html,
  org.jboss.tools.jsf;bundle-version="2.0.0",
  org.eclipse.ui.ide,
- org.eclipse.ui.editors
+ org.eclipse.ui.editors,
+ org.jboss.tools.vpe.xulrunner
 Bundle-ActivationPolicy: lazy
 Export-Package: org.jboss.tools.jsf.vpe.jsf.template,
  org.jboss.tools.jsf.vpe.jsf.template.selectitem,

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectManyListbox.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectManyListbox.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectManyListbox.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -154,8 +156,7 @@
 			nsIDOMNode visualNode, Object data, String name) {
 
 		// get DOMElement(root element is select)
-		nsIDOMElement select = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement select = queryInterface(visualNode, nsIDOMElement.class);
 
 		// remove attribute
 		select.removeAttribute(name);

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneListbox.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneListbox.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneListbox.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,9 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.template;
 
+
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -155,8 +158,7 @@
 			nsIDOMNode visualNode, Object data, String name) {
 
 		// get DOMElement(root element is select)
-		nsIDOMElement select = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement select = queryInterface(visualNode, nsIDOMElement.class);
 
 		// remove attribute
 		select.removeAttribute(name);
@@ -174,8 +176,7 @@
 		boolean disabled = false;
 		try {
 			nsIDOMNodeList list = node.getChildNodes();
-			nsIDOMElement element = (nsIDOMElement) node
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement element = queryInterface(node, nsIDOMElement.class);
 			disabled = ComponentUtil.string2boolean(ComponentUtil.getAttribute(
 					sourceElement, HTML.ATTR_DISABLED))
 					|| ComponentUtil.string2boolean(ATTR_LIST_COPY

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneMenuTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneMenuTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneMenuTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -117,8 +119,7 @@
 			nsIDOMNode visualNode, Object data, String name) {
 
 		// get DOMElement(root element is select)
-		nsIDOMElement select = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement select = queryInterface(visualNode, nsIDOMElement.class);
 
 		// remove attribute
 		select.removeAttribute(name);
@@ -136,8 +137,7 @@
 		boolean disabled = false;
 		try {
 			nsIDOMNodeList list = node.getChildNodes();
-			nsIDOMElement element = (nsIDOMElement) node
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement element = queryInterface(node, nsIDOMElement.class);
 			disabled = ComponentUtil.string2boolean(ComponentUtil.getAttribute(
 					sourceElement, HTML.ATTR_DISABLED));
 			if (node.getNodeName().equalsIgnoreCase(HTML.TAG_OPTION)) {

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneRadioTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneRadioTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.jsf/src/org/jboss/tools/jsf/vpe/jsf/template/JsfSelectOneRadioTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.jsf.template.selectitem.AbstractRadioSelectItemTemplate;
 import org.jboss.tools.jsf.vpe.jsf.template.util.ComponentUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
@@ -136,8 +138,7 @@
 	boolean disabled = false;
 	try {
 	    nsIDOMNodeList list = node.getChildNodes();
-	    nsIDOMElement element = (nsIDOMElement) node
-		    .queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement element = queryInterface(node, nsIDOMElement.class);
 	    disabled = ComponentUtil.string2boolean(ComponentUtil.getAttribute(
 		    sourceElement, HTML.ATTR_DISABLED));
 	    if (node.getNodeName().equalsIgnoreCase(HTML.TAG_INPUT)) {

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,6 +11,7 @@
 
 package org.jboss.tools.jsf.vpe.richfaces;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.io.File;
 import java.math.BigDecimal;
@@ -344,8 +345,7 @@
 		for (int i = 0; i < len; i++) {
 		    nsIDOMNode item = children.item(i);
 		    try {
-			nsIDOMElement elem = (nsIDOMElement) item
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement elem = queryInterface(item, nsIDOMElement.class);
 			result.add(elem);
 		    } catch (XPCOMException ex) {
 			// just ignore this exception

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/InputNumberSliderTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/InputNumberSliderTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/InputNumberSliderTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,8 +10,9 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
@@ -21,7 +22,6 @@
 import org.jboss.tools.vpe.editor.mapping.AttributeData;
 import org.jboss.tools.vpe.editor.mapping.NodeData;
 import org.jboss.tools.vpe.editor.mapping.VpeElementData;
-import org.jboss.tools.vpe.editor.template.VpeChildrenInfo;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
 import org.jboss.tools.vpe.editor.util.Constants;
 import org.jboss.tools.vpe.editor.util.HTML;
@@ -293,8 +293,7 @@
 			append(styleClasses.get("input")).toString(); //$NON-NLS-1$
 		inputField.setAttribute(HTML.ATTR_CLASS, inputClass);
 
-		nsIDOMHTMLInputElement iDOMInputElement = (nsIDOMHTMLInputElement) inputField
-				.queryInterface(nsIDOMHTMLInputElement.NS_IDOMHTMLINPUTELEMENT_IID);
+		nsIDOMHTMLInputElement iDOMInputElement = queryInterface(inputField, nsIDOMHTMLInputElement.class);
 		iDOMInputElement.setReadOnly(false);
 
 		inputTD.appendChild(inputField);

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesCalendarTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesCalendarTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesCalendarTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -9,6 +9,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.text.DateFormatSymbols;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
@@ -581,12 +583,10 @@
 			String popup = sourceElement.getAttribute(RichFaces.ATTR_POPUP);
 			if (popup != null && popup.equalsIgnoreCase(Constants.FALSE))
 				return;
-			nsIDOMElement element = (nsIDOMElement) visualNode
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement element = queryInterface(visualNode, nsIDOMElement.class);
 			nsIDOMNodeList list = element.getChildNodes();
 			nsIDOMNode tableNode = list.item(0);
-			nsIDOMElement input = (nsIDOMElement) tableNode
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement input = queryInterface(tableNode, nsIDOMElement.class);
 			input.setAttribute(HTML.ATTR_VALUE, value);
 		}
 

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataDefinitionListTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataDefinitionListTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataDefinitionListTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -197,7 +197,7 @@
 //	 * @param name
 //	 */
 //	private void processAttributeChanges(VpePageContext pageContext, Element sourceElement, nsIDOMDocument visualDocument, nsIDOMNode visualNode, Object data, String name) {
-//		nsIDOMElement el = (nsIDOMElement) visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+//		nsIDOMElement el = queryInterface(visualNode, nsIDOMElement.class);
 //		if (HTML.ATTR_STYLE.equals(name)) {
 //			ComponentUtil.correctAttribute(sourceElement, el, name, name, null, null);
 //		} else if (RichFaces.ATTR_STYLE_CLASS.equals(name)) {
@@ -211,7 +211,7 @@
 //				if ((temp != null)
 //						&& (temp.getNodeName()
 //								.equalsIgnoreCase(HTML.TAG_DT))) {
-//					nsIDOMElement tempVisualElement = (nsIDOMElement)temp.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID); 
+//					nsIDOMElement tempVisualElement = queryInterface(temp, nsIDOMElement.class); 
 //					ComponentUtil.correctAttribute(sourceElement, 
 //							tempVisualElement,
 //							RichFaces.ATTR_HEADER_CLASS,
@@ -228,7 +228,7 @@
 //				if ((temp != null )
 //						&& (temp.getNodeName()
 //								.equalsIgnoreCase(HTML.TAG_DD))) {
-//					nsIDOMElement tempVisualElement = (nsIDOMElement)temp.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID); 
+//					nsIDOMElement tempVisualElement = queryInterface(temp, nsIDOMElement.class); 
 //					ComponentUtil.correctAttribute(sourceElement, 
 //							tempVisualElement,
 //							RichFaces.ATTR_ROW_CLASSES,
@@ -245,7 +245,7 @@
 //				if ((temp != null)
 //						&& (temp.getNodeName()
 //								.equalsIgnoreCase(HTML.TAG_DD))) {
-//					nsIDOMElement tempVisualElement = (nsIDOMElement)temp.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+//					nsIDOMElement tempVisualElement = queryInterface(temp, nsIDOMElement.class);
 //					ComponentUtil.correctAttribute(
 //							sourceElement, 
 //							tempVisualElement,							

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/ 
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -226,13 +228,13 @@
 	
 	@Override
 	public void removeAttribute(VpePageContext pageContext, Element sourceElement, nsIDOMDocument visualDocument, nsIDOMNode visualNode, Object data, String name) {
-		nsIDOMElement visualElement = (nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID); 
+		nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class); 
 		visualElement.removeAttribute(name);
 	}
 
 	@Override
 	public void setAttribute(VpePageContext pageContext, Element sourceElement, nsIDOMDocument visualDocument, nsIDOMNode visualNode, Object data, String name, String value) {
-		nsIDOMElement visualElement = (nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID); 
+		nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class); 
 		visualElement.setAttribute(name, value);
 	}
 

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableStyleClassesApplier.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableStyleClassesApplier.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableStyleClassesApplier.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
   ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.List;
 
 import org.jboss.tools.jsf.vpe.richfaces.template.util.RichFaces;
@@ -17,8 +19,6 @@
 import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
 import org.jboss.tools.vpe.editor.template.expression.VpeExpression;
-import org.jboss.tools.vpe.editor.template.expression.VpeExpressionBuilder;
-import org.jboss.tools.vpe.editor.template.expression.VpeExpressionBuilderException;
 import org.jboss.tools.vpe.editor.template.expression.VpeExpressionException;
 import org.jboss.tools.vpe.editor.util.HTML;
 import org.jboss.tools.vpe.editor.util.VpeClassUtil;
@@ -88,7 +88,7 @@
 			if (tableChild.getNodeType() == nsIDOMNode.ELEMENT_NODE 
 					&& HTML.TAG_TR.equalsIgnoreCase( tableChild.getNodeName() )) {
 				final nsIDOMElement row = 
-					(nsIDOMElement) tableChild.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+					queryInterface(tableChild, nsIDOMElement.class);
 
 				applyClass(rowClasses, row, rowIndex);
 
@@ -113,7 +113,7 @@
 				if (rowChild.getNodeType() == nsIDOMNode.ELEMENT_NODE 
 						&& HTML.TAG_TD.equalsIgnoreCase( rowChild.getNodeName() )) {
 					final nsIDOMElement cell = 
-						(nsIDOMElement) rowChild.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+						queryInterface(rowChild, nsIDOMElement.class);
 					
 					applyClass(columnClasses, cell, columnIndex);
 					

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -377,13 +379,13 @@
 
 	@Override
 	public void removeAttribute(VpePageContext pageContext, Element sourceElement, nsIDOMDocument visualDocument, nsIDOMNode visualNode, Object data, String name) {
-		nsIDOMElement visualElement = (nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID); 
+		nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class); 
 		visualElement.removeAttribute(name);
 	}
 
 	@Override
 	public void setAttribute(VpePageContext pageContext, Element sourceElement, nsIDOMDocument visualDocument, nsIDOMNode visualNode, Object data, String name, String value) {
-		nsIDOMElement visualElement = (nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID); 
+		nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class); 
 		visualElement.setAttribute(name, value);
 	}
 }

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 
 import org.jboss.tools.jsf.vpe.richfaces.ComponentUtil;
@@ -510,8 +512,7 @@
 			RichFacesTemplatesActivator.getPluginLog().logError(e);
 		}
 		
-		final nsIDOMElement mainTable = (nsIDOMElement) mainTableWrapperChildren.item(0)
-			.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		final nsIDOMElement mainTable = queryInterface(mainTableWrapperChildren.item(0), nsIDOMElement.class);
 		
 		final RichFacesDataTableStyleClassesApplier styleClassesApplier = 
 			new RichFacesDataTableStyleClassesApplier(visualDocument, 

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSeparatorTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSeparatorTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSeparatorTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/ 
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.richfaces.ComponentUtil;
 import org.jboss.tools.jsf.vpe.richfaces.HtmlComponentUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
@@ -116,7 +118,7 @@
 	@Override
 	public void removeAttribute(VpePageContext pageContext,  Element sourceElement, nsIDOMDocument visualDocument, nsIDOMNode visualNode, Object data, String name) {
 		super.removeAttribute(pageContext, sourceElement, visualDocument, visualNode, data, name);
-		nsIDOMElement element = (nsIDOMElement) visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement element = queryInterface(visualNode, nsIDOMElement.class);
 		nsIDOMElement line = getLineElement(element);
 		String style = sourceElement.getAttribute(HtmlComponentUtil.HTML_STYLE_ATTR);
 		String width = sourceElement.getAttribute(HtmlComponentUtil.HTML_ATR_WIDTH);
@@ -169,7 +171,7 @@
 		String newStyle;
 		super.setAttribute(pageContext, sourceElement, visualDocument,
 				visualNode, data, name, value);
-		nsIDOMElement element = (nsIDOMElement) visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement element = queryInterface(visualNode, nsIDOMElement.class);
 		nsIDOMElement line = getLineElement(element);
 		String style = sourceElement
 				.getAttribute(HtmlComponentUtil.HTML_STYLE_ATTR);
@@ -309,7 +311,7 @@
 	private nsIDOMElement getLineElement(nsIDOMElement parent) {
 		nsIDOMNodeList list = parent.getChildNodes();
 		nsIDOMNode node = list.item(0);
-		nsIDOMElement element = (nsIDOMElement) node.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement element = queryInterface(node, nsIDOMElement.class);
 		return element;
 	}
 

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTabPanelTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTabPanelTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTabPanelTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/ 
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -350,7 +352,7 @@
 		ComponentUtil.findAllElementsByName(data.getNode(), elements, HTML.TAG_TABLE);
 		for (nsIDOMNode node : elements) {
 			try {
-			nsIDOMElement element = (nsIDOMElement) node.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement element = queryInterface(node, nsIDOMElement.class);
 			if (ComponentUtil.getAttribute(element, RichFacesTabTemplate.TAB_HEADER_ATTR).equalsIgnoreCase(YES)) {
 				element.removeAttribute(HTML.ATTR_STYLE);
 			}

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesToggleControlTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesToggleControlTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesToggleControlTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/ 
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -100,8 +102,7 @@
 		
 		for (nsIDOMNode child : children) {
 			if (child instanceof nsIDOMElement) {
-				nsIDOMElement childElement = (nsIDOMElement)child
-						.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+				nsIDOMElement childElement = queryInterface(child, nsIDOMElement.class);
 				childElement.setAttribute(attrName, attrValue);
 				applyAttributeValueOnChildren(attrName, attrValue, ComponentUtil.getChildren(childElement));
 			}

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeNodeTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeNodeTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeNodeTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.richfaces.ComponentUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
@@ -73,30 +75,28 @@
 	 * in model
 	 */
 	if (NODE_ICON_EXPANDED_ATTR_NAME.equalsIgnoreCase(name)) {
-	    nsIDOMElement expandedIconCell = (nsIDOMElement) visualNode
-		    .getChildNodes().item(0).queryInterface(
-			    nsIDOMElement.NS_IDOMELEMENT_IID);
-	    nsIDOMElement img = (nsIDOMElement) expandedIconCell
-		    .getChildNodes().item(0).queryInterface(
-			    nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement expandedIconCell = queryInterface(
+	    		visualNode.getChildNodes().item(0), nsIDOMElement.class);
+	    nsIDOMElement img = queryInterface(expandedIconCell.getChildNodes().item(0),
+			    nsIDOMElement.class);
 	    ComponentUtil.setImgFromResources(pageContext, img, value,
 		    UNDEFINED_ICON);
 	    img.setAttribute(ICON_PARAM_NAME, Constants.EMPTY);
 	} else if (NODE_ICON_ATTR_NAME.equals(name)
 		&& !isLastElement(visualNode)) {
-	    nsIDOMElement iconCell = (nsIDOMElement) visualNode.getChildNodes()
-		    .item(1).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-	    nsIDOMElement img = (nsIDOMElement) iconCell.getChildNodes()
-		    .item(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement iconCell = queryInterface(visualNode.getChildNodes().item(1),
+	    		nsIDOMElement.class);
+	    nsIDOMElement img = queryInterface(iconCell.getChildNodes().item(0),
+	    		nsIDOMElement.class);
 	    ComponentUtil.setImgFromResources(pageContext, img, value,
 		    UNDEFINED_ICON);
 	    img.setAttribute(ICON_PARAM_NAME, Constants.EMPTY);
 	} else if (NODE_ICON_LEAF_ATTR_NAME.equals(name)
 		&& isLastElement(sourceElement)) {
-	    nsIDOMElement iconCell = (nsIDOMElement) visualNode.getChildNodes()
-		    .item(1).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-	    nsIDOMElement img = (nsIDOMElement) iconCell.getChildNodes()
-		    .item(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement iconCell = queryInterface(visualNode.getChildNodes().item(1),
+	    		nsIDOMElement.class);
+	    nsIDOMElement img = queryInterface(iconCell.getChildNodes().item(0),
+	    		nsIDOMElement.class);
 	    ComponentUtil.setImgFromResources(pageContext, img, value,
 		    UNDEFINED_ICON);
 	    img.setAttribute(ICON_PARAM_NAME, Constants.EMPTY);
@@ -115,12 +115,10 @@
 
 	boolean showLinesValue = getShowLinesAttr(sourceElement);
 	if (NODE_ICON_EXPANDED_ATTR_NAME.equalsIgnoreCase(name)) {
-	    nsIDOMElement expandedIconCell = (nsIDOMElement) visualNode
-		    .getChildNodes().item(0).queryInterface(
-			    nsIDOMElement.NS_IDOMELEMENT_IID);
-	    nsIDOMElement img = (nsIDOMElement) expandedIconCell
-		    .getChildNodes().item(0).queryInterface(
-			    nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement expandedIconCell = queryInterface(visualNode
+	    		.getChildNodes().item(0), nsIDOMElement.class);
+	    nsIDOMElement img = queryInterface(expandedIconCell.getChildNodes().item(0),
+			    nsIDOMElement.class);
 	    String parentAttrName = ((Element) sourceElement.getParentNode())
 		    .getAttribute(NODE_ICON_EXPANDED_ATTR_NAME);
 	    if (parentAttrName == null || parentAttrName.length() == 0) {
@@ -136,11 +134,11 @@
 			    DEFAULT_ICON_EXPANDED_PARAM_VALUE);
 	} else if (NODE_ICON_ATTR_NAME.equalsIgnoreCase(name)
 		&& !isLastElement(sourceElement)) {
-	    nsIDOMElement iconCell = (nsIDOMElement) visualNode.getChildNodes()
-		    .item(1).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement iconCell = queryInterface(visualNode.getChildNodes().item(1),
+	    		nsIDOMElement.class);
 
-	    nsIDOMElement img = (nsIDOMElement) iconCell.getChildNodes()
-		    .item(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement img = queryInterface(iconCell.getChildNodes().item(0),
+	    		nsIDOMElement.class);
 	    String parentAttrName = ((Element) sourceElement.getParentNode())
 		    .getAttribute(NODE_ICON_ATTR_NAME);
 	    if (parentAttrName == null || parentAttrName.length() == 0) {
@@ -155,10 +153,9 @@
 
 	} else if (NODE_ICON_LEAF_ATTR_NAME.equalsIgnoreCase(name)
 		&& isLastElement(sourceElement)) {
-	    nsIDOMElement iconCell = (nsIDOMElement) visualNode.getChildNodes()
-		    .item(1).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-	    nsIDOMElement img = (nsIDOMElement) iconCell.getChildNodes()
-		    .item(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement iconCell = queryInterface(visualNode.getChildNodes().item(1),
+	    		nsIDOMElement.class);
+	    nsIDOMElement img = queryInterface(iconCell.getChildNodes().item(0), nsIDOMElement.class);
 	    String parentAttrName = ((Element) sourceElement.getParentNode())
 		    .getAttribute(NODE_ICON_LEAF_ATTR_NAME);
 	    if (parentAttrName == null || parentAttrName.length() == 0) {

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesTreeTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.richfaces.ComponentUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
@@ -139,8 +141,7 @@
     private void setAttributeToTree(nsIDOMNode node, String attrName,
 	    String attrValue) {
 	try {
-	    nsIDOMElement element = (nsIDOMElement) node
-		    .queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement element = queryInterface(node, nsIDOMElement.class);
 	    if (node.getNodeName().equalsIgnoreCase(
 		    HTML.TAG_TABLE)) {
 		element.setAttribute(attrName, attrValue);
@@ -186,8 +187,7 @@
 
 	try {
 	    nsIDOMNodeList list = node.getChildNodes();
-	    nsIDOMElement element = (nsIDOMElement) node
-		    .queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement element = queryInterface(node, nsIDOMElement.class);
 	    String id = element
 		    .getAttribute(RichFacesTreeNodesAdaptorTemplate.ID_ATTR_NAME);
 	    if (id == null)
@@ -295,7 +295,7 @@
 	} else if (HTML.ATTR_STYLE.equalsIgnoreCase(name)) {
 	    setAttributeToTree(visualNode, HTML.ATTR_STYLE,
 		    removeFromStyleWithAndHeight(value));
-	    nsIDOMElement visualElement = (nsIDOMElement) visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class);
 	    visualElement.setAttribute(
 		    HTML.ATTR_STYLE, value);
 	}

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesVirtualEarthTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesVirtualEarthTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesVirtualEarthTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.richfaces.ComponentUtil;
 import org.jboss.tools.jsf.vpe.richfaces.HtmlComponentUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
@@ -78,8 +80,7 @@
 			nsIDOMDocument visualDocument, nsIDOMNode visualNode, Object data,
 			String name, String value) {
 
-		nsIDOMElement img = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement img = queryInterface(visualNode, nsIDOMElement.class);
 
 		if (name.equalsIgnoreCase(MAP_STYLE_ATTRIBUTE_NAME)) {
 			if (value.trim().equalsIgnoreCase("") //$NON-NLS-1$
@@ -114,8 +115,7 @@
 			Element sourceElement, nsIDOMDocument visualDocument,
 			nsIDOMNode visualNode, Object data, String name) {
 
-		nsIDOMElement img = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement img = queryInterface(visualNode, nsIDOMElement.class);
 
 		if (name.equalsIgnoreCase(MAP_STYLE_ATTRIBUTE_NAME)) {
 			ComponentUtil.setImg(img, EARTH_ROAD);

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/META-INF/MANIFEST.MF
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/META-INF/MANIFEST.MF	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/META-INF/MANIFEST.MF	2010-06-01 04:31:55 UTC (rev 22448)
@@ -16,7 +16,8 @@
  org.mozilla.xpcom;bundle-version="1.9.1",
  org.jboss.tools.jsf.vpe.jsf;bundle-version="2.1.0",
  org.eclipse.jface.text;bundle-version="3.5.0",
- org.eclipse.wst.sse.core;bundle-version="1.1.4"
+ org.eclipse.wst.sse.core;bundle-version="1.1.4",
+ org.jboss.tools.vpe.xulrunner
 Bundle-Vendor: %Bundle-Vendor.0
 Bundle-ActivationPolicy: lazy
 Bundle-ClassPath: lib/antlr.jar,

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamMailBodyTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamMailBodyTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamMailBodyTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.seam.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
@@ -38,7 +40,7 @@
 
 	private nsIDOMNode clearAllStyleAttrs(nsIDOMNode visualNode) {
 		if (visualNode.getNodeType() == nsIDOMNode.ELEMENT_NODE) {
-			nsIDOMElement visualElement = (nsIDOMElement) visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class);
 			visualElement.removeAttribute(HTML.ATTR_CLASS);
 			visualElement.removeAttribute(HTML.ATTR_STYLE);
 		}

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfAbstractChapterTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfAbstractChapterTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfAbstractChapterTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -14,6 +14,8 @@
  * @author yzhishko
  */
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.seam.template.util.SeamUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
@@ -55,8 +57,7 @@
 		for (int i = 0; i < children.getLength(); i++) {
 			nsIDOMNode child = children.item(i);
 			if (HTML.TAG_SPAN.equalsIgnoreCase(child.getNodeName())) {
-				nsIDOMElement childElement = (nsIDOMElement) child
-						.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+				nsIDOMElement childElement = queryInterface(child, nsIDOMElement.class);
 				String attrType = childElement
 						.getAttribute(SeamUtil.SEAM_ATTR_TYPE_ID);
 				if (attrType != null

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfCellTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfCellTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfCellTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -13,6 +13,7 @@
 /**
  * @author yzhishko
  */
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import org.jboss.tools.jsf.vpe.seam.template.util.SeamUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
@@ -34,8 +35,7 @@
 			nsIDOMDocument visualDocument) {
 		sourceElement = (Element) sourceNode;
 		nsIDOMNode visualNode = visualDocument.createElement(HTML.TAG_TD);
-		visualElement = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		visualElement = queryInterface(visualNode, nsIDOMElement.class);
 		copyAttrs(visualElement, sourceElement);
 		visualElement.setAttribute(HTML.ATTR_STYLE, "border-width: 2px; border-color: black; border-style: solid"); //$NON-NLS-1$
 		return new VpeCreationData(visualElement);

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfChapterTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfChapterTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfChapterTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -14,6 +14,8 @@
  * @author yzhishko
  */
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
 import org.jboss.tools.vpe.editor.util.HTML;
@@ -63,8 +65,7 @@
 			if (children.item(i).getNodeType() == nsIDOMNode.ELEMENT_NODE) {
 				if (children.item(i).getNodeName()
 						.equalsIgnoreCase(HTML.TAG_H1)) {
-					return (nsIDOMElement) children.item(i).queryInterface(
-							nsIDOMElement.NS_IDOMELEMENT_IID);
+					return queryInterface(children.item(i), nsIDOMElement.class);
 				}
 			}
 		}

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfDocumentTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfDocumentTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfDocumentTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -13,6 +13,7 @@
 /**
  * @author yzhishko
  */
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -36,8 +37,7 @@
 	public VpeCreationData create(VpePageContext pageContext, Node sourceNode,
 			nsIDOMDocument visualDocument) {
 		nsIDOMNode headNode = visualDocument.createElement(HTML.TAG_DIV);
-		headElement = (nsIDOMElement) headNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		headElement = queryInterface(headNode, nsIDOMElement.class);
 		sourceElement = (Element) sourceNode;
 		setMarginValues();
 		return new VpeCreationData(headElement);
@@ -95,8 +95,8 @@
 
 	private void setFooter(VpePageContext pageContext, Node sourceNode,
 			VpeCreationData data) {
-		nsIDOMNode[] footers = findFootersForVisualDoc((nsIDOMElement) data
-				.getNode().queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID));
+		nsIDOMNode[] footers = findFootersForVisualDoc(
+				queryInterface(data.getNode(), nsIDOMElement.class));
 		int footersLength = footers.length;
 		if (footersLength == 0) {
 			return;
@@ -125,8 +125,7 @@
 				.getElementsByTagName(HTML.TAG_DIV);
 		List<nsIDOMElement> childrenElements = new ArrayList<nsIDOMElement>();
 		for (int i = 0; i < children.getLength(); i++) {
-			nsIDOMElement childElement = (nsIDOMElement) children.item(i)
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement childElement = queryInterface(children.item(i), nsIDOMElement.class);
 			String attrType = childElement
 					.getAttribute(SeamUtil.SEAM_ATTR_TYPE_ID);
 			if (attrType != null

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFontTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFontTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFontTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.seam.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.seam.template.util.SeamUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
@@ -26,8 +28,7 @@
 			nsIDOMDocument visualDocument) {
 		nsIDOMNode visualNode = visualDocument.createElement(HTML.TAG_SPAN);
 		String styleAttrValue = SeamUtil.getStyleAttr(sourceNode);
-		nsIDOMElement visualElement = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class);
 		visualElement.setAttribute(HTML.ATTR_STYLE, styleAttrValue);
 		return new VpeCreationData(visualElement);
 	}

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFooterTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFooterTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfFooterTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -14,6 +14,8 @@
  * @author yzhishko
  */
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jsf.vpe.seam.template.util.SeamUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeCreationData;
@@ -33,8 +35,7 @@
 			nsIDOMDocument visualDocument) {
 		sourceElement = (Element) sourceNode;
 		nsIDOMNode visualNode = visualDocument.createElement(HTML.TAG_DIV);
-		visualElement = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		visualElement = queryInterface(visualNode, nsIDOMElement.class);
 		SeamUtil.setAlignment(sourceElement, visualElement);
 		Node parentFontNode = SeamUtil.getParentByName(pageContext, sourceNode,
 				"p:font"); //$NON-NLS-1$

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfParagraphTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfParagraphTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfParagraphTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -13,6 +13,7 @@
 /**
  * @author yzhishko
  */
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import org.jboss.tools.jsf.vpe.seam.template.util.SeamUtil;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
@@ -36,8 +37,7 @@
 		this.visualDocument = visualDocument;
 		sourceElement = (Element) sourceNode;
 		nsIDOMNode visualNode = visualDocument.createElement(HTML.TAG_DIV);
-		visualElement = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		visualElement = queryInterface(visualNode, nsIDOMElement.class);
 		processFirstChild();
 		SeamUtil.setAlignment(sourceElement, visualElement);
 		return new VpeCreationData(visualElement);

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfSectionTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfSectionTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfSectionTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -13,6 +13,7 @@
 /**
  * @author yzhishko
  */
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.StringTokenizer;
 
@@ -147,8 +148,7 @@
 						|| HTML.TAG_H4.equalsIgnoreCase(nodeName)
 						|| HTML.TAG_H5.equalsIgnoreCase(nodeName)
 						|| HTML.TAG_H6.equalsIgnoreCase(nodeName)) {
-					return (nsIDOMElement) children.item(i).queryInterface(
-							nsIDOMElement.NS_IDOMELEMENT_IID);
+					return queryInterface(children.item(i), nsIDOMElement.class);
 				}
 			}
 		}

Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfTableTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfTableTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.seam/src/org/jboss/tools/jsf/vpe/seam/template/SeamPdfTableTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -13,6 +13,7 @@
 /**
  * @author yzhishko
  */
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -39,11 +40,9 @@
 		sourceElement = (Element) sourceNode;
 		nsIDOMNode visualNode = visualDocument.createElement(HTML.TAG_DIV);
 		nsIDOMNode tableNode = visualDocument.createElement(HTML.TAG_TABLE);
-		nsIDOMElement visualTable = (nsIDOMElement) tableNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement visualTable = queryInterface(tableNode, nsIDOMElement.class);
 		visualNode.appendChild(tableNode);
-		visualElement = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		visualElement = queryInterface(visualNode, nsIDOMElement.class);
 		visualTable.setAttribute(HTML.ATTR_WIDTH, getWidthPerc(sourceElement));
 		visualTable.setAttribute(HTML.ATTR_ALIGN, getAlignment(sourceElement));
 		visualTable.setAttribute(HTML.ATTR_CELLSPACING, "0px"); //$NON-NLS-1$
@@ -92,8 +91,7 @@
 	private void setColumns(VpePageContext pageContext, Node sourceNode,
 			nsIDOMDocument visualDocument, VpeCreationData data) {
 		int numberOfColumns = getNumberOfColumns(sourceNode);
-		nsIDOMNode visualTable = ((nsIDOMElement) data.getNode()
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID))
+		nsIDOMNode visualTable = (queryInterface(data.getNode(), nsIDOMElement.class))
 				.getElementsByTagName(HTML.TAG_TABLE).item(0);
 		nsIDOMNode[] visualCells = getCells(data.getNode());
 		if (visualCells == null) {
@@ -188,8 +186,7 @@
 
 	private int getColspanValue(nsIDOMNode visualNode) {
 		int colspan = 1;
-		nsIDOMElement visualElement = (nsIDOMElement) visualNode
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement visualElement = queryInterface(visualNode, nsIDOMElement.class);
 		String colspanString = visualElement.getAttribute(HTML.ATTR_COLSPAN);
 		if (colspanString != null) {
 			try {
@@ -214,8 +211,7 @@
 			nsIDOMNode child = children.item(i);
 			if (child.getNodeType() == nsIDOMNode.ELEMENT_NODE) {
 				if ("TD".equals(child.getNodeName())) { //$NON-NLS-1$
-					childrenList.add((nsIDOMElement) child
-							.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID));
+					childrenList.add(queryInterface(child, nsIDOMElement.class));
 				}
 			}
 		}

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.facelets.test/src/org/jboss/tools/jsf/vpe/facelets/test/FaceletsComponentTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.facelets.test/src/org/jboss/tools/jsf/vpe/facelets/test/FaceletsComponentTest.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.facelets.test/src/org/jboss/tools/jsf/vpe/facelets/test/FaceletsComponentTest.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.facelets.test;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -52,8 +54,7 @@
      */
     public void testDebug() throws Throwable {
 	nsIDOMElement element = performTestForFaceletComponent("components/debug.xhtml"); //$NON-NLS-1$
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -61,11 +62,9 @@
 	TestUtil.findAllElementsByName(node, elements, HTML.TAG_DIV);
 	assertEquals(5, elements.size());
 
-	nsIDOMElement divElement = (nsIDOMElement) elements.get(4)
-		.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	nsIDOMElement divElement = queryInterface(elements.get(4), nsIDOMElement.class);
 
-	nsIDOMText text = (nsIDOMText) divElement.getFirstChild()
-		.queryInterface(nsIDOMText.NS_IDOMTEXT_IID);
+	nsIDOMText text = queryInterface(divElement.getFirstChild(), nsIDOMText.class);
 
 	assertEquals("Debug's content is not shown", text.getNodeValue(), //$NON-NLS-1$
 		"Ctrl+Shift+"); //$NON-NLS-1$
@@ -83,8 +82,7 @@
     public void testDefine() throws Throwable {
 
 	nsIDOMElement element = performTestForFaceletComponent("components/define.xhtml"); //$NON-NLS-1$
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -93,19 +91,13 @@
 
 	assertEquals(3, elements.size());
 
-	nsIDOMElement elementSpan0 = (nsIDOMElement) elements.get(0)
-		.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-	nsIDOMElement elementSpan1 = (nsIDOMElement) elements.get(1)
-		.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-	nsIDOMElement elementSpan2 = (nsIDOMElement) elements.get(2)
-		.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	nsIDOMElement elementSpan0 = queryInterface(elements.get(0), nsIDOMElement.class);
+	nsIDOMElement elementSpan1 = queryInterface(elements.get(1), nsIDOMElement.class);
+	nsIDOMElement elementSpan2 = queryInterface(elements.get(2), nsIDOMElement.class);
 
-	nsIDOMText text0 = (nsIDOMText) elementSpan0.getFirstChild()
-		.queryInterface(nsIDOMText.NS_IDOMTEXT_IID);
-	nsIDOMText text1 = (nsIDOMText) elementSpan1.getFirstChild()
-		.queryInterface(nsIDOMText.NS_IDOMTEXT_IID);
-	nsIDOMText text2 = (nsIDOMText) elementSpan2.getFirstChild()
-		.queryInterface(nsIDOMText.NS_IDOMTEXT_IID);
+	nsIDOMText text0 = queryInterface(elementSpan0.getFirstChild(), nsIDOMText.class);
+	nsIDOMText text1 = queryInterface(elementSpan1.getFirstChild(), nsIDOMText.class);
+	nsIDOMText text2 = queryInterface(elementSpan2.getFirstChild(), nsIDOMText.class);
 
 	assertEquals(DEFINED_CONTENT_IS_NOT_SHOWN, text0.getNodeValue(),
 		"Greeting Page"); //$NON-NLS-1$
@@ -151,8 +143,7 @@
     public void testComponent() throws Throwable {
 
 	nsIDOMElement element = performTestForFaceletComponent("components/component.xhtml"); //$NON-NLS-1$
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -161,8 +152,7 @@
 
 	assertEquals(1, elements.size());
 
-	nsIDOMElement div = (nsIDOMElement) elements.get(0).queryInterface(
-		nsIDOMElement.NS_IDOMELEMENT_IID);
+	nsIDOMElement div = queryInterface(elements.get(0), nsIDOMElement.class);
 
 	String title = div.getAttribute("title"); //$NON-NLS-1$
 
@@ -180,8 +170,7 @@
      */
     public void testRemove() throws Throwable {
 	nsIDOMElement element = performTestForFaceletComponent("components/remove.xhtml"); //$NON-NLS-1$
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -190,11 +179,9 @@
 
 	for (int i = 0; i < elements.size(); i++) {
 
-	    nsIDOMElement elementSpan = (nsIDOMElement) elements.get(i)
-		    .queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	    nsIDOMElement elementSpan = queryInterface(elements.get(i), nsIDOMElement.class);
 
-	    nsIDOMText text = (nsIDOMText) elementSpan.getFirstChild()
-		    .queryInterface(nsIDOMText.NS_IDOMTEXT_IID);
+	    nsIDOMText text = queryInterface(elementSpan.getFirstChild(), nsIDOMText.class);
 	    if (text == null)
 		continue;
 	    assertEquals(
@@ -236,8 +223,7 @@
      */
     public void testRepeat() throws Throwable {
 	nsIDOMElement element = performTestForFaceletComponent("components/repeat.xhtml"); //$NON-NLS-1$
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -246,8 +232,7 @@
 
 	assertEquals(1, elements.size());
 
-	nsIDOMElement elementDL = (nsIDOMElement) elements.get(0)
-		.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	nsIDOMElement elementDL = queryInterface(elements.get(0), nsIDOMElement.class);
 
 	elements.clear();
 
@@ -290,8 +275,7 @@
      */
     public void testFragment() throws Throwable {
 	nsIDOMElement element = performTestForFaceletComponent("components/fragment.xhtml"); //$NON-NLS-1$
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -299,8 +283,7 @@
 	TestUtil.findAllElementsByName(node, elements, HTML.TAG_DIV);
 	assertEquals(4, elements.size());
 
-	nsIDOMElement div = (nsIDOMElement) elements.get(3).queryInterface(
-		nsIDOMElement.NS_IDOMELEMENT_IID);
+	nsIDOMElement div = queryInterface(elements.get(3), nsIDOMElement.class);
 
 	String title = div.getAttribute("title"); //$NON-NLS-1$
 
@@ -365,21 +348,17 @@
 	// check absolute path
 	nsIDOMElement element = performTestForFaceletComponent("components/param.xhtml"); //$NON-NLS-1$
 
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
 	// find "td" elements
 	TestUtil.findAllElementsByName(node, elements, HTML.TAG_TD);
 	assertEquals(5, elements.size());
-	nsIDOMElement td = (nsIDOMElement) elements.get(1).queryInterface(
-		nsIDOMElement.NS_IDOMELEMENT_IID);
-	nsIDOMElement span = (nsIDOMElement) td.getFirstChild().queryInterface(
-		nsIDOMElement.NS_IDOMELEMENT_IID);
+	nsIDOMElement td = queryInterface(elements.get(1), nsIDOMElement.class);
+	nsIDOMElement span = queryInterface(td.getFirstChild(), nsIDOMElement.class);
 
-	nsIDOMText text = (nsIDOMText) span.getFirstChild().queryInterface(
-		nsIDOMText.NS_IDOMTEXT_IID);
+	nsIDOMText text = queryInterface(span.getFirstChild(), nsIDOMText.class);
 
 	assertEquals(COMPONENT_S_CONTENT_IS_NOT_SHOWN, text.getNodeValue(),
 		USER);
@@ -391,23 +370,18 @@
 
     private void checkTemplatePage(nsIDOMElement element, String contextString,
 	    String message) {
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
 	// find "td" elements
 	TestUtil.findAllElementsByName(node, elements, HTML.TAG_TD);
 	assertEquals(message, 5, elements.size());
-	nsIDOMElement td = (nsIDOMElement) elements.get(0).queryInterface(
-		nsIDOMElement.NS_IDOMELEMENT_IID);
-	nsIDOMElement div = (nsIDOMElement) td.getFirstChild().queryInterface(
-		nsIDOMElement.NS_IDOMELEMENT_IID);
-	nsIDOMElement span = (nsIDOMElement) div.getFirstChild()
-		.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+	nsIDOMElement td = queryInterface(elements.get(0), nsIDOMElement.class);
+	nsIDOMElement div = queryInterface(td.getFirstChild(), nsIDOMElement.class);
+	nsIDOMElement span = queryInterface(div.getFirstChild(), nsIDOMElement.class);
 
-	nsIDOMText text = (nsIDOMText) span.getFirstChild().queryInterface(
-		nsIDOMText.NS_IDOMTEXT_IID);
+	nsIDOMText text = queryInterface(span.getFirstChild(), nsIDOMText.class);
 
 	assertEquals(message, contextString, text.getNodeValue());
     }

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/EditingSPecialSymbolsVPE_JBIDE3810.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/EditingSPecialSymbolsVPE_JBIDE3810.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/EditingSPecialSymbolsVPE_JBIDE3810.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -1,5 +1,7 @@
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.eclipse.core.resources.IFile;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.part.FileEditorInput;
@@ -69,19 +71,15 @@
 			this.delay = delay;
 			nsIDOMDocument idomDocument = controller.getXulRunnerEditor()
 					.getDOMDocument();
-			nsIDOMDocumentView documentView = (nsIDOMDocumentView) idomDocument
-					.queryInterface(nsIDOMDocumentView.NS_IDOMDOCUMENTVIEW_IID);
+			nsIDOMDocumentView documentView = queryInterface(idomDocument, nsIDOMDocumentView.class);
 			abstractView = documentView.getDefaultView();
-			documentEvent = (nsIDOMDocumentEvent) idomDocument
-					.queryInterface(nsIDOMDocumentEvent.NS_IDOMDOCUMENTEVENT_IID);
-			eventTarget = (nsIDOMEventTarget) idomDocument
-					.queryInterface(nsIDOMEventTarget.NS_IDOMEVENTTARGET_IID);
+			documentEvent = queryInterface(idomDocument, nsIDOMDocumentEvent.class);
+			eventTarget = queryInterface(idomDocument, nsIDOMEventTarget.class);
 		}
 
 		public Keybord pressDel() {
 			nsIDOMEvent delEvent = documentEvent.createEvent("KeyboardEvent"); //$NON-NLS-1$
-			nsIDOMKeyEvent delKeyEvent = (nsIDOMKeyEvent) delEvent
-					.queryInterface(nsIDOMKeyEvent.NS_IDOMKEYEVENT_IID);
+			nsIDOMKeyEvent delKeyEvent = queryInterface(delEvent, nsIDOMKeyEvent.class);
 			delKeyEvent
 					.initKeyEvent("keypress", true, true, abstractView, false, //$NON-NLS-1$
 							false, false, false, nsIDOMKeyEvent.DOM_VK_DELETE,
@@ -94,8 +92,7 @@
 
 		public Keybord pressBackSP() {
 			nsIDOMEvent bsEvent = documentEvent.createEvent("KeyboardEvent"); //$NON-NLS-1$
-			nsIDOMKeyEvent bsKeyEvent = (nsIDOMKeyEvent) bsEvent
-					.queryInterface(nsIDOMKeyEvent.NS_IDOMKEYEVENT_IID);
+			nsIDOMKeyEvent bsKeyEvent = queryInterface(bsEvent, nsIDOMKeyEvent.class);
 			bsKeyEvent.initKeyEvent("keypress", true, true, abstractView, //$NON-NLS-1$
 					false, false, false, false,
 					nsIDOMKeyEvent.DOM_VK_BACK_SPACE, 0);
@@ -108,8 +105,7 @@
 		public Keybord pressLeft() {
 			nsIDOMEvent leftArrowEvent = documentEvent
 					.createEvent("KeyboardEvent"); //$NON-NLS-1$
-			nsIDOMKeyEvent leftArrowKeyEvent = (nsIDOMKeyEvent) leftArrowEvent
-					.queryInterface(nsIDOMKeyEvent.NS_IDOMKEYEVENT_IID);
+			nsIDOMKeyEvent leftArrowKeyEvent = queryInterface(leftArrowEvent, nsIDOMKeyEvent.class);
 			leftArrowKeyEvent.initKeyEvent("keypress", true, true, //$NON-NLS-1$
 					abstractView, false, false, false, false,
 					nsIDOMKeyEvent.DOM_VK_LEFT, 0);
@@ -129,11 +125,9 @@
 			this.delay = delay;
 			nsIDOMDocument idomDocument = controller.getXulRunnerEditor()
 					.getDOMDocument();
-			nsIDOMDocumentView documentView = (nsIDOMDocumentView) idomDocument
-					.queryInterface(nsIDOMDocumentView.NS_IDOMDOCUMENTVIEW_IID);
+			nsIDOMDocumentView documentView = queryInterface(idomDocument, nsIDOMDocumentView.class);
 			nsIDOMAbstractView abstractView = documentView.getDefaultView();
-			nsIInterfaceRequestor requestor = (nsIInterfaceRequestor) abstractView
-					.queryInterface(nsIInterfaceRequestor.NS_IINTERFACEREQUESTOR_IID);
+			nsIInterfaceRequestor requestor = queryInterface(abstractView, nsIInterfaceRequestor.class);
 			nsIDOMWindowUtils windowUtils = (nsIDOMWindowUtils) requestor
 					.getInterface(nsIDOMWindowUtils.NS_IDOMWINDOWUTILS_IID);
 			this.windowUtils = windowUtils;

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1484Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1484Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1484Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -67,8 +69,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -76,12 +77,9 @@
 		TestUtil.findElementsByName(node, elements, HTML.TAG_INPUT);
 
 		assertEquals(3, elements.size());
-		nsIDOMElement elementInput0 = (nsIDOMElement) elements.get(0)
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-		nsIDOMElement elementInput1 = (nsIDOMElement) elements.get(1)
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-		nsIDOMElement elementInput2 = (nsIDOMElement) elements.get(2)
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement elementInput0 = queryInterface(elements.get(0), nsIDOMElement.class);
+		nsIDOMElement elementInput1 = queryInterface(elements.get(1), nsIDOMElement.class);
+		nsIDOMElement elementInput2 = queryInterface(elements.get(2), nsIDOMElement.class);
 
 		assertEquals(" ", elementInput0.getAttribute("value"));  //$NON-NLS-1$//$NON-NLS-2$
 		assertEquals(" ", elementInput1.getAttribute("value")); //$NON-NLS-1$ //$NON-NLS-2$

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1615Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1615Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1615Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -67,8 +69,7 @@
 	assertNotNull(element);
 
 	// get root node
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1720Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1720Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1720Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -69,8 +71,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -81,8 +82,7 @@
 
 		for (int i = 0; i < elements.size(); i++) {
 
-			nsIDOMElement inputElement = (nsIDOMElement) elements.get(i)
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement inputElement = queryInterface(elements.get(i), nsIDOMElement.class);
 			assertNotNull(inputElement);
 			String dir = inputElement.getAttribute(HTML.ATTR_DIR);
 			assertNotNull(dir);
@@ -102,8 +102,7 @@
 
 		for (int i = 0; i < elements.size(); i++) {
 
-			nsIDOMElement inputElement = (nsIDOMElement) elements.get(i)
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement inputElement = queryInterface(elements.get(i), nsIDOMElement.class);
 			assertNotNull(inputElement);
 			String style = inputElement.getAttribute(HTML.ATTR_CLASS);
 			assertNotNull(style);
@@ -144,8 +143,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -154,8 +152,7 @@
 
 		assertEquals(1, elements.size());
 
-		nsIDOMElement select = (nsIDOMElement) elements.get(0).queryInterface(
-				nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement select = queryInterface(elements.get(0), nsIDOMElement.class);
 
 		String size = select.getAttribute(HTML.ATTR_SIZE);
 		assertNotNull("Attribute size is not exist.", size);
@@ -182,8 +179,7 @@
 
 		for (int i = 0; i < elements.size(); i++) {
 
-			nsIDOMElement inputElement = (nsIDOMElement) elements.get(i)
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement inputElement = queryInterface(elements.get(i), nsIDOMElement.class);
 			assertNotNull(inputElement);
 			String attr = inputElement.getAttribute(HTML.ATTR_CLASS);
 			assertNotNull("Attribute class is not exist in option tag", attr);
@@ -224,8 +220,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -234,8 +229,7 @@
 
 		assertEquals(1, elements.size());
 
-		nsIDOMElement select = (nsIDOMElement) elements.get(0).queryInterface(
-				nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement select = queryInterface(elements.get(0), nsIDOMElement.class);
 
 		String size = select.getAttribute(HTML.ATTR_SIZE);
 		assertNotNull("Attribute size is not exist.", size);
@@ -260,8 +254,7 @@
 
 		for (int i = 0; i < elements.size(); i++) {
 
-			nsIDOMElement inputElement = (nsIDOMElement) elements.get(i)
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			nsIDOMElement inputElement = queryInterface(elements.get(i), nsIDOMElement.class);
 			assertNotNull(inputElement);
 
 			String attr = inputElement.getAttribute(HTML.ATTR_CLASS);

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1744Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1744Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE1744Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
   ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -68,8 +70,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2010Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2010Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2010Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -12,6 +12,7 @@
 
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -60,7 +61,7 @@
         TestUtil.findAllElementsByName(rst, elements, HTML.TAG_SPAN);
 
         assertEquals("Count of divs should be equals 1", 1, elements.size()); //$NON-NLS-1$
-        final nsIDOMElement spanOne = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        final nsIDOMElement spanOne = queryInterface(elements.get(0), nsIDOMElement.class);
 
         assertEquals("Style attribute should be substituted", VALUE_4, spanOne.getFirstChild().getNodeValue()); //$NON-NLS-1$
 
@@ -84,7 +85,7 @@
         TestUtil.findAllElementsByName(rst, elements, HTML.TAG_P);
 
         assertEquals("Value should be equals", 1, elements.size()); //$NON-NLS-1$
-        final nsIDOMElement pOne = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        final nsIDOMElement pOne = queryInterface(elements.get(0), nsIDOMElement.class);
        // DOMTreeDumper d = new DOMTreeDumper();
        // d.dumpToStream(System.out, rst);
 //        assertEquals("Value should be equals", "Hello "+VALUE_5, pOne.getFirstChild().getFirstChild().getNodeValue());

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2119Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2119Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2119Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
   ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -69,8 +71,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2582Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2582Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE2582Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -12,6 +12,7 @@
 
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -81,7 +82,7 @@
 
         assertEquals("Size should be equals 1", 1, elements.size()); //$NON-NLS-1$
 
-        final nsIDOMElement spanOne = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        final nsIDOMElement spanOne = queryInterface(elements.get(0), nsIDOMElement.class);
 
         assertEquals("Style attribute should be substituted", "Hello", spanOne.getFirstChild().getNodeValue()); //$NON-NLS-1$ //$NON-NLS-2$
 
@@ -101,7 +102,7 @@
         TestUtil.findAllElementsByName(rst, elements, "H3"); //$NON-NLS-1$
         assertEquals("Size should be equals 1", 1, elements.size()); //$NON-NLS-1$
 
-        final nsIDOMElement h3one = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        final nsIDOMElement h3one = queryInterface(elements.get(0), nsIDOMElement.class);
 
         assertEquals("Style attribute should be substituted", "Hello", h3one.getFirstChild().getFirstChild().getNodeValue()); //$NON-NLS-1$ //$NON-NLS-2$
 
@@ -109,7 +110,7 @@
 
         TestUtil.findAllElementsByName(rst, elements, "SPAN"); //$NON-NLS-1$
         assertEquals("Size should be equals 1", 4, elements.size()); //$NON-NLS-1$
-        final nsIDOMElement pOne = ((nsIDOMElement) elements.get(2).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID));
+        final nsIDOMElement pOne = (queryInterface(elements.get(2), nsIDOMElement.class));
 
         assertEquals(
                 "Style attribute should be substituted", "There are the label:Hello Demo Application", pOne.getFirstChild().getNodeValue()); //$NON-NLS-1$ //$NON-NLS-2$

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3473Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3473Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3473Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -16,7 +16,7 @@
 import org.jboss.tools.vpe.editor.util.VisualDomUtil;
 import org.jboss.tools.vpe.ui.test.TestUtil;
 import org.jboss.tools.vpe.ui.test.VpeTest;
-import org.jboss.tools.vpe.xulrunner.editor.XulRunnerVpeUtils;
+import org.jboss.tools.vpe.xulrunner.util.XulRunnerVpeUtils;
 import org.mozilla.interfaces.nsIDOMDocument;
 import org.mozilla.interfaces.nsIDOMElement;
 import org.mozilla.interfaces.nsIDOMNode;

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3734Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3734Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JBIDE3734Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.io.IOException;
 
 import org.eclipse.core.resources.IFile;
@@ -65,16 +67,13 @@
 	public void testLink() throws Throwable {
 		setException(null);
         VpeController vpeController = openTestPage();
-        nsIDOMElement head = (nsIDOMElement) vpeController
-        	.getVisualBuilder()
-        	.getHeadNode()
-        	.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        nsIDOMElement head = queryInterface(vpeController.getVisualBuilder()
+        		.getHeadNode(), nsIDOMElement.class);
 
         nsIDOMNodeList links = head.getElementsByTagName(HTML.TAG_STYLE);
         boolean pageCssLinkFound = false;
         for (int i = 0; i < links.getLength(); i++) {
-        	final String href = ((nsIDOMElement) links.item(i)
-        			.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID))
+        	final String href = queryInterface(links.item(i), nsIDOMElement.class)
         			.getAttribute(HTML.ATTR_HREF);
         	if (href != null && href.contains(TEST_FOLDER_PATH + CSS_FILE_NAME)) {
         		pageCssLinkFound = true;

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1467Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1467Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1467Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,6 +11,8 @@
 
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -85,8 +87,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1501Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1501Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1501Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,6 +11,8 @@
 
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -87,8 +89,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -142,8 +143,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1718Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1718Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/JsfJbide1718Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,6 +11,8 @@
 
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -80,8 +82,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		// find "b" elements
 		List<nsIDOMNode> bElements = new ArrayList<nsIDOMNode>();
@@ -167,8 +168,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> spanElements = new ArrayList<nsIDOMNode>();
 
@@ -214,8 +214,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> aElements = new ArrayList<nsIDOMNode>();
 
@@ -262,8 +261,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		// find "b" elements
 		List<nsIDOMNode> bElements = new ArrayList<nsIDOMNode>();

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/SelectWholeElement_JBIDE4713.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/SelectWholeElement_JBIDE4713.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.jsf.test/src/org/jboss/tools/jsf/vpe/jsf/test/jbide/SelectWholeElement_JBIDE4713.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.jsf.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.eclipse.swt.custom.StyledText;
 import org.eclipse.swt.graphics.Point;
 import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
@@ -62,8 +64,7 @@
 				vpeController.getPageContext()); 
 
 		assertTrue(selectedNode.getNodeType() == nsIDOMNode.ELEMENT_NODE);
-		nsIDOMElement element = (nsIDOMElement)
-				selectedNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement element = queryInterface(selectedNode, nsIDOMElement.class);
 
 		assertEquals(SELECTED_ELEMENT_ID, element.getAttribute(HTML.ATTR_ID));
 	}

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/META-INF/MANIFEST.MF	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/META-INF/MANIFEST.MF	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,7 +11,8 @@
  org.jboss.tools.jst.jsp,
  org.mozilla.xpcom;bundle-version="1.9.1",
  org.jboss.tools.vpe.ui.test,
- org.jboss.tools.common.el.core;bundle-version="2.0.0"
+ org.jboss.tools.common.el.core;bundle-version="2.0.0",
+ org.jboss.tools.vpe.xulrunner
 Bundle-ActivationPolicy: lazy
 Bundle-ClassPath: vpe-rf-test.jar
 Export-Package: org.jboss.tools.jsf.vpe.richfaces.test

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesColumnsTemplateTestCase.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesColumnsTemplateTestCase.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesColumnsTemplateTestCase.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -14,6 +14,7 @@
 
 
 import static org.jboss.tools.vpe.ui.test.TestUtil.performTestForRichFacesComponent;
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -58,7 +59,7 @@
             final List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
             TestUtil.findAllElementsByName(rst, elements, HTML.TAG_TD);
 
-            nsIDOMElement divOne = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+            nsIDOMElement divOne = queryInterface(elements.get(0), nsIDOMElement.class);
 
             assertEquals("Style class should be equals", "dr-table-cell rich-table-cell myClass", divOne.getAttribute(HTML.ATTR_CLASS));
             assertEquals("Style should be equals ", "text-align: center;", divOne.getAttribute(HTML.ATTR_STYLE));
@@ -81,7 +82,7 @@
             final List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
             TestUtil.findAllElementsByName(rst, elements, HTML.TAG_TD);
 
-            nsIDOMElement divOne = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+            nsIDOMElement divOne = queryInterface(elements.get(0), nsIDOMElement.class);
 
             assertEquals("Style class should be equals", "dr-table-cell rich-table-cell", divOne.getAttribute(HTML.ATTR_CLASS));
         } catch (CoreException e) {

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesComboBoxTemplateTestCase.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesComboBoxTemplateTestCase.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesComboBoxTemplateTestCase.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -12,6 +12,7 @@
 
 package org.jboss.tools.jsf.vpe.richfaces.test;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -95,7 +96,7 @@
 
         TestUtil.findAllElementsByName(rst, elements, HTML.TAG_DIV);
 
-        nsIDOMElement divOne = (nsIDOMElement) elements.get(5).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        nsIDOMElement divOne = queryInterface(elements.get(5), nsIDOMElement.class);
         assertTrue("Style classes should be contains ",divOne.getAttribute(HTML.ATTR_CLASS).contains("rich-combobox-font rich-combobox")); //$NON-NLS-1$ //$NON-NLS-2$
         assertTrue("Default style should be contains " + width, divOne.getAttribute(HTML.ATTR_STYLE).indexOf(width) > 1); //$NON-NLS-1$
         assertTrue("Default style should be contains " + width, divOne.getAttribute(HTML.ATTR_STYLE).contains("width")); //$NON-NLS-1$ //$NON-NLS-2$
@@ -115,7 +116,7 @@
         TestUtil.findAllElementsByName(rst, elements, HTML.TAG_INPUT);
 
         assertEquals("Size should be equals 2", 3, elements.size()); //$NON-NLS-1$
-        final nsIDOMElement input = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        final nsIDOMElement input = queryInterface(elements.get(0), nsIDOMElement.class);
         assertEquals("Value should be equals " + inputValue, inputValue, input.getAttribute(HTML.ATTR_VALUE)); //$NON-NLS-1$
     }
 
@@ -159,7 +160,7 @@
 
         assertEquals("Size should be equals 2", 3, elements.size()); //$NON-NLS-1$
 
-        final nsIDOMElement input = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        final nsIDOMElement input = queryInterface(elements.get(0), nsIDOMElement.class);
 
         assertEquals("Default input class should be equals " + DEFAULT_INPUT_STYLE, input.getAttribute(HTML.ATTR_CLASS), //$NON-NLS-1$
                 DEFAULT_INPUT_STYLE);
@@ -167,7 +168,7 @@
 //        assertEquals("Input type should be text", HTML.VALUE_TEXT_TYPE, input.getAttribute(HTML.ATTR_TYPE));
 //        assertEquals("Input size should be " + String.valueOf(10), String.valueOf(10), input.getAttribute(HTML.ATTR_SIZE));
 //
-//        final nsIDOMElement img = (nsIDOMElement) elements.get(1).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+//        final nsIDOMElement img = queryInterface(elements.get(1), nsIDOMElement.class);
 //        assertTrue("Shoul contains of image path ", img.getAttribute("src").indexOf("\\comboBox\\down.gif") > 1);
 
     }

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesPickListTemplateTestCase.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesPickListTemplateTestCase.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/RichFacesPickListTemplateTestCase.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -8,16 +8,14 @@
  * Contributor:
  *     Red Hat, Inc. - initial API and implementation
  ******************************************************************************/
-
-
 package org.jboss.tools.jsf.vpe.richfaces.test;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
 
 import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.part.FileEditorInput;
 import org.jboss.tools.jst.jsp.jspeditor.JSPMultiPageEditor;
@@ -79,7 +77,7 @@
 
             TestUtil.findAllElementsByName(element, elements, HTML.TAG_TABLE);
             assertEquals("Count of tables should be 3", 3, elements.size()); //$NON-NLS-1$
-            nsIDOMElement tableOne = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+            nsIDOMElement tableOne = queryInterface(elements.get(0), nsIDOMElement.class);
 
             assertEquals("Style class should be equals", "rich-list-picklist", tableOne.getAttribute(HTML.ATTR_CLASS)); //$NON-NLS-1$ //$NON-NLS-2$
             assertEquals("Style should be empty", "", tableOne.getAttribute(HTML.ATTR_STYLE)); //$NON-NLS-1$ //$NON-NLS-2$

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1579Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1579Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1579Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -1,5 +1,7 @@
 package org.jboss.tools.jsf.vpe.richfaces.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -12,7 +14,6 @@
 import org.jboss.tools.vpe.editor.util.HTML;
 import org.jboss.tools.vpe.ui.test.TestUtil;
 import org.jboss.tools.vpe.ui.test.VpeTest;
-import org.mozilla.interfaces.nsIDOMDocument;
 import org.mozilla.interfaces.nsIDOMElement;
 import org.mozilla.interfaces.nsIDOMNode;
 
@@ -52,8 +53,7 @@
 		assertNotNull(element);
 		
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-					.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 		
@@ -89,8 +89,7 @@
 		assertNotNull(element);
 		
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-					.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 		

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1606Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1606Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1606Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -12,6 +12,7 @@
 
 package org.jboss.tools.jsf.vpe.richfaces.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -73,7 +74,7 @@
         
         assertTrue("Size of span's should be gt that 0", elements.size() > 0); //$NON-NLS-1$
         
-        nsIDOMElement element = (nsIDOMElement) elements.get(0).queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+        nsIDOMElement element = queryInterface(elements.get(0), nsIDOMElement.class);
         
         assertEquals("Test should be equals "+HELLO,HELLO,element.getFirstChild().getNodeValue()); //$NON-NLS-1$
     

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1613Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1613Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1613Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -3,6 +3,8 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.eclipse.core.resources.IFile;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.part.FileEditorInput;
@@ -50,8 +52,7 @@
 		assertNotNull(element);
 		
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-					.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 		

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1713Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1713Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/JBIDE1713Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.jsf.vpe.richfaces.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -67,8 +69,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -77,8 +78,7 @@
 
 		assertEquals(1, elements.size());
 
-		nsIDOMElement table = (nsIDOMElement) elements.get(0).queryInterface(
-				nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement table = queryInterface(elements.get(0), nsIDOMElement.class);
 
 		assertNotNull(table);
 
@@ -100,8 +100,7 @@
 
 		assertEquals(10, elements.size());
 
-		nsIDOMElement activeToggle = (nsIDOMElement) elements.get(5)
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement activeToggle = queryInterface(elements.get(5), nsIDOMElement.class);
 
 		assertNotNull(activeToggle);
 		String activeToggleClass = activeToggle.getAttribute(HTML.ATTR_CLASS);
@@ -122,8 +121,7 @@
 
 		assertEquals(2, contentElements.size());
 
-		nsIDOMElement contentElement = (nsIDOMElement) contentElements.get(1)
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement contentElement = queryInterface(contentElements.get(1), nsIDOMElement.class);
 
 		assertNotNull(contentElement);
 
@@ -140,8 +138,7 @@
 				activeContentClass);
 
 		// check facet
-		nsIDOMElement disabledToggle = (nsIDOMElement) elements.get(7)
-				.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+		nsIDOMElement disabledToggle = queryInterface(elements.get(7), nsIDOMElement.class);
 
 		assertNotNull(contentElement);
 
@@ -161,8 +158,7 @@
 				contentElements, HTML.TAG_IMG);
 		assertEquals(1, contentElements.size());
 
-		disabledToggle = (nsIDOMElement) elements.get(9).queryInterface(
-				nsIDOMElement.NS_IDOMELEMENT_IID);
+		disabledToggle = queryInterface(elements.get(9), nsIDOMElement.class);
 
 		assertNotNull(contentElement);
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1548Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1548Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1548Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,6 +11,8 @@
 
 package org.jboss.tools.jsf.vpe.richfaces.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -77,8 +79,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1580Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1580Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1580Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,7 @@
  ******************************************************************************/
 
 package org.jboss.tools.jsf.vpe.richfaces.test.jbide;
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -71,8 +72,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -114,8 +114,7 @@
 		assertNotNull(element);
 
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-				.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1614Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1614Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1614Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,6 +11,8 @@
 
 package org.jboss.tools.jsf.vpe.richfaces.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -68,8 +70,7 @@
 	assertNotNull(element);
 
 	// get root node
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 
@@ -110,8 +111,7 @@
 	assertNotNull(element);
 
 	// get root node
-	nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+	nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 	List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 

Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1682Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1682Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/src/org/jboss/tools/jsf/vpe/richfaces/test/jbide/Jbide1682Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -3,6 +3,8 @@
  */
 package org.jboss.tools.jsf.vpe.richfaces.test.jbide;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -60,8 +62,7 @@
 		assertNotNull(element);
 		
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-					.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 		
@@ -103,8 +104,7 @@
 		assertNotNull(element);
 		
 		// get root node
-		nsIDOMNode node = (nsIDOMNode) element
-		.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode node = queryInterface(element, nsIDOMNode.class);
 		
 		List<nsIDOMNode> elements = new ArrayList<nsIDOMNode>();
 	

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.html/META-INF/MANIFEST.MF
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.html/META-INF/MANIFEST.MF	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.html/META-INF/MANIFEST.MF	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,7 +11,8 @@
  org.mozilla.xpcom;bundle-version="1.9.1",
  org.jboss.tools.jst.jsp,
  org.jboss.tools.common,
- org.eclipse.jface.text;bundle-version="3.5.0"
+ org.eclipse.jface.text;bundle-version="3.5.0",
+ org.jboss.tools.vpe.xulrunner
 Bundle-ActivationPolicy: lazy
 Bundle-Localization: plugin
 Export-Package: org.jboss.tools.vpe.html.template

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlCommentTemplate.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlCommentTemplate.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlCommentTemplate.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
 ******************************************************************************/
 package org.jboss.tools.vpe.html.template;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import org.jboss.tools.jst.jsp.preferences.VpePreference;
 import org.jboss.tools.vpe.editor.context.VpePageContext;
 import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
@@ -40,10 +42,10 @@
 	    nsIDOMNode visualNode;  
 		if (Constants.YES_STRING.equals(VpePreference.SHOW_COMMENTS_VALUE)) {
 			visualNode = visualDocument.createElement(HTML.TAG_DIV);
-			((nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID)).setAttribute(VpeStyleUtil.ATTRIBUTE_STYLE, COMMENT_STYLE);
+			(queryInterface(visualNode, nsIDOMElement.class)).setAttribute(VpeStyleUtil.ATTRIBUTE_STYLE, COMMENT_STYLE);
 		    String value = sourceNode.getNodeValue();
 		    nsIDOMText text = visualDocument.createTextNode(value);
-		    ((nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID)).appendChild(text);
+		    (queryInterface(visualNode, nsIDOMElement.class)).appendChild(text);
 
 	     } else {
 	    	 visualNode = visualDocument.createComment(removeDoubleHyphens(sourceNode.getNodeValue()));

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/META-INF/MANIFEST.MF
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/META-INF/MANIFEST.MF	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/META-INF/MANIFEST.MF	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,8 +11,8 @@
 Bundle-ActivationPolicy: lazy
 Export-Package: org.jboss.tools.vpe.xulrunner;uses:="org.eclipse.jface.resource,org.eclipse.ui.plugin,org.osgi.framework",
  org.jboss.tools.vpe.xulrunner.browser;uses:="org.mozilla.interfaces,org.eclipse.swt.widgets,org.mozilla.xpcom",
- org.jboss.tools.vpe.xulrunner.browser.util,
- org.jboss.tools.vpe.xulrunner.editor
+ org.jboss.tools.vpe.xulrunner.editor,
+ org.jboss.tools.vpe.xulrunner.util
 Bundle-ClassPath: .
 Bundle-Vendor: %Bundle-Vendor.0
 Bundle-Localization: plugin

Deleted: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/XPCOM.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/XPCOM.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/XPCOM.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -1,1508 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007-2010 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributor:
- *     Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.vpe.xulrunner;
-
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.mozilla.interfaces.nsIDOMNode;
-import org.mozilla.interfaces.nsISupports;
-import org.mozilla.xpcom.XPCOMException;
-
-/**
- * @author Sergey Vasilyev (svasilyev at exadel.com): initial creation.
- * @author Yahor Radtsevich (yradtsevich): method {@code queryInterface} and
- * related stuff (JBIDE-6393).
- */
-public final class XPCOM {
-	private XPCOM() {}
-	/*
-	 * Contract IDs
-	 */
-	public static final String NS_DRAGSERVICE_CONTRACTID = "@mozilla.org/widget/dragservice;1"; //$NON-NLS-1$
-	public static final String NS_TRANSFERABLE_CONTRACTID = "@mozilla.org/widget/transferable;1"; //$NON-NLS-1$
-	public static final String NS_WINDOWWATCHER_CONTRACTID = "@mozilla.org/embedcomp/window-watcher;1"; //$NON-NLS-1$
-	public static final String NS_PREFSERVICE_CONTRACTID = "@mozilla.org/preferences-service;1"; //$NON-NLS-1$
-	public static final String NS_SUPPORTSSTRING_CONTRACTID = "@mozilla.org/supports-string;1"; //$NON-NLS-1$
-	public static final String NS_SUPPORTSARRAY_CONTRACTID = "@mozilla.org/supports-array;1"; //$NON-NLS-1$
-	
-	public static final String IN_FLASHER_CONTRACTID = "@mozilla.org/inspector/flasher;1"; //$NON-NLS-1$
-	/**
-	 * Editing Session Contract ID
-	 * see http://www.xulplanet.com/references/xpcomref/ifaces/nsIEditingSession.html
-	 */
-	public static final String NS_EDITINGSESSION_CONTRACTID="@mozilla.org/editor/editingsession;1"; //$NON-NLS-1$
-	
-	public static final String NS_IWEBBROWSER_CID = "F1EAC761-87E9-11d3-AF80-00A024FFC08C"; //$NON-NLS-1$
-	public static final String NS_IAPPSHELL_CID = "2d96b3df-c051-11d1-a827-0040959a28c9"; //$NON-NLS-1$
-	
-	/**Stores all interfaces which extend nsISupports. */
-	/* Lazy initialization of interfacesList is used to avoid loading
-	 * of all these classes (>1000) by the class loader. */
-	private static List<Class<? extends nsISupports>> interfacesList = null;
-	
-	private static Map<Class<? extends nsISupports>, String> interfaceIdByType
-			= new HashMap<Class<? extends nsISupports>, String>();
-
-	/**
-	 * Queries given interface-<code>type</code> from {@code object}.
-	 * <P>
-	 * This method is intended to simplify long boilerplate XPCOM
-	 * interfaces casting
-	 * <pre>(nsIDOMNode) object.queryInterface(nsIDOMNode.NS_IDOMNODE_IID</pre>
-	 * by a simpler call
-	 * <pre>queryInterface(object, nsIDOMNode.class)</pre>
-	 *  
-	 * It is recommended to include the method using static import:
-	 * <pre>import static org.jboss.tools.vpe.xulrunner.XPCOM.queryInterface</pre>
-	 * 
-	 * @throws XPCOMException when the {@code object} does not support
-	 * the {@code type}.
-	 * to 
-	  
-	 * @author Yahor Radtsevich (yradtsevich)
-	 */
-	public static <T extends nsISupports> T queryInterface(
-			nsISupports object,	Class<T> type) throws XPCOMException {
-		String interfaceId = getInterfaceId(type);
-		return (T) object.queryInterface(interfaceId);
-	}
-
-	/**
-	 * Returns XPCOM ID for the given {@code type}
-	 * <P>
-	 * Example:{@code getInterfaceId(nsIDOMNode.class)} will return value of
-	 * {@link nsIDOMNode#NS_IDOMNODE_IID}.
-	 *  
-	 * @param type interface extending {@link nsISupports}
-	 * 
-	 * @author Yahor Radtsevich (yradtsevich)
-	 */
-	public static <T extends nsISupports> String getInterfaceId(Class<T> type) {
-		String interfaceId = interfaceIdByType.get(type);
-		if (interfaceId == null) {
-			String interfaceIdFieldName = getInterfaceIdFieldName(type);
-			try {
-				interfaceId = (String) type.getField(interfaceIdFieldName).get(null);
-			} catch (Exception e) {
-				throw new RuntimeException(e);
-			}
-			interfaceIdByType.put(type, interfaceId);
-		}
-		return interfaceId;
-	}
-
-	/**
-	 * Returns field name which contains XPCOM ID for the given
-	 * interface-{@code type}.
-	 * <P>
-	 * Examples:
-	 *<pre>   getInterfaceIdFieldName(nsIDOMNode.class)="NS_IDOMNODE_IID"
-	 *   getInterfaceIdFieldName(jsdIScript.class)="JSDISCRIPT_IID"</pre>
-	 * 
-	 * @param type interface extending {@link nsISupports}
-	 * 
-	 * @author Yahor Radtsevich (yradtsevich)
-	 */
-	private static <T extends nsISupports> String getInterfaceIdFieldName(Class<T> type) {
-		String typeName = type.getSimpleName();
-
-		String interfaceIdFieldName;
-		if (typeName.startsWith("ns")) { //$NON-NLS-1$
-			// e.g. "nsIDOMNode" becomes "NS_IDOMNODE"
-			interfaceIdFieldName = "NS_" + typeName.substring(2).toUpperCase(); //$NON-NLS-1$
-		} else {
-			// e.g. "jsdIScript" becomes "JSDISCRIPT"
-			interfaceIdFieldName = typeName.toUpperCase();
-		}
-		interfaceIdFieldName = interfaceIdFieldName + "_IID"; //$NON-NLS-1$
-		return interfaceIdFieldName;
-	}
-	
-	 /**
-	  * Returns all interfaces supported by the {@code object}.
-	  * 
-	  * @deprecated This method tries to query every known XPCOM interface
-	  * from given object and it performs very slow (seconds).
-	  * For debug/test purposes only. Do not use it in the production code.
-	  */
-	public static List<Class<? extends nsISupports>> getSupportedInterfaces(
-			nsISupports object) {
-		List<Class<? extends nsISupports>> supportedInterfaces =
-				new ArrayList<Class<? extends nsISupports>>();
-		for (Class<? extends nsISupports> type : getInterfacesList()) {
-			try {
-				// try to get interface
-				queryInterface(object, type);
-				
-				// if no error is thrown, than the interface is supported
-				supportedInterfaces.add(type);
-			} catch (XPCOMException e) {
-				// it's OK
-			}
-		}
-		
-		return supportedInterfaces;
-	}
-
-	 /**
-	  * Prints all interfaces supported by the {@code object} to the
-	  * {@code System.out}.
-	  * 
-	  * @deprecated This method tries to query every known XPCOM interface
-	  * from given object and it performs very slow (seconds).
-	  * For debug/test purposes only. Do not use it in the production code.
-	  */
-	public static void printSupportedInterfaces(nsISupports object, boolean printMethods) {
-		for (Class<? extends nsISupports> type : getSupportedInterfaces(object)) {
-			System.out.println(type.getSimpleName());
-			if (printMethods) {
-				for (Method method : type.getMethods()) {
-					System.out.println('\t' + method.getName());
-				}
-			}
-		}
-	}
-
-	/**
-	 * Returns all XPCOM interfaces which extend nsISupports.
-	 * 
-	 * @deprecated This method loads tons of classes.
-	 * For debug/test purposes only. Do not use it in the production code.
-	 */
-	public static List<Class<? extends nsISupports>> getInterfacesList() {
-		if (interfacesList == null) {
-			interfacesList = new ArrayList<Class<? extends nsISupports>>();
-			
-			interfacesList.add(org.mozilla.interfaces.extIApplication.class);
-			interfacesList.add(org.mozilla.interfaces.extIConsole.class);
-			interfacesList.add(org.mozilla.interfaces.extIEventItem.class);
-			interfacesList.add(org.mozilla.interfaces.extIEventListener.class);
-			interfacesList.add(org.mozilla.interfaces.extIEvents.class);
-			interfacesList.add(org.mozilla.interfaces.extIExtension.class);
-			interfacesList.add(org.mozilla.interfaces.extIExtensions.class);
-			interfacesList.add(org.mozilla.interfaces.extIPreference.class);
-			interfacesList.add(org.mozilla.interfaces.extIPreferenceBranch.class);
-			interfacesList.add(org.mozilla.interfaces.extISessionStorage.class);
-//			interfacesList.add(org.mozilla.interfaces.gfxIFormats.class);
-			interfacesList.add(org.mozilla.interfaces.gfxIImageFrame.class);
-			interfacesList.add(org.mozilla.interfaces.IDispatch.class);
-			interfacesList.add(org.mozilla.interfaces.imgICache.class);
-			interfacesList.add(org.mozilla.interfaces.imgIContainer.class);
-			interfacesList.add(org.mozilla.interfaces.imgIContainerObserver.class);
-			interfacesList.add(org.mozilla.interfaces.imgIDecoder.class);
-			interfacesList.add(org.mozilla.interfaces.imgIDecoderObserver.class);
-			interfacesList.add(org.mozilla.interfaces.imgIEncoder.class);
-			interfacesList.add(org.mozilla.interfaces.imgILoad.class);
-			interfacesList.add(org.mozilla.interfaces.imgILoader.class);
-			interfacesList.add(org.mozilla.interfaces.imgIRequest.class);
-			interfacesList.add(org.mozilla.interfaces.imgITools.class);
-			interfacesList.add(org.mozilla.interfaces.inICSSValueSearch.class);
-			interfacesList.add(org.mozilla.interfaces.inIDeepTreeWalker.class);
-			interfacesList.add(org.mozilla.interfaces.inIDOMUtils.class);
-			interfacesList.add(org.mozilla.interfaces.inIDOMView.class);
-			interfacesList.add(org.mozilla.interfaces.inIFlasher.class);
-			interfacesList.add(org.mozilla.interfaces.inISearchObserver.class);
-			interfacesList.add(org.mozilla.interfaces.inISearchProcess.class);
-			interfacesList.add(org.mozilla.interfaces.jsdICallHook.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIContext.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIContextEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIDebuggerService.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIEphemeral.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIErrorHook.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIExecutionHook.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIFilter.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIFilterEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.jsdINestCallback.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIObject.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIProperty.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIScript.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIScriptEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIScriptHook.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIStackFrame.class);
-			interfacesList.add(org.mozilla.interfaces.jsdIValue.class);
-			interfacesList.add(org.mozilla.interfaces.mozIJSSubScriptLoader.class);
-			interfacesList.add(org.mozilla.interfaces.mozIPersonalDictionary.class);
-			interfacesList.add(org.mozilla.interfaces.mozISpellCheckingEngine.class);
-			interfacesList.add(org.mozilla.interfaces.mozISpellI18NManager.class);
-			interfacesList.add(org.mozilla.interfaces.mozISpellI18NUtil.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageAggregateFunction.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageConnection.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageDataSet.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageError.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageFunction.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStoragePendingStatement.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageProgressHandler.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageResultSet.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageRow.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageService.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageStatement.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementCallback.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementParams.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementRow.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementWrapper.class);
-			interfacesList.add(org.mozilla.interfaces.mozIStorageValueArray.class);
-			interfacesList.add(org.mozilla.interfaces.mozITXTToHTMLConv.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAboutModule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAbstractWorker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessible.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleCaretMoveEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleCoordinateType.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleEditableText.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleHyperLink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleHyperText.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleImage.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleRelation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleRetrieval.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleRole.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleScrollType.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleSelectable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleStateChangeEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleStates.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleTable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleTableChangeEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleText.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleTextChangeEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessibleValue.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAccessNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAddonInstallListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAddonRepository.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAddonSearchResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAddonSearchResultsCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAddonUpdateCheckListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAlertsService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAnnotationObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAnnotationService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIApplicationCache.class);
-			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheContainer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheNamespace.class);
-			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIApplicationUpdateService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAppShell.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAppShellService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAppStartup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAppStartup2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIArray.class);
-			interfacesList.add(org.mozilla.interfaces.nsIASN1Object.class);
-			interfacesList.add(org.mozilla.interfaces.nsIASN1PrintableItem.class);
-			interfacesList.add(org.mozilla.interfaces.nsIASN1Sequence.class);
-			interfacesList.add(org.mozilla.interfaces.nsIASN1Tree.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAssociatedContentSecurity.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAsyncInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAsyncOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAsyncStreamCopier.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAtom.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAtomService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAuthInformation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAuthPrompt.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAuthPrompt2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptAdapterFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptWrapper.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteController.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteInput.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompletePopup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteSearch.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteSimpleResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteSimpleResultListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBadCertListener2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBaseWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBidiKeyboard.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBidirectionalIterator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBinaryInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBinaryOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBlocklistService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBrowserBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBrowserDOMWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBrowserHistory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBrowserHistory_MOZILLA_1_9_1_ADDITIONS.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBrowserInstance.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBrowserSearchService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBufferedInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIBufferedOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIByteRangeRequest.class);
-//			interfacesList.add(org.mozilla.interfaces.nsICache.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheDeviceInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheEntryDescriptor.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheEntryInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheMetaDataVisitor.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheService.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheSession.class);
-			interfacesList.add(org.mozilla.interfaces.nsICacheVisitor.class);
-			interfacesList.add(org.mozilla.interfaces.nsICachingChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsICancelable.class);
-			interfacesList.add(org.mozilla.interfaces.nsICategoryManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsICertificateDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsICertOverrideService.class);
-			interfacesList.add(org.mozilla.interfaces.nsICertPickDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsICertTree.class);
-			interfacesList.add(org.mozilla.interfaces.nsICertTreeItem.class);
-			interfacesList.add(org.mozilla.interfaces.nsICertVerificationListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsICertVerificationResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIChannelClassifier.class);
-			interfacesList.add(org.mozilla.interfaces.nsIChannelEventSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsICharsetConverterManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsICharsetResolver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIChromeRegistry.class);
-			interfacesList.add(org.mozilla.interfaces.nsICipherInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsICipherInfoService.class);
-			interfacesList.add(org.mozilla.interfaces.nsICiter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClassInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClientAuthDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClientAuthUserDecision.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClipboard.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClipboardCommands.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClipboardDragDropHookList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClipboardDragDropHooks.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClipboardHelper.class);
-			interfacesList.add(org.mozilla.interfaces.nsIClipboardOwner.class);
-			interfacesList.add(org.mozilla.interfaces.nsICMSMessageErrors.class);
-			interfacesList.add(org.mozilla.interfaces.nsICMSSecureMessage.class);
-			interfacesList.add(org.mozilla.interfaces.nsICollation.class);
-			interfacesList.add(org.mozilla.interfaces.nsICollationFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsICollection.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandController.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandHandlerInit.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandLine.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandLineHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandLineValidator.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsICommandParams.class);
-			interfacesList.add(org.mozilla.interfaces.nsIComponentManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIComponentManagerObsolete.class);
-			interfacesList.add(org.mozilla.interfaces.nsIComponentRegistrar.class);
-			interfacesList.add(org.mozilla.interfaces.nsIConsoleListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIConsoleMessage.class);
-			interfacesList.add(org.mozilla.interfaces.nsIConsoleService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContainerBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentDispatchChooser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentPolicy.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentPrefObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentPrefService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentSniffer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentURIGrouper.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentViewer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentViewerContainer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentViewerEdit.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContentViewerFile.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContextMenuInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContextMenuListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIContextMenuListener2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIController.class);
-			interfacesList.add(org.mozilla.interfaces.nsIControllerCommand.class);
-			interfacesList.add(org.mozilla.interfaces.nsIControllerCommandGroup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIControllerCommandTable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIControllerContext.class);
-			interfacesList.add(org.mozilla.interfaces.nsIControllers.class);
-			interfacesList.add(org.mozilla.interfaces.nsIConverterInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIConverterOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookie.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookie2.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookieAcceptDialog.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookieManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookieManager2.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookiePermission.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookiePromptService.class);
-			interfacesList.add(org.mozilla.interfaces.nsICookieService.class);
-			interfacesList.add(org.mozilla.interfaces.nsICrashReporter.class);
-			interfacesList.add(org.mozilla.interfaces.nsICRLInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsICRLManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsICryptoFIPSInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsICryptoHash.class);
-			interfacesList.add(org.mozilla.interfaces.nsICryptoHMAC.class);
-			interfacesList.add(org.mozilla.interfaces.nsICurrentCharsetListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDataSignatureVerifier.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDataType.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDBusHandlerApp.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDebug.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDialogParamBlock.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDirectoryEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDirectoryService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDirectoryServiceProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDirectoryServiceProvider2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDirIndex.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDirIndexListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDirIndexParser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDNSListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDNSRecord.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDNSService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocCharset.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShell.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShell_MOZILLA_1_9_1.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShell_MOZILLA_1_9_1_dns.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShell_MOZILLA_1_9_1_SessionStorage.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShellHistory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShellLoadInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShellTreeItem.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShellTreeNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocShellTreeOwner.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocumentCharsetInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocumentEncoder.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocumentEncoderNodeFixup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocumentLoader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocumentLoaderFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDocumentStateListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOM3Attr.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOM3Document.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOM3DocumentEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOM3EventTarget.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOM3Node.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOM3Text.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOM3TypeInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMAbstractView.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMAttr.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMBarProp.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMBeforeUnloadEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCanvasGradient.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCanvasPattern.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCanvasRenderingContext2D.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCDATASection.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCharacterData.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMChromeWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMClientInformation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMClientRect.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMClientRectList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCommandEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMComment.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCounter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCRMFObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCrypto.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCryptoDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSS2Properties.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSCharsetRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSFontFaceRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSImportRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSMediaRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSMozDocumentRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSPageRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSPrimitiveValue.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSRuleList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSStyleDeclaration.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSStyleRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSStyleSheet.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSUnknownRule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSValue.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSValueList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDataContainerEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDataTransfer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentCSS.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentFragment.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentRange.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentStyle.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentTraversal.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentType.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentView.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentXBL.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMConfiguration.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMConstructor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMImplementation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMImplementationLS.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMStringList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMDragEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMElementCSSInlineStyle.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMEntity.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMEntityReference.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMEventGroup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMEventListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMEventTarget.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMFile.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMFileException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMFileList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoGeolocation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPosition.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionCoords.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionError.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionErrorCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionOptions.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMGetSVGDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHistory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAnchorElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAppletElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAreaElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAudioElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBaseElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBaseFontElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBodyElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBRElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLButtonElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLByteRanges.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLCanvasElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLCollection.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDirectoryElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDivElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDListElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLEmbedElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFieldSetElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFontElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFormElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFrameElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFrameSetElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHeadElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHeadingElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHRElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHtmlElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLIFrameElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLImageElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLInputElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLIsIndexElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLabelElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLegendElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLIElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLinkElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMapElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMediaElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMediaError.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMenuElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMetaElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLModElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLObjectElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOListElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOptGroupElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOptionElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOptionsCollection.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLParagraphElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLParamElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLPreElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLQuoteElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLScriptElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLSelectElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLSourceElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLStyleElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableCaptionElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableCellElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableColElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableRowElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableSectionElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTextAreaElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTimeRanges.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTitleElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLUListElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLVideoElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLVoidCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMJSNavigator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMJSWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMKeyEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLinkStyle.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLoadStatus.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLoadStatusEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLocation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSInput.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSLoadEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSOutput.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSParser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSParserFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSProgressEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSResourceResolver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSSerializer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMLSSerializerFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMMediaList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMMessageEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMMimeType.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMMimeTypeArray.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMModalContentWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMMouseEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMMouseScrollEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMMutationEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNamedNodeMap.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNameList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNavigator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNavigatorGeolocation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeIterator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeSelector.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNotation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNotifyPaintEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSCSS2Properties.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDataTransfer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDataTransfer_MOZILLA_1_9_1.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDocumentStyle.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSEditableElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSEventTarget.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSFeatureFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAnchorElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAnchorElement2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAreaElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAreaElement2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLButtonElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLFormControlList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLFormElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLFrameElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLHRElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLImageElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLInputElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLOptionCollection.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLOptionElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLSelectElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLTextAreaElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSRange.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSRGBAColor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSUIEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSXBLFormControl.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMNSXPathExpression.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMOfflineResourceList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMPageTransitionEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMParser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMParserJS.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMPkcs11.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMPlugin.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMPluginArray.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMPopupBlockedEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMProcessingInstruction.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMProgressEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMRange.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMRangeException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMRect.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMRGBColor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMScreen.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSerializer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSimpleGestureEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSmartCardEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorage.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorage2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageItem.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageWindow_1_9_1.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStyleSheet.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMStyleSheetList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAngle.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedAngle.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedBoolean.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedEnumeration.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedInteger.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedLength.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedLengthList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedNumber.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedNumberList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedPathData.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedPoints.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedPreserveAspectRatio.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedRect.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedString.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedTransformList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGCircleElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGClipPathElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGComponentTransferFunctionElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGDefsElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGDescElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGEllipseElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEBlendElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEColorMatrixElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEComponentTransferElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFECompositeElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEConvolveMatrixElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEDiffuseLightingElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEDisplacementMapElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEDistantLightElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFloodElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncAElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncBElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncGElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncRElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEGaussianBlurElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEImageElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEMergeElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEMergeNodeElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEMorphologyElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEOffsetElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEPointLightElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFESpecularLightingElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFESpotLightElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFETileElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFETurbulenceElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFilterElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFilterPrimitiveStandardAttributes.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFitToViewBox.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGForeignObjectElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGGElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGGradientElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGImageElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLength.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLengthList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLinearGradientElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLineElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLocatable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMarkerElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMaskElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMatrix.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMetadataElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGNumber.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGNumberList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSeg.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegArcAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegArcRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegClosePath.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicSmoothAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicSmoothRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticSmoothAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticSmoothRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoHorizontalAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoHorizontalRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoVerticalAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoVerticalRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegMovetoAbs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegMovetoRel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPatternElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPoint.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPointList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPolygonElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPolylineElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPreserveAspectRatio.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGRadialGradientElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGRect.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGRectElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGScriptElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGStopElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGStylable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGStyleElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGSVGElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGSwitchElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGSymbolElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextContentElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextPathElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextPositioningElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTitleElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTransform.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTransformable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTransformList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTSpanElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGUnitTypes.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGURIReference.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGUseElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGViewSpec.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGZoomAndPan.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGZoomEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMText.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMTextMetrics.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMToString.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMTreeWalker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMUIEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMUserDataHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMViewCSS.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMWindow2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMWindowCollection.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMWindowInternal.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMWindowUtils.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXMLDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathEvaluator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathExpression.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathNamespace.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathNSResolver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULButtonElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULCheckboxElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULCommandDispatcher.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULCommandEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULContainerElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULContainerItemElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULControlElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULDescriptionElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULImageElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULLabeledControlElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULLabelElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULMenuListElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULMultiSelectControlElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULPopupElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULSelectControlElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULSelectControlItemElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULTextBoxElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDOMXULTreeElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDownload.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDownloader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDownloadHistory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDownloadManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDownloadManagerUI.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDownloadObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDownloadProgressListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDragDropHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDragService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDragSession.class);
-			interfacesList.add(org.mozilla.interfaces.nsIDynamicContainer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditActionListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditingSession.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorDocShell.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorIMESupport.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorLogging.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorMailSupport.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorSpellCheck.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEditorStyleSheets.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEffectiveTLDService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEmbeddingSiteWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEmbeddingSiteWindow2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEncodedChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEntityConverter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEnvironment.class);
-			interfacesList.add(org.mozilla.interfaces.nsIErrorService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIEventTarget.class);
-			interfacesList.add(org.mozilla.interfaces.nsIException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExceptionManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExceptionProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExceptionService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExpatSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExtendedExpatSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExtensionManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExternalHelperAppService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExternalProtocolHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIExternalProtocolService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFastLoadFileControl.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFastLoadFileIO.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFastLoadReadControl.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFastLoadService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFastLoadWriteControl.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFaviconService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeed.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedContainer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedElementBase.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedEntry.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedGenerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedPerson.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedProcessor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedProgressListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedResultListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFeedTextConstruct.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFile.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFileChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFileInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFileOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFilePicker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFileProtocolHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFileURL.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFileView.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFind.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFindService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFlavorDataProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFontEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFormatConverter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFormFillController.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFormHistory2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFormHistoryImporter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFormSigningDialog.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFormSubmitObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIForwardIterator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFrameLoader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFrameLoaderOwner.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFTPChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFTPEventSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIFullScreen.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGConfService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGeneratingKeypairInfoDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGeolocationPrompt.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGeolocationProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGeolocationRequest.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGeolocationUpdate.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGlobalHistory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGlobalHistory2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGlobalHistory3.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGnomeVFSMimeApp.class);
-			interfacesList.add(org.mozilla.interfaces.nsIGnomeVFSService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHandlerApp.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHandlerInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHandlerService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHashable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHelperAppLauncher.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHelperAppLauncherDialog.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHistoryEntry.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHTMLAbsPosEditor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHTMLEditor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHTMLInlineTableEditor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHTMLObjectResizeListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHTMLObjectResizer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpActivityObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpAuthenticator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpAuthManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpChannelInternal.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpEventSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHTTPHeaderListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpHeaderVisitor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHTTPIndex.class);
-			interfacesList.add(org.mozilla.interfaces.nsIHttpProtocolHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIIdentityInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIIdleService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIIDNService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIIFrameBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIImageDocument.class);
-			interfacesList.add(org.mozilla.interfaces.nsIImageLoadingContent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIIncrementalDownload.class);
-			interfacesList.add(org.mozilla.interfaces.nsIINIParser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIINIParserFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInlineSpellChecker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInputIterator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInputStreamCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInputStreamChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInputStreamPump.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInputStreamTee.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInstallLocation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIInterfaceRequestor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIIOService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIIOService2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJARChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJARProtocolHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJARURI.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJSCID.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJSID.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJSIID.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJSON.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJSXMLHttpRequest.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJVMConfig.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJVMConfigManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJVMManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIJVMPluginInstance.class);
-			interfacesList.add(org.mozilla.interfaces.nsIKeygenThread.class);
-			interfacesList.add(org.mozilla.interfaces.nsIKeyObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIKeyObjectFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsILineInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIListBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsILivemarkService.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoadContext.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoadGroup.class);
-			interfacesList.add(org.mozilla.interfaces.nsILocale.class);
-			interfacesList.add(org.mozilla.interfaces.nsILocaleService.class);
-			interfacesList.add(org.mozilla.interfaces.nsILocalFile.class);
-			interfacesList.add(org.mozilla.interfaces.nsILocalFileWin.class);
-			interfacesList.add(org.mozilla.interfaces.nsILocalHandlerApp.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoginInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoginManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoginManager_MOZILLA_1_9_1.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoginManagerIEMigrationHelper.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoginManagerPrompter.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoginManagerStorage.class);
-			interfacesList.add(org.mozilla.interfaces.nsILoginMetaInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMarkupDocumentViewer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMemory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMemoryReporter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMemoryReporterManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMenuBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMIMEHeaderParam.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMIMEInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMIMEInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMIMEService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIModule.class);
-			interfacesList.add(org.mozilla.interfaces.nsIModuleLoader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMozIconURI.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMultiPartChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMultiplexInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMutable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIMutableArray.class);
-			interfacesList.add(org.mozilla.interfaces.nsINativeAppSupport.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavBookmarkObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavBookmarkObserver_MOZILLA_1_9_1_ADDITIONS.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavBookmarksService.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryBatchCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryContainerResultNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryFullVisitResultNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryObserver_MOZILLA_1_9_1_ADDITIONS.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryQuery.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryQueryOptions.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryQueryResultNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResultNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResultTreeViewer.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResultViewer.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryService.class);
-			interfacesList.add(org.mozilla.interfaces.nsINavHistoryVisitResultNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsINestedURI.class);
-			interfacesList.add(org.mozilla.interfaces.nsINetUtil.class);
-			interfacesList.add(org.mozilla.interfaces.nsINetworkLinkService.class);
-			interfacesList.add(org.mozilla.interfaces.nsINonBlockingAlertService.class);
-			interfacesList.add(org.mozilla.interfaces.nsINSSCertCache.class);
-			interfacesList.add(org.mozilla.interfaces.nsINSSErrorsService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIObjectInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIObjectLoadingContent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIObjectOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIObserverService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOCSPResponder.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOfflineCacheUpdate.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOfflineCacheUpdateObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOfflineCacheUpdateService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOSChromeItem.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOutputIterator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIOutputStreamCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIParentalControlsService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPasswordManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPasswordManagerInternal.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPermission.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPermissionManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPersistentProperties.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPhonetic.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPipe.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPK11Token.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPK11TokenDB.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPKCS11.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPKCS11Module.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPKCS11ModuleDB.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPKCS11Slot.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPKIParamBlock.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPlaintextEditor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPluginHost.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPluginManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPluginTag.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPopupBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPopupWindowManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrefBranch.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrefBranch2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrefBranchInternal.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrefetchService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrefLocalizedString.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrefService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrincipal.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrinterEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintingPrompt.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintingPromptService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintOptions.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintProgress.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintProgressParams.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintSettings.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintSettingsService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrintStatusFeedback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrivateBrowsingService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProcess.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProcess2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProfile.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProfileChangeStatus.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProfileLock.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProfileMigrator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProfileStartup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProfileUnlocker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProgrammingLanguage.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProgressEventSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPrompt.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPromptFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPromptService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPromptService2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProperties.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProperty.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPropertyBag.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPropertyBag2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIPropertyElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProtectedAuthThread.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProtocolHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyService2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProxiedChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProxiedProtocolHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProxyAutoConfig.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProxyInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIProxyObjectManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRandomAccessIterator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRandomGenerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFBlob.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFCompositeDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFContainer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFContainerUtils.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFDate.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFDelegateFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFInferDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFInMemoryDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFInt.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFLiteral.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFNode.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFPropagatableDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFPurgeableDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFRemoteDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFResource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLParser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSerializer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSinkObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRecentBadCertsService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRecyclingAllocator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRefreshURI.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRelativeFilePref.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRemoteService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRequest.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRequestObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRequestObserverProxy.class);
-			interfacesList.add(org.mozilla.interfaces.nsIResProtocolHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIResumableChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIRunnable.class);
-			interfacesList.add(org.mozilla.interfaces.nsISafeOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsISaveAsCharset.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXAttributes.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXContentHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXDTDHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXErrorHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXLexicalHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXLocator.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXMutableAttributes.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXXMLFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsISAXXMLReader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScreen.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScreenManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScreenManager_MOZILLA_1_9_1_BRANCH.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptableDateFormat.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptableInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptableInterfaces.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptableInterfacesByID.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptableRegion.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptableUnescapeHTML.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptableUnicodeConverter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptError.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptLoaderObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScriptSecurityManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScrollable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIScrollBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsISearchableInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsISearchContext.class);
-			interfacesList.add(org.mozilla.interfaces.nsISearchEngine.class);
-			interfacesList.add(org.mozilla.interfaces.nsISearchSubmission.class);
-			interfacesList.add(org.mozilla.interfaces.nsISecretDecoderRing.class);
-			interfacesList.add(org.mozilla.interfaces.nsISecretDecoderRingConfig.class);
-			interfacesList.add(org.mozilla.interfaces.nsISecureBrowserUI.class);
-			interfacesList.add(org.mozilla.interfaces.nsISecurityCheckedComponent.class);
-			interfacesList.add(org.mozilla.interfaces.nsISecurityEventSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsISecurityInfoProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsISecurityWarningDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsISeekableStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsISelectElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsISelection.class);
-			interfacesList.add(org.mozilla.interfaces.nsISelection2.class);
-			interfacesList.add(org.mozilla.interfaces.nsISelectionController.class);
-			interfacesList.add(org.mozilla.interfaces.nsISelectionDisplay.class);
-			interfacesList.add(org.mozilla.interfaces.nsISelectionListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsISelectionPrivate.class);
-			interfacesList.add(org.mozilla.interfaces.nsISemanticUnitScanner.class);
-			interfacesList.add(org.mozilla.interfaces.nsISerializable.class);
-			interfacesList.add(org.mozilla.interfaces.nsIServerSocket.class);
-			interfacesList.add(org.mozilla.interfaces.nsIServerSocketListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIServiceManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsISHContainer.class);
-			interfacesList.add(org.mozilla.interfaces.nsISHEntry.class);
-			interfacesList.add(org.mozilla.interfaces.nsISHistory.class);
-			interfacesList.add(org.mozilla.interfaces.nsISHistoryInternal.class);
-			interfacesList.add(org.mozilla.interfaces.nsISHistoryListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsISHTransaction.class);
-			interfacesList.add(org.mozilla.interfaces.nsISidebar.class);
-			interfacesList.add(org.mozilla.interfaces.nsISidebarExternal.class);
-			interfacesList.add(org.mozilla.interfaces.nsISimpleEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsISimpleStreamListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsISimpleUnicharStreamFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsISliderListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsISMimeCert.class);
-			interfacesList.add(org.mozilla.interfaces.nsISocketProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsISocketProviderService.class);
-			interfacesList.add(org.mozilla.interfaces.nsISocketTransport.class);
-			interfacesList.add(org.mozilla.interfaces.nsISocketTransportService.class);
-			interfacesList.add(org.mozilla.interfaces.nsISOCKSSocketInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsISound.class);
-			interfacesList.add(org.mozilla.interfaces.nsISSLCertErrorDialog.class);
-			interfacesList.add(org.mozilla.interfaces.nsISSLErrorListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsISSLSocketControl.class);
-			interfacesList.add(org.mozilla.interfaces.nsISSLStatus.class);
-			interfacesList.add(org.mozilla.interfaces.nsISSLStatusProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStackFrame.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStandardURL.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStorageStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamCipher.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamConverter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamConverterService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamListenerTee.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamLoader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamLoaderObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStreamTransportService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStringBundle.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStringBundleOverride.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStringBundleService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStringEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStringInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIStyleSheetService.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupports.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsArray.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsChar.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsCString.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsDouble.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsFloat.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsID.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsInterfacePointer.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRBool.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPrimitive.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRInt16.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRInt32.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRInt64.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPriority.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRTime.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint16.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint32.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint64.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint8.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsString.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsVoid.class);
-			interfacesList.add(org.mozilla.interfaces.nsISupportsWeakReference.class);
-			interfacesList.add(org.mozilla.interfaces.nsISyncLoadDOMService.class);
-			interfacesList.add(org.mozilla.interfaces.nsISyncStreamListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsISystemProxySettings.class);
-			interfacesList.add(org.mozilla.interfaces.nsITableEditor.class);
-			interfacesList.add(org.mozilla.interfaces.nsITaggingService.class);
-			interfacesList.add(org.mozilla.interfaces.nsITextScroll.class);
-			interfacesList.add(org.mozilla.interfaces.nsITextServicesFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsITextToSubURI.class);
-			interfacesList.add(org.mozilla.interfaces.nsIThread.class);
-			interfacesList.add(org.mozilla.interfaces.nsIThreadEventFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIThreadInternal.class);
-			interfacesList.add(org.mozilla.interfaces.nsIThreadManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIThreadObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIThreadPool.class);
-			interfacesList.add(org.mozilla.interfaces.nsIThreadPoolListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsITimelineService.class);
-			interfacesList.add(org.mozilla.interfaces.nsITimer.class);
-			interfacesList.add(org.mozilla.interfaces.nsITimerCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsITokenDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsITokenPasswordDialogs.class);
-			interfacesList.add(org.mozilla.interfaces.nsIToolkitChromeRegistry.class);
-			interfacesList.add(org.mozilla.interfaces.nsIToolkitProfile.class);
-			interfacesList.add(org.mozilla.interfaces.nsIToolkitProfileService.class);
-			interfacesList.add(org.mozilla.interfaces.nsITooltipListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsITooltipTextProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsITraceableChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransaction.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransactionList.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransactionListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransactionManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransfer.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransferable.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransport.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransportEventSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsITransportSecurityInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsITreeBoxObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsITreeColumn.class);
-			interfacesList.add(org.mozilla.interfaces.nsITreeColumns.class);
-			interfacesList.add(org.mozilla.interfaces.nsITreeContentView.class);
-			interfacesList.add(org.mozilla.interfaces.nsITreeSelection.class);
-			interfacesList.add(org.mozilla.interfaces.nsITreeView.class);
-			interfacesList.add(org.mozilla.interfaces.nsITXTToHTMLConv.class);
-			interfacesList.add(org.mozilla.interfaces.nsITypeAheadFind.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUnicharInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUnicharLineInputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUnicharOutputStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUnicharStreamListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUnicharStreamLoader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUnicharStreamLoaderObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUnicodeNormalizer.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdate.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdateChecker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdateCheckListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdateItem.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdateManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdatePatch.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdatePrompt.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUpdateTimerManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUploadChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURI.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURIChecker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURIClassifier.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURIClassifierCallback.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURIContentListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURIFixup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURILoader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURIRefObject.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURL.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURLFormatter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIURLParser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUserCertPicker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUserInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUTF8ConverterService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUTF8StringEnumerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIUUIDGenerator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIVariant.class);
-			interfacesList.add(org.mozilla.interfaces.nsIVersionComparator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWeakReference.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowser.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserChrome.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserChrome2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserChromeFocus.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserFind.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserFindInFrames.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserFocus.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserPersist.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserPrint.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserSetup.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserStream.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebContentHandlerRegistrar.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebHandlerApp.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebNavigation.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebNavigationInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebPageDescriptor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebProgress.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebProgressListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWebProgressListener2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWifiAccessPoint.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWifiListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWifiMonitor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWindowCreator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWindowCreator2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWindowDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWindowMediator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWindowMediatorListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWindowProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWindowWatcher.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWorker.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWorkerErrorEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWorkerGlobalScope.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWorkerMessageEvent.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWorkerMessagePort.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWorkerNavigator.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWorkerScope.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWritablePropertyBag.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWritablePropertyBag2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWritableVariant.class);
-			interfacesList.add(org.mozilla.interfaces.nsIWyciwygChannel.class);
-			interfacesList.add(org.mozilla.interfaces.nsIX509Cert.class);
-			interfacesList.add(org.mozilla.interfaces.nsIX509Cert2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIX509Cert3.class);
-			interfacesList.add(org.mozilla.interfaces.nsIX509CertDB.class);
-			interfacesList.add(org.mozilla.interfaces.nsIX509CertDB2.class);
-			interfacesList.add(org.mozilla.interfaces.nsIX509CertList.class);
-			interfacesList.add(org.mozilla.interfaces.nsIX509CertValidity.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXBLAccessible.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXMLContentBuilder.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXMLHttpRequest.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXMLHttpRequestEventTarget.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXMLHttpRequestUpload.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Classes.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_ClassesByID.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Constructor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Exception.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_ID.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Results.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Utils.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_utils_Sandbox.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCConstructor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCSecurityManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPCWrappedJSObjectGetter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPIDialogService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPIInstallInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPInstallManager.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPIProgressDialog.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPointerResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPTLoader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXPTLoaderSink.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXSLTException.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXSLTProcessor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXSLTProcessorObsolete.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXSLTProcessorPrivate.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXTFAttributeHandler.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXTFElement.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXTFElementFactory.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXTFElementWrapper.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXTFPrivate.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULAppInfo.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULAppInstall.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULBrowserWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULBuilderListener.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULChromeRegistry.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULOverlayProvider.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULRuntime.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULSortService.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateBuilder.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateQueryProcessor.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateResult.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateRuleFilter.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULTreeBuilder.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULTreeBuilderObserver.class);
-			interfacesList.add(org.mozilla.interfaces.nsIXULWindow.class);
-			interfacesList.add(org.mozilla.interfaces.nsIZipEntry.class);
-			interfacesList.add(org.mozilla.interfaces.nsIZipReader.class);
-			interfacesList.add(org.mozilla.interfaces.nsIZipReaderCache.class);
-			interfacesList.add(org.mozilla.interfaces.nsIZipWriter.class);
-			interfacesList.add(org.mozilla.interfaces.nsPICommandUpdater.class);
-			interfacesList.add(org.mozilla.interfaces.nsPIDNSService.class);
-			interfacesList.add(org.mozilla.interfaces.nsPIEditorTransaction.class);
-			interfacesList.add(org.mozilla.interfaces.nsPIExternalAppLauncher.class);
-			interfacesList.add(org.mozilla.interfaces.nsPIPlacesDatabase.class);
-			interfacesList.add(org.mozilla.interfaces.nsPISocketTransportService.class);
-			interfacesList.add(org.mozilla.interfaces.rdfIDataSource.class);
-			interfacesList.add(org.mozilla.interfaces.rdfISerializer.class);
-			interfacesList.add(org.mozilla.interfaces.rdfITripleVisitor.class);
-			interfacesList.add(org.mozilla.interfaces.txIEXSLTRegExFunctions.class);
-			interfacesList.add(org.mozilla.interfaces.txIFunctionEvaluationContext.class);
-			interfacesList.add(org.mozilla.interfaces.txINodeSet.class);
-			interfacesList.add(org.mozilla.interfaces.txIXPathObject.class);
-			interfacesList.add(org.mozilla.interfaces.xpcIJSModuleLoader.class);
-			interfacesList.add(org.mozilla.interfaces.xpcIJSWeakReference.class);
-		}
-
-		return interfacesList;
-	}
-}

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/browser/XulRunnerBrowser.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/browser/XulRunnerBrowser.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/browser/XulRunnerBrowser.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -13,8 +13,8 @@
 
 import java.io.File;
 import java.io.IOException;
-import java.lang.reflect.Method;
 import java.net.URL;
+
 import org.eclipse.core.runtime.FileLocator;
 import org.eclipse.core.runtime.Platform;
 import org.eclipse.swt.SWT;
@@ -23,8 +23,8 @@
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Display;
 import org.eclipse.swt.widgets.Listener;
-import org.jboss.tools.vpe.xulrunner.XPCOM;
 import org.jboss.tools.vpe.xulrunner.XulRunnerException;
+import org.jboss.tools.vpe.xulrunner.util.XPCOM;
 import org.mozilla.interfaces.nsIComponentManager;
 import org.mozilla.interfaces.nsIPrefService;
 import org.mozilla.interfaces.nsIRequest;
@@ -95,8 +95,7 @@
             setBoolRootPref(PREFERENCE_DISABLEOPENDURINGLOAD, true);
             setBoolRootPref(PREFERENCE_DISABLEWINDOWSTATUSCHANGE, true);
             
-            nsIWebBrowserSetup setup = (nsIWebBrowserSetup) webBrowser
-            	.queryInterface(nsIWebBrowserSetup.NS_IWEBBROWSERSETUP_IID);
+            nsIWebBrowserSetup setup = XPCOM.queryInterface(webBrowser, nsIWebBrowserSetup.class);
             setup.setProperty(nsIWebBrowserSetup.SETUP_IS_CHROME_WRAPPER, 1);
     
             // JBIDE-1329 Solution was contributed by Snjezana Peco
@@ -242,32 +241,32 @@
 	}
 	
 	public void setURL(String url) {
-		nsIWebNavigation webNavigation = (nsIWebNavigation) webBrowser.queryInterface(nsIWebNavigation.NS_IWEBNAVIGATION_IID);
+		nsIWebNavigation webNavigation = XPCOM.queryInterface(webBrowser, nsIWebNavigation.class);
 		webNavigation.loadURI(url, nsIWebNavigation.LOAD_FLAGS_NONE, null, null, null);
 	}
 	
 	public String getURL() {
-		nsIWebNavigation webNavigation = (nsIWebNavigation) webBrowser.queryInterface(nsIWebNavigation.NS_IWEBNAVIGATION_IID);
+		nsIWebNavigation webNavigation = XPCOM.queryInterface(webBrowser, nsIWebNavigation.class);
 		return webNavigation.getCurrentURI().getSpec();
 	}
 	
 	public void stop() {
-		nsIWebNavigation webNavigation = (nsIWebNavigation) webBrowser.queryInterface(nsIWebNavigation.NS_IWEBNAVIGATION_IID);
+		nsIWebNavigation webNavigation = XPCOM.queryInterface(webBrowser, nsIWebNavigation.class);
 		webNavigation.stop(nsIWebNavigation.STOP_ALL);
 	}
 	
 	public void reload() {
-		nsIWebNavigation webNavigation = (nsIWebNavigation) webBrowser.queryInterface(nsIWebNavigation.NS_IWEBNAVIGATION_IID);
+		nsIWebNavigation webNavigation = XPCOM.queryInterface(webBrowser, nsIWebNavigation.class);
 		webNavigation.reload(nsIWebNavigation.LOAD_FLAGS_NONE);
 	}
 	
 	public void goBack() {
-		nsIWebNavigation webNavigation = (nsIWebNavigation) webBrowser.queryInterface(nsIWebNavigation.NS_IWEBNAVIGATION_IID);
+		nsIWebNavigation webNavigation = XPCOM.queryInterface(webBrowser, nsIWebNavigation.class);
 		webNavigation.goBack();
 	}
 	
 	public void goForward() {
-		nsIWebNavigation webNavigation = (nsIWebNavigation) webBrowser.queryInterface(nsIWebNavigation.NS_IWEBNAVIGATION_IID);
+		nsIWebNavigation webNavigation = XPCOM.queryInterface(webBrowser, nsIWebNavigation.class);
 		webNavigation.goForward();
 	}
 

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/Flasher.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/Flasher.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/Flasher.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -1,7 +1,7 @@
 package org.jboss.tools.vpe.xulrunner.editor;
 
 import org.eclipse.core.runtime.Platform;
-import org.jboss.tools.vpe.xulrunner.XPCOM;
+import org.jboss.tools.vpe.xulrunner.util.XPCOM;
 import org.mozilla.interfaces.inIFlasher;
 import org.mozilla.interfaces.nsIDOMElement;
 import org.mozilla.interfaces.nsIServiceManager;

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseListener.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseListener.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseListener.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -12,6 +12,7 @@
 package org.jboss.tools.vpe.xulrunner.editor;
 
 import org.eclipse.core.runtime.Platform;
+import org.jboss.tools.vpe.xulrunner.util.XPCOM;
 import org.mozilla.interfaces.nsIDOMElement;
 import org.mozilla.interfaces.nsIDOMEvent;
 import org.mozilla.interfaces.nsIDOMEventListener;
@@ -43,8 +44,7 @@
 	 * @see org.mozilla.interfaces.nsIDOMEventListener#handleEvent(org.mozilla.interfaces.nsIDOMEvent)
 	 */
 	public void handleEvent(nsIDOMEvent event) {
-		nsIDOMMouseEvent mouseEvent = (nsIDOMMouseEvent) event
-				.queryInterface(nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID);
+		nsIDOMMouseEvent mouseEvent = XPCOM.queryInterface(event, nsIDOMMouseEvent.class);
 
 		if (mouseEvent == null) {
 			return;
@@ -90,14 +90,12 @@
 
 		if (!isContextClick && (mouseEvent.getButton() == 0)
 				&& (mouseEvent.getDetail() == 1)) {
-			nsIDOMNSEvent internalEvent = (nsIDOMNSEvent) mouseEvent
-					.queryInterface(nsIDOMNSEvent.NS_IDOMNSEVENT_IID);
+			nsIDOMNSEvent internalEvent = XPCOM.queryInterface(mouseEvent, nsIDOMNSEvent.class);
 			if (internalEvent != null) {
 				org.mozilla.interfaces.nsIDOMEventTarget eventTarget = internalEvent
 						.getExplicitOriginalTarget();
 				if (eventTarget != null) {
-					nsIDOMElement domElement = (nsIDOMElement) eventTarget
-							.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+					nsIDOMElement domElement = XPCOM.queryInterface(eventTarget, nsIDOMElement.class);
 					if (domElement != null) {
 						int clientX = mouseEvent.getClientX();
 						int clientY = mouseEvent.getClientY();
@@ -120,7 +118,7 @@
 		 nsIDOMEventTarget target = mouseEvent.getTarget();
 		 
 		 if (target != null ) {
-				nsIDOMElement domElement = (nsIDOMElement) target.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+				nsIDOMElement domElement = XPCOM.queryInterface(target, nsIDOMElement.class);
 				if (domElement != null) {
 					int clientX = mouseEvent.getClientX();
 					int clientY = mouseEvent.getClientY();

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseMotionListener.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseMotionListener.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/VpeResizerMouseMotionListener.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,6 +11,7 @@
 
 package org.jboss.tools.vpe.xulrunner.editor;
 
+import org.jboss.tools.vpe.xulrunner.util.XPCOM;
 import org.mozilla.interfaces.nsIDOMEvent;
 import org.mozilla.interfaces.nsIDOMEventListener;
 import org.mozilla.interfaces.nsIDOMMouseEvent;
@@ -37,7 +38,7 @@
 	 * @param event a nsIDOMEvent object
 	 */
 	public void mouseMove(nsIDOMEvent event) {
-		nsIDOMMouseEvent mouseEvent = (nsIDOMMouseEvent) event.queryInterface(nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID);
+		nsIDOMMouseEvent mouseEvent = XPCOM.queryInterface(event, nsIDOMMouseEvent.class);
 		
 		if ( mouseEvent == null ) {
 			return;

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -23,9 +23,9 @@
 import org.eclipse.swt.widgets.Event;
 import org.eclipse.swt.widgets.Listener;
 import org.jboss.tools.vpe.xulrunner.BrowserPlugin;
-import org.jboss.tools.vpe.xulrunner.XPCOM;
 import org.jboss.tools.vpe.xulrunner.XulRunnerException;
 import org.jboss.tools.vpe.xulrunner.browser.XulRunnerBrowser;
+import org.jboss.tools.vpe.xulrunner.util.XPCOM;
 import org.mozilla.interfaces.nsIBaseWindow;
 import org.mozilla.interfaces.nsIClipboardDragDropHookList;
 import org.mozilla.interfaces.nsIComponentManager;
@@ -277,8 +277,7 @@
 		nsIDocShell docShell = getDocShell();
 
 		if (docShell != null) {
-			nsIClipboardDragDropHookList hookList = (nsIClipboardDragDropHookList) docShell
-					.queryInterface(nsIClipboardDragDropHookList.NS_ICLIPBOARDDRAGDROPHOOKLIST_IID);
+			nsIClipboardDragDropHookList hookList = XPCOM.queryInterface(docShell, nsIClipboardDragDropHookList.class);
 			return hookList;
 		}
 		return null;
@@ -286,9 +285,7 @@
 
 	public nsIDocShell getDocShell() {
 		if (docShell == null) {
-			nsIInterfaceRequestor interfaceRequestor = (nsIInterfaceRequestor) getWebBrowser()
-					.queryInterface(
-							nsIInterfaceRequestor.NS_IINTERFACEREQUESTOR_IID);
+			nsIInterfaceRequestor interfaceRequestor = XPCOM.queryInterface(getWebBrowser(), nsIInterfaceRequestor.class);
 			docShell = (nsIDocShell) interfaceRequestor
 					.getInterface(nsIDocShell.NS_IDOCSHELL_IID);
 		}
@@ -302,8 +299,7 @@
 	}
 
 	public nsIDOMDocumentRange getDOMDocumentRange() {
-		return (nsIDOMDocumentRange) getDOMDocument().queryInterface(
-				nsIDOMDocumentRange.NS_IDOMDOCUMENTRANGE_IID);
+		return XPCOM.queryInterface(getDOMDocument(), nsIDOMDocumentRange.class);
 	}
 
 	public nsIDOMRange createDOMRange() {
@@ -437,8 +433,7 @@
 		// } else
 		if (element != null) {
 			try {
-				((nsIBaseWindow) getWebBrowser().queryInterface(
-						nsIBaseWindow.NS_IBASEWINDOW_IID)).repaint(true);
+				XPCOM.queryInterface(getWebBrowser(), nsIBaseWindow.class).repaint(true);
 			} catch (XPCOMException ex) {
 				// just ignore its
 				BrowserPlugin.getDefault().logInfo("repaint failed", ex); //$NON-NLS-1$
@@ -514,8 +509,7 @@
 		nsIDOMElement domElement;
 		try {
 
-			domElement = (nsIDOMElement) node
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			domElement = XPCOM.queryInterface(node, nsIDOMElement.class);
 
 		} catch (XPCOMException exception) {
 			// if we can cast it's is invisible elenebt
@@ -542,8 +536,7 @@
 
 		try {
 
-			parentElement = (nsIDOMElement) element.getParentNode()
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+			parentElement = XPCOM.queryInterface(element.getParentNode(), nsIDOMElement.class);
 		} catch (XPCOMException ex) {
 			// if parent node isn't nsIDOMElement just return null;
 			return null;
@@ -554,8 +547,7 @@
 				return parentElement;
 			} else {
 
-				parentElement = (nsIDOMElement) parentElement.getParentNode()
-						.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+				parentElement = XPCOM.queryInterface(parentElement.getParentNode(), nsIDOMElement.class);
 
 			}
 		}
@@ -598,7 +590,7 @@
 
 	public void showSelectionRectangle() {
 
-		// ((nsIBaseWindow)getWebBrowser().queryInterface(nsIBaseWindow.NS_IBASEWINDOW_IID)).repaint(false);
+		// (queryInterface(getWebBrowser(), nsIBaseWindow.class)).repaint(false);
 
 		if (getLastSelectedElement() != null) {
 			if (scrollRegtangleFlag) {
@@ -639,7 +631,7 @@
 		// //TODO Max Areshkau (may be exist passability not draw selection on
 		// resize event when we switches to other view)
 		// try {
-		// ((nsIBaseWindow)getWebBrowser().queryInterface(nsIBaseWindow.NS_IBASEWINDOW_IID)).repaint(true);
+		// (queryInterface(getWebBrowser(), nsIBaseWindow.class)).repaint(true);
 		// } catch(XPCOMException ex) {
 		// //just ignore its
 		//				BrowserPlugin.getDefault().logInfo("repaint failed", ex); //$NON-NLS-1$
@@ -674,13 +666,9 @@
 		if (node != null) {
 
 			if (node.getNodeType() == nsIDOMNode.ELEMENT_NODE) {
-				return (nsIDOMElement) node
-						.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+				return XPCOM.queryInterface(node, nsIDOMElement.class);
 			} else if (node.getNodeType() == nsIDOMNode.TEXT_NODE) {
-
-				return (nsIDOMElement) node.getParentNode().queryInterface(
-						nsIDOMElement.NS_IDOMELEMENT_IID);
-
+				return XPCOM.queryInterface(node.getParentNode(), nsIDOMElement.class);
 			}
 
 		}

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeResizer.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeResizer.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeResizer.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -11,9 +11,12 @@
 
 package org.jboss.tools.vpe.xulrunner.editor;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.util.ArrayList;
+
 import org.eclipse.swt.graphics.Rectangle;
+import org.jboss.tools.vpe.xulrunner.util.XulRunnerVpeUtils;
 import org.mozilla.interfaces.nsIDOMCSSStyleDeclaration;
 import org.mozilla.interfaces.nsIDOMDocument;
 import org.mozilla.interfaces.nsIDOMElement;
@@ -231,7 +234,7 @@
 			return;
 		}
 
-		nsIDOMNode parentNode = (nsIDOMNode) bodyElement.queryInterface(nsIDOMNode.NS_IDOMNODE_IID);
+		nsIDOMNode parentNode = queryInterface(bodyElement, nsIDOMNode.class);
 
 		if ( parentNode == null) {
 			return;
@@ -319,7 +322,7 @@
 	 */
 	public void mouseMove(nsIDOMEvent event) {
 		if (isResizing) {
-			nsIDOMMouseEvent mouseEvent = (nsIDOMMouseEvent)event.queryInterface(nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID);
+			nsIDOMMouseEvent mouseEvent = queryInterface(event, nsIDOMMouseEvent.class);
 			int clientX, clientY;
 
 			clientX = mouseEvent.getClientX();
@@ -516,7 +519,7 @@
 	 */
 	private nsIDOMEventTarget getDOMEventTarget() {
 		
-		nsIDOMEventTarget eventTarget = (nsIDOMEventTarget) domDocument.queryInterface(nsIDOMEventTarget.NS_IDOMEVENTTARGET_IID);
+		nsIDOMEventTarget eventTarget = queryInterface(domDocument, nsIDOMEventTarget.class);
 		if (eventTarget == null) {
 			throw new RuntimeException("nsIDOMEventTarget is null"); //$NON-NLS-1$
 		}
@@ -604,13 +607,13 @@
 		
 		nsIDOMElement bodyElement = null;
 		
-		nsIDOMHTMLDocument htmlDocument = (nsIDOMHTMLDocument) domDocument.queryInterface(nsIDOMHTMLDocument.NS_IDOMHTMLDOCUMENT_IID);
+		nsIDOMHTMLDocument htmlDocument = queryInterface(domDocument, nsIDOMHTMLDocument.class);
 		
 		if ( htmlDocument != null ) {
 			 nsIDOMHTMLElement htmlBody = htmlDocument.getBody();
 			 
 			 if ( htmlBody != null ) {
-				 bodyElement = (nsIDOMElement) htmlBody.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+				 bodyElement = queryInterface(htmlBody, nsIDOMElement.class);
 			 } // if
 		} // if
 		
@@ -626,7 +629,7 @@
 	private nsIDOMElement createResizer(String resizerMarkerString, nsIDOMNode parentNode) {
 		nsIDOMElement aNewResizer = createAnonymousElement(XulRunnerConstants.HTML_TAG_SPAN, parentNode, XulRunnerConstants.VPE_CLASSNAME_MOZ_RESIZER, false );
 		
-		nsIDOMEventTarget evtTarget = (nsIDOMEventTarget) aNewResizer.queryInterface(nsIDOMEventTarget.NS_IDOMEVENTTARGET_IID);
+		nsIDOMEventTarget evtTarget = queryInterface(aNewResizer, nsIDOMEventTarget.class);
 		
 		evtTarget.addEventListener(XulRunnerConstants.EVENT_NAME_MOUSEDOWN, mouseListener, true);
 
@@ -730,7 +733,7 @@
 	 * @param cssPropertyValue
 	 */
 	private void setStyle(nsIDOMElement domElement, String cssPropertyName, String cssPropertyValue) {
-		nsIDOMElementCSSInlineStyle inlineStyles = (nsIDOMElementCSSInlineStyle) domElement.queryInterface(nsIDOMElementCSSInlineStyle.NS_IDOMELEMENTCSSINLINESTYLE_IID);
+		nsIDOMElementCSSInlineStyle inlineStyles = queryInterface(domElement, nsIDOMElementCSSInlineStyle.class);
 		
 	    if ( inlineStyles == null) {
 	    	return;

Deleted: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeUtils.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeUtils.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeUtils.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -1,111 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributor:
- *     Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-
-package org.jboss.tools.vpe.xulrunner.editor;
-
-import org.eclipse.swt.graphics.Rectangle;
-import org.jboss.tools.vpe.xulrunner.BrowserPlugin;
-import org.mozilla.interfaces.nsIBoxObject;
-import org.mozilla.interfaces.nsIDOMDocument;
-import org.mozilla.interfaces.nsIDOMElement;
-import org.mozilla.interfaces.nsIDOMNSDocument;
-import org.mozilla.interfaces.nsIDOMNSElement;
-import org.mozilla.interfaces.nsIDOMNSHTMLElement;
-import org.mozilla.interfaces.nsIDOMNode;
-import org.mozilla.xpcom.XPCOMException;
-
-/**
- * @author dsakovich at exadel.com
- */
-public class XulRunnerVpeUtils {
-
-	private static int findPosX(nsIDOMNSHTMLElement boxObject) {
-		int curleft = 0;
-		
-		if (boxObject.getOffsetParent() != null) {
-			while (true) {
-				curleft += boxObject.getOffsetLeft();
-				if ( boxObject.getOffsetParent() == null)
-					return curleft;
-				boxObject = (nsIDOMNSHTMLElement) boxObject.getOffsetParent().queryInterface(nsIDOMNSHTMLElement.NS_IDOMNSHTMLELEMENT_IID);
-			}
-		} else {
-			curleft += boxObject.getOffsetLeft();
-		}
-		return curleft;
-	}
-
-	private static int findPosY(nsIDOMNSHTMLElement boxObject) {
-		int curleft = 0;
-		
-		if (boxObject.getOffsetParent() != null) {
-			while (true) {
-				curleft += boxObject.getOffsetTop();
-				if ( boxObject.getOffsetParent() == null)
-					return curleft;
-				boxObject = (nsIDOMNSHTMLElement) boxObject.getOffsetParent().queryInterface(nsIDOMNSHTMLElement.NS_IDOMNSHTMLELEMENT_IID);
-			}
-		} else {
-			curleft += boxObject.getOffsetTop();
-		}
-		return curleft;
-	}
-
-	/**
-	 * @param domElement
-	 * @return Rectangle
-	 */
-	static public Rectangle getElementBounds(nsIDOMNode domNode) {
-		try {
-			nsIDOMElement domElement = (nsIDOMElement) domNode
-					.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
-		
-			nsIDOMNSElement htmlElement = (nsIDOMNSElement) domNode
-					.queryInterface(nsIDOMNSElement.NS_IDOMNSELEMENT_IID);
-			nsIDOMNSHTMLElement domNSHTMLElement = (nsIDOMNSHTMLElement) domNode
-					.queryInterface(nsIDOMNSHTMLElement.NS_IDOMNSHTMLELEMENT_IID);
-			nsIDOMDocument document = domElement.getOwnerDocument();
-
-			nsIDOMNSDocument nsDocument = (nsIDOMNSDocument) document
-					.queryInterface(nsIDOMNSDocument.NS_IDOMNSDOCUMENT_IID);
-			nsIBoxObject boxObject = nsDocument.getBoxObjectFor(domElement);
-			Rectangle rectangle = new Rectangle(findPosX(domNSHTMLElement),
-														 findPosY(domNSHTMLElement),
-														 boxObject.getWidth(),
-														 boxObject.getHeight());
-
-			if (BrowserPlugin.PRINT_ELEMENT_BOUNDS) {
-				System.out.println("getElementBounds(IDOMNode) returns "
-						+ rectangle);
-				System.out
-						.println("nsIDOMNSHTMLElement getOffsetLeft,getOffsetTop,getOffsetWidth,getOffsetHeight"
-								+ new Rectangle(domNSHTMLElement.getOffsetLeft(),
-										domNSHTMLElement.getOffsetTop(), domNSHTMLElement
-												.getOffsetWidth(), domNSHTMLElement
-												.getOffsetHeight()));
-				System.out
-						.println("nsIDOMNSElement getClientLeft,getClientTop,getClientWidth,getClientHeight"
-								+ new Rectangle(htmlElement.getClientLeft(),
-										htmlElement.getClientTop(), htmlElement
-												.getClientWidth(), htmlElement
-												.getClientHeight()));
-				System.out.println("nsIBoxObject getX,getY,getWidth,getHeight"
-						+ new Rectangle(boxObject.getX(), boxObject.getY(),
-								boxObject.getWidth(), boxObject.getHeight()));
-
-			}
-			return rectangle;
-
-		} catch (XPCOMException xpcomException) {
-			return new Rectangle(0, 0, 0, 0);
-		}
-	}
-}

Copied: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util (from rev 22445, trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/browser/util)

Modified: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/DOMTreeDumper.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/browser/util/DOMTreeDumper.java	2010-05-31 16:12:05 UTC (rev 22445)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/DOMTreeDumper.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,8 +10,9 @@
  ******************************************************************************/
 
 
-package org.jboss.tools.vpe.xulrunner.browser.util;
+package org.jboss.tools.vpe.xulrunner.util;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
 
 import java.io.PrintStream;
 import java.util.List;
@@ -108,7 +109,7 @@
      */
     public void dumpToStream(PrintStream ps, nsIDOMElement element) {
         this.ps = ps;
-        dumpNode((nsIDOMNode) element.queryInterface(nsIDOMNode.NS_IDOMNODE_IID));
+        dumpNode(queryInterface(element, nsIDOMNode.class));
         ps.println();
         ps.flush();
     }
@@ -126,7 +127,7 @@
         if (element == null)
             return;
 
-        dumpNode((nsIDOMNode) element.queryInterface(nsIDOMNode.NS_IDOMNODE_IID));
+        dumpNode(queryInterface(element, nsIDOMNode.class));
         ps.println();
         ps.flush();
 
@@ -186,7 +187,7 @@
             break;
 
         case nsIDOMNode.ATTRIBUTE_NODE:
-            nsIDOMAttr attr = (nsIDOMAttr) node.queryInterface(nsIDOMAttr.NS_IDOMATTR_IID);
+            nsIDOMAttr attr = queryInterface(node, nsIDOMAttr.class);
           
             if (!(ignoredAttributes != null && listContains(ignoredAttributes,
 					attr.getName())))

Copied: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XPCOM.java (from rev 22445, trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/XPCOM.java)
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XPCOM.java	                        (rev 0)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XPCOM.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -0,0 +1,1508 @@
+/*******************************************************************************
+ * Copyright (c) 2007-2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributor:
+ *     Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.vpe.xulrunner.util;
+
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.mozilla.interfaces.nsIDOMNode;
+import org.mozilla.interfaces.nsISupports;
+import org.mozilla.xpcom.XPCOMException;
+
+/**
+ * @author Sergey Vasilyev (svasilyev at exadel.com): initial creation.
+ * @author Yahor Radtsevich (yradtsevich): method {@code queryInterface} and
+ * related stuff (JBIDE-6393).
+ */
+public final class XPCOM {
+	private XPCOM() {}
+	/*
+	 * Contract IDs
+	 */
+	public static final String NS_DRAGSERVICE_CONTRACTID = "@mozilla.org/widget/dragservice;1"; //$NON-NLS-1$
+	public static final String NS_TRANSFERABLE_CONTRACTID = "@mozilla.org/widget/transferable;1"; //$NON-NLS-1$
+	public static final String NS_WINDOWWATCHER_CONTRACTID = "@mozilla.org/embedcomp/window-watcher;1"; //$NON-NLS-1$
+	public static final String NS_PREFSERVICE_CONTRACTID = "@mozilla.org/preferences-service;1"; //$NON-NLS-1$
+	public static final String NS_SUPPORTSSTRING_CONTRACTID = "@mozilla.org/supports-string;1"; //$NON-NLS-1$
+	public static final String NS_SUPPORTSARRAY_CONTRACTID = "@mozilla.org/supports-array;1"; //$NON-NLS-1$
+	
+	public static final String IN_FLASHER_CONTRACTID = "@mozilla.org/inspector/flasher;1"; //$NON-NLS-1$
+	/**
+	 * Editing Session Contract ID
+	 * see http://www.xulplanet.com/references/xpcomref/ifaces/nsIEditingSession.html
+	 */
+	public static final String NS_EDITINGSESSION_CONTRACTID="@mozilla.org/editor/editingsession;1"; //$NON-NLS-1$
+	
+	public static final String NS_IWEBBROWSER_CID = "F1EAC761-87E9-11d3-AF80-00A024FFC08C"; //$NON-NLS-1$
+	public static final String NS_IAPPSHELL_CID = "2d96b3df-c051-11d1-a827-0040959a28c9"; //$NON-NLS-1$
+	
+	/**Stores all interfaces which extend nsISupports. */
+	/* Lazy initialization of interfacesList is used to avoid loading
+	 * of all these classes (>1000) by the class loader. */
+	private static List<Class<? extends nsISupports>> interfacesList = null;
+	
+	private static Map<Class<? extends nsISupports>, String> interfaceIdByType
+			= new HashMap<Class<? extends nsISupports>, String>();
+
+	/**
+	 * Queries given interface-<code>type</code> from {@code object}.
+	 * <P>
+	 * This method is intended to simplify long boilerplate XPCOM
+	 * interfaces casting
+	 * <pre>(nsIDOMNode) object.queryInterface(nsIDOMNode.NS_IDOMNODE_IID</pre>
+	 * by a simpler call
+	 * <pre>queryInterface(object, nsIDOMNode.class)</pre>
+	 *  
+	 * It is recommended to include the method using static import:
+	 * <pre>import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface</pre>
+	 * 
+	 * @throws XPCOMException when the {@code object} does not support
+	 * the {@code type}.
+	 * to 
+	  
+	 * @author Yahor Radtsevich (yradtsevich)
+	 */
+	public static <T extends nsISupports> T queryInterface(
+			nsISupports object,	Class<T> type) throws XPCOMException {
+		String interfaceId = getInterfaceId(type);
+		return (T) object.queryInterface(interfaceId);
+	}
+
+	/**
+	 * Returns XPCOM ID for the given {@code type}
+	 * <P>
+	 * Example:{@code getInterfaceId(nsIDOMNode.class)} will return value of
+	 * {@link nsIDOMNode#NS_IDOMNODE_IID}.
+	 *  
+	 * @param type interface extending {@link nsISupports}
+	 * 
+	 * @author Yahor Radtsevich (yradtsevich)
+	 */
+	public static <T extends nsISupports> String getInterfaceId(Class<T> type) {
+		String interfaceId = interfaceIdByType.get(type);
+		if (interfaceId == null) {
+			String interfaceIdFieldName = getInterfaceIdFieldName(type);
+			try {
+				interfaceId = (String) type.getField(interfaceIdFieldName).get(null);
+			} catch (Exception e) {
+				throw new RuntimeException(e);
+			}
+			interfaceIdByType.put(type, interfaceId);
+		}
+		return interfaceId;
+	}
+
+	/**
+	 * Returns field name which contains XPCOM ID for the given
+	 * interface-{@code type}.
+	 * <P>
+	 * Examples:
+	 *<pre>   getInterfaceIdFieldName(nsIDOMNode.class)="NS_IDOMNODE_IID"
+	 *   getInterfaceIdFieldName(jsdIScript.class)="JSDISCRIPT_IID"</pre>
+	 * 
+	 * @param type interface extending {@link nsISupports}
+	 * 
+	 * @author Yahor Radtsevich (yradtsevich)
+	 */
+	private static <T extends nsISupports> String getInterfaceIdFieldName(Class<T> type) {
+		String typeName = type.getSimpleName();
+
+		String interfaceIdFieldName;
+		if (typeName.startsWith("ns")) { //$NON-NLS-1$
+			// e.g. "nsIDOMNode" becomes "NS_IDOMNODE"
+			interfaceIdFieldName = "NS_" + typeName.substring(2).toUpperCase(); //$NON-NLS-1$
+		} else {
+			// e.g. "jsdIScript" becomes "JSDISCRIPT"
+			interfaceIdFieldName = typeName.toUpperCase();
+		}
+		interfaceIdFieldName = interfaceIdFieldName + "_IID"; //$NON-NLS-1$
+		return interfaceIdFieldName;
+	}
+	
+	 /**
+	  * Returns all interfaces supported by the {@code object}.
+	  * 
+	  * @deprecated This method tries to query every known XPCOM interface
+	  * from given object and it performs very slow (seconds).
+	  * For debug/test purposes only. Do not use it in the production code.
+	  */
+	public static List<Class<? extends nsISupports>> getSupportedInterfaces(
+			nsISupports object) {
+		List<Class<? extends nsISupports>> supportedInterfaces =
+				new ArrayList<Class<? extends nsISupports>>();
+		for (Class<? extends nsISupports> type : getInterfacesList()) {
+			try {
+				// try to get interface
+				queryInterface(object, type);
+				
+				// if no error is thrown, than the interface is supported
+				supportedInterfaces.add(type);
+			} catch (XPCOMException e) {
+				// it's OK
+			}
+		}
+		
+		return supportedInterfaces;
+	}
+
+	 /**
+	  * Prints all interfaces supported by the {@code object} to the
+	  * {@code System.out}.
+	  * 
+	  * @deprecated This method tries to query every known XPCOM interface
+	  * from given object and it performs very slow (seconds).
+	  * For debug/test purposes only. Do not use it in the production code.
+	  */
+	public static void printSupportedInterfaces(nsISupports object, boolean printMethods) {
+		for (Class<? extends nsISupports> type : getSupportedInterfaces(object)) {
+			System.out.println(type.getSimpleName());
+			if (printMethods) {
+				for (Method method : type.getMethods()) {
+					System.out.println('\t' + method.getName());
+				}
+			}
+		}
+	}
+
+	/**
+	 * Returns all XPCOM interfaces which extend nsISupports.
+	 * 
+	 * @deprecated This method loads tons of classes.
+	 * For debug/test purposes only. Do not use it in the production code.
+	 */
+	public static List<Class<? extends nsISupports>> getInterfacesList() {
+		if (interfacesList == null) {
+			interfacesList = new ArrayList<Class<? extends nsISupports>>();
+			
+			interfacesList.add(org.mozilla.interfaces.extIApplication.class);
+			interfacesList.add(org.mozilla.interfaces.extIConsole.class);
+			interfacesList.add(org.mozilla.interfaces.extIEventItem.class);
+			interfacesList.add(org.mozilla.interfaces.extIEventListener.class);
+			interfacesList.add(org.mozilla.interfaces.extIEvents.class);
+			interfacesList.add(org.mozilla.interfaces.extIExtension.class);
+			interfacesList.add(org.mozilla.interfaces.extIExtensions.class);
+			interfacesList.add(org.mozilla.interfaces.extIPreference.class);
+			interfacesList.add(org.mozilla.interfaces.extIPreferenceBranch.class);
+			interfacesList.add(org.mozilla.interfaces.extISessionStorage.class);
+//			interfacesList.add(org.mozilla.interfaces.gfxIFormats.class);
+			interfacesList.add(org.mozilla.interfaces.gfxIImageFrame.class);
+			interfacesList.add(org.mozilla.interfaces.IDispatch.class);
+			interfacesList.add(org.mozilla.interfaces.imgICache.class);
+			interfacesList.add(org.mozilla.interfaces.imgIContainer.class);
+			interfacesList.add(org.mozilla.interfaces.imgIContainerObserver.class);
+			interfacesList.add(org.mozilla.interfaces.imgIDecoder.class);
+			interfacesList.add(org.mozilla.interfaces.imgIDecoderObserver.class);
+			interfacesList.add(org.mozilla.interfaces.imgIEncoder.class);
+			interfacesList.add(org.mozilla.interfaces.imgILoad.class);
+			interfacesList.add(org.mozilla.interfaces.imgILoader.class);
+			interfacesList.add(org.mozilla.interfaces.imgIRequest.class);
+			interfacesList.add(org.mozilla.interfaces.imgITools.class);
+			interfacesList.add(org.mozilla.interfaces.inICSSValueSearch.class);
+			interfacesList.add(org.mozilla.interfaces.inIDeepTreeWalker.class);
+			interfacesList.add(org.mozilla.interfaces.inIDOMUtils.class);
+			interfacesList.add(org.mozilla.interfaces.inIDOMView.class);
+			interfacesList.add(org.mozilla.interfaces.inIFlasher.class);
+			interfacesList.add(org.mozilla.interfaces.inISearchObserver.class);
+			interfacesList.add(org.mozilla.interfaces.inISearchProcess.class);
+			interfacesList.add(org.mozilla.interfaces.jsdICallHook.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIContext.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIContextEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIDebuggerService.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIEphemeral.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIErrorHook.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIExecutionHook.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIFilter.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIFilterEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.jsdINestCallback.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIObject.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIProperty.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIScript.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIScriptEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIScriptHook.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIStackFrame.class);
+			interfacesList.add(org.mozilla.interfaces.jsdIValue.class);
+			interfacesList.add(org.mozilla.interfaces.mozIJSSubScriptLoader.class);
+			interfacesList.add(org.mozilla.interfaces.mozIPersonalDictionary.class);
+			interfacesList.add(org.mozilla.interfaces.mozISpellCheckingEngine.class);
+			interfacesList.add(org.mozilla.interfaces.mozISpellI18NManager.class);
+			interfacesList.add(org.mozilla.interfaces.mozISpellI18NUtil.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageAggregateFunction.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageConnection.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageDataSet.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageError.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageFunction.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStoragePendingStatement.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageProgressHandler.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageResultSet.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageRow.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageService.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageStatement.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementCallback.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementParams.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementRow.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageStatementWrapper.class);
+			interfacesList.add(org.mozilla.interfaces.mozIStorageValueArray.class);
+			interfacesList.add(org.mozilla.interfaces.mozITXTToHTMLConv.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAboutModule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAbstractWorker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessible.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleCaretMoveEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleCoordinateType.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleEditableText.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleHyperLink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleHyperText.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleImage.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleRelation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleRetrieval.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleRole.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleScrollType.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleSelectable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleStateChangeEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleStates.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleTable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleTableChangeEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleText.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleTextChangeEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessibleValue.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAccessNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAddonInstallListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAddonRepository.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAddonSearchResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAddonSearchResultsCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAddonUpdateCheckListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAlertsService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAnnotationObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAnnotationService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIApplicationCache.class);
+			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheContainer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheNamespace.class);
+			interfacesList.add(org.mozilla.interfaces.nsIApplicationCacheService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIApplicationUpdateService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAppShell.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAppShellService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAppStartup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAppStartup2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIArray.class);
+			interfacesList.add(org.mozilla.interfaces.nsIASN1Object.class);
+			interfacesList.add(org.mozilla.interfaces.nsIASN1PrintableItem.class);
+			interfacesList.add(org.mozilla.interfaces.nsIASN1Sequence.class);
+			interfacesList.add(org.mozilla.interfaces.nsIASN1Tree.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAssociatedContentSecurity.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAsyncInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAsyncOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAsyncStreamCopier.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAtom.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAtomService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAuthInformation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAuthPrompt.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAuthPrompt2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptAdapterFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAuthPromptWrapper.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteController.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteInput.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompletePopup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteSearch.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteSimpleResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIAutoCompleteSimpleResultListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBadCertListener2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBaseWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBidiKeyboard.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBidirectionalIterator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBinaryInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBinaryOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBlocklistService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBrowserBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBrowserDOMWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBrowserHistory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBrowserHistory_MOZILLA_1_9_1_ADDITIONS.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBrowserInstance.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBrowserSearchService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBufferedInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIBufferedOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIByteRangeRequest.class);
+//			interfacesList.add(org.mozilla.interfaces.nsICache.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheDeviceInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheEntryDescriptor.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheEntryInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheMetaDataVisitor.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheService.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheSession.class);
+			interfacesList.add(org.mozilla.interfaces.nsICacheVisitor.class);
+			interfacesList.add(org.mozilla.interfaces.nsICachingChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsICancelable.class);
+			interfacesList.add(org.mozilla.interfaces.nsICategoryManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsICertificateDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsICertOverrideService.class);
+			interfacesList.add(org.mozilla.interfaces.nsICertPickDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsICertTree.class);
+			interfacesList.add(org.mozilla.interfaces.nsICertTreeItem.class);
+			interfacesList.add(org.mozilla.interfaces.nsICertVerificationListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsICertVerificationResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIChannelClassifier.class);
+			interfacesList.add(org.mozilla.interfaces.nsIChannelEventSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsICharsetConverterManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsICharsetResolver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIChromeRegistry.class);
+			interfacesList.add(org.mozilla.interfaces.nsICipherInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsICipherInfoService.class);
+			interfacesList.add(org.mozilla.interfaces.nsICiter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClassInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClientAuthDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClientAuthUserDecision.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClipboard.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClipboardCommands.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClipboardDragDropHookList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClipboardDragDropHooks.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClipboardHelper.class);
+			interfacesList.add(org.mozilla.interfaces.nsIClipboardOwner.class);
+			interfacesList.add(org.mozilla.interfaces.nsICMSMessageErrors.class);
+			interfacesList.add(org.mozilla.interfaces.nsICMSSecureMessage.class);
+			interfacesList.add(org.mozilla.interfaces.nsICollation.class);
+			interfacesList.add(org.mozilla.interfaces.nsICollationFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsICollection.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandController.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandHandlerInit.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandLine.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandLineHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandLineValidator.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsICommandParams.class);
+			interfacesList.add(org.mozilla.interfaces.nsIComponentManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIComponentManagerObsolete.class);
+			interfacesList.add(org.mozilla.interfaces.nsIComponentRegistrar.class);
+			interfacesList.add(org.mozilla.interfaces.nsIConsoleListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIConsoleMessage.class);
+			interfacesList.add(org.mozilla.interfaces.nsIConsoleService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContainerBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentDispatchChooser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentPolicy.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentPrefObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentPrefService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentSniffer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentURIGrouper.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentViewer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentViewerContainer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentViewerEdit.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContentViewerFile.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContextMenuInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContextMenuListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIContextMenuListener2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIController.class);
+			interfacesList.add(org.mozilla.interfaces.nsIControllerCommand.class);
+			interfacesList.add(org.mozilla.interfaces.nsIControllerCommandGroup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIControllerCommandTable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIControllerContext.class);
+			interfacesList.add(org.mozilla.interfaces.nsIControllers.class);
+			interfacesList.add(org.mozilla.interfaces.nsIConverterInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIConverterOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookie.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookie2.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookieAcceptDialog.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookieManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookieManager2.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookiePermission.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookiePromptService.class);
+			interfacesList.add(org.mozilla.interfaces.nsICookieService.class);
+			interfacesList.add(org.mozilla.interfaces.nsICrashReporter.class);
+			interfacesList.add(org.mozilla.interfaces.nsICRLInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsICRLManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsICryptoFIPSInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsICryptoHash.class);
+			interfacesList.add(org.mozilla.interfaces.nsICryptoHMAC.class);
+			interfacesList.add(org.mozilla.interfaces.nsICurrentCharsetListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDataSignatureVerifier.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDataType.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDBusHandlerApp.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDebug.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDialogParamBlock.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDirectoryEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDirectoryService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDirectoryServiceProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDirectoryServiceProvider2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDirIndex.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDirIndexListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDirIndexParser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDNSListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDNSRecord.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDNSService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocCharset.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShell.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShell_MOZILLA_1_9_1.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShell_MOZILLA_1_9_1_dns.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShell_MOZILLA_1_9_1_SessionStorage.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShellHistory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShellLoadInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShellTreeItem.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShellTreeNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocShellTreeOwner.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocumentCharsetInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocumentEncoder.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocumentEncoderNodeFixup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocumentLoader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocumentLoaderFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDocumentStateListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOM3Attr.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOM3Document.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOM3DocumentEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOM3EventTarget.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOM3Node.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOM3Text.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOM3TypeInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMAbstractView.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMAttr.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMBarProp.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMBeforeUnloadEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCanvasGradient.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCanvasPattern.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCanvasRenderingContext2D.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCDATASection.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCharacterData.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMChromeWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMClientInformation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMClientRect.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMClientRectList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCommandEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMComment.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCounter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCRMFObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCrypto.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCryptoDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSS2Properties.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSCharsetRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSFontFaceRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSImportRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSMediaRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSMozDocumentRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSPageRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSPrimitiveValue.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSRuleList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSStyleDeclaration.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSStyleRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSStyleSheet.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSUnknownRule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSValue.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMCSSValueList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDataContainerEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDataTransfer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentCSS.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentFragment.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentRange.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentStyle.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentTraversal.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentType.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentView.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDocumentXBL.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMConfiguration.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMConstructor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMImplementation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMImplementationLS.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDOMStringList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMDragEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMElementCSSInlineStyle.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMEntity.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMEntityReference.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMEventGroup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMEventListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMEventTarget.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMFile.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMFileException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMFileList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoGeolocation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPosition.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionCoords.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionError.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionErrorCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGeoPositionOptions.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMGetSVGDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHistory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAnchorElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAppletElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAreaElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLAudioElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBaseElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBaseFontElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBodyElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLBRElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLButtonElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLByteRanges.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLCanvasElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLCollection.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDirectoryElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDivElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDListElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLEmbedElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFieldSetElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFontElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFormElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFrameElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLFrameSetElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHeadElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHeadingElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHRElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLHtmlElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLIFrameElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLImageElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLInputElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLIsIndexElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLabelElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLegendElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLIElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLLinkElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMapElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMediaElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMediaError.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMenuElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLMetaElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLModElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLObjectElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOListElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOptGroupElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOptionElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLOptionsCollection.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLParagraphElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLParamElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLPreElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLQuoteElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLScriptElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLSelectElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLSourceElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLStyleElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableCaptionElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableCellElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableColElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableRowElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTableSectionElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTextAreaElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTimeRanges.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLTitleElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLUListElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLVideoElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMHTMLVoidCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMJSNavigator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMJSWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMKeyEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLinkStyle.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLoadStatus.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLoadStatusEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLocation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSInput.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSLoadEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSOutput.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSParser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSParserFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSProgressEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSResourceResolver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSSerializer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMLSSerializerFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMMediaList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMMessageEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMMimeType.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMMimeTypeArray.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMModalContentWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMMouseEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMMouseScrollEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMMutationEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNamedNodeMap.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNameList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNavigator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNavigatorGeolocation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeIterator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNodeSelector.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNotation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNotifyPaintEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSCSS2Properties.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDataTransfer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDataTransfer_MOZILLA_1_9_1.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSDocumentStyle.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSEditableElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSEventTarget.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSFeatureFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAnchorElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAnchorElement2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAreaElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLAreaElement2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLButtonElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLFormControlList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLFormElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLFrameElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLHRElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLImageElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLInputElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLOptionCollection.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLOptionElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLSelectElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSHTMLTextAreaElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSRange.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSRGBAColor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSUIEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSXBLFormControl.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMNSXPathExpression.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMOfflineResourceList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMPageTransitionEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMParser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMParserJS.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMPkcs11.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMPlugin.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMPluginArray.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMPopupBlockedEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMProcessingInstruction.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMProgressEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMRange.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMRangeException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMRect.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMRGBColor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMScreen.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSerializer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSimpleGestureEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSmartCardEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorage.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorage2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageItem.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStorageWindow_1_9_1.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStyleSheet.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMStyleSheetList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAngle.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedAngle.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedBoolean.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedEnumeration.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedInteger.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedLength.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedLengthList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedNumber.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedNumberList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedPathData.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedPoints.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedPreserveAspectRatio.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedRect.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedString.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGAnimatedTransformList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGCircleElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGClipPathElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGComponentTransferFunctionElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGDefsElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGDescElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGEllipseElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEBlendElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEColorMatrixElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEComponentTransferElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFECompositeElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEConvolveMatrixElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEDiffuseLightingElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEDisplacementMapElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEDistantLightElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFloodElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncAElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncBElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncGElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEFuncRElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEGaussianBlurElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEImageElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEMergeElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEMergeNodeElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEMorphologyElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEOffsetElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFEPointLightElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFESpecularLightingElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFESpotLightElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFETileElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFETurbulenceElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFilterElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFilterPrimitiveStandardAttributes.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGFitToViewBox.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGForeignObjectElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGGElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGGradientElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGImageElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLength.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLengthList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLinearGradientElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLineElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGLocatable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMarkerElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMaskElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMatrix.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGMetadataElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGNumber.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGNumberList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSeg.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegArcAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegArcRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegClosePath.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicSmoothAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoCubicSmoothRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticSmoothAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegCurvetoQuadraticSmoothRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoHorizontalAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoHorizontalRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoVerticalAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegLinetoVerticalRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegMovetoAbs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPathSegMovetoRel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPatternElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPoint.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPointList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPolygonElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPolylineElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGPreserveAspectRatio.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGRadialGradientElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGRect.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGRectElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGScriptElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGStopElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGStylable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGStyleElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGSVGElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGSwitchElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGSymbolElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextContentElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextPathElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTextPositioningElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTitleElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTransform.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTransformable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTransformList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGTSpanElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGUnitTypes.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGURIReference.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGUseElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGViewSpec.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGZoomAndPan.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMSVGZoomEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMText.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMTextMetrics.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMToString.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMTreeWalker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMUIEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMUserDataHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMViewCSS.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMWindow2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMWindowCollection.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMWindowInternal.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMWindowUtils.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXMLDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathEvaluator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathExpression.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathNamespace.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathNSResolver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXPathResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULButtonElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULCheckboxElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULCommandDispatcher.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULCommandEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULContainerElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULContainerItemElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULControlElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULDescriptionElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULImageElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULLabeledControlElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULLabelElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULMenuListElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULMultiSelectControlElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULPopupElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULSelectControlElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULSelectControlItemElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULTextBoxElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDOMXULTreeElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDownload.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDownloader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDownloadHistory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDownloadManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDownloadManagerUI.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDownloadObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDownloadProgressListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDragDropHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDragService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDragSession.class);
+			interfacesList.add(org.mozilla.interfaces.nsIDynamicContainer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditActionListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditingSession.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorDocShell.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorIMESupport.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorLogging.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorMailSupport.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorSpellCheck.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEditorStyleSheets.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEffectiveTLDService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEmbeddingSiteWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEmbeddingSiteWindow2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEncodedChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEntityConverter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEnvironment.class);
+			interfacesList.add(org.mozilla.interfaces.nsIErrorService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIEventTarget.class);
+			interfacesList.add(org.mozilla.interfaces.nsIException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExceptionManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExceptionProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExceptionService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExpatSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExtendedExpatSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExtensionManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExternalHelperAppService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExternalProtocolHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIExternalProtocolService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFastLoadFileControl.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFastLoadFileIO.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFastLoadReadControl.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFastLoadService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFastLoadWriteControl.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFaviconService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeed.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedContainer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedElementBase.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedEntry.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedGenerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedPerson.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedProcessor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedProgressListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedResultListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFeedTextConstruct.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFile.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFileChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFileInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFileOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFilePicker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFileProtocolHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFileURL.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFileView.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFind.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFindService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFlavorDataProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFontEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFormatConverter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFormFillController.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFormHistory2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFormHistoryImporter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFormSigningDialog.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFormSubmitObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIForwardIterator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFrameLoader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFrameLoaderOwner.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFTPChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFTPEventSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIFullScreen.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGConfService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGeneratingKeypairInfoDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGeolocationPrompt.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGeolocationProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGeolocationRequest.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGeolocationUpdate.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGlobalHistory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGlobalHistory2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGlobalHistory3.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGnomeVFSMimeApp.class);
+			interfacesList.add(org.mozilla.interfaces.nsIGnomeVFSService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHandlerApp.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHandlerInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHandlerService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHashable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHelperAppLauncher.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHelperAppLauncherDialog.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHistoryEntry.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHTMLAbsPosEditor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHTMLEditor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHTMLInlineTableEditor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHTMLObjectResizeListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHTMLObjectResizer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpActivityObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpAuthenticator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpAuthManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpChannelInternal.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpEventSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHTTPHeaderListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpHeaderVisitor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHTTPIndex.class);
+			interfacesList.add(org.mozilla.interfaces.nsIHttpProtocolHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIIdentityInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIIdleService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIIDNService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIIFrameBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIImageDocument.class);
+			interfacesList.add(org.mozilla.interfaces.nsIImageLoadingContent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIIncrementalDownload.class);
+			interfacesList.add(org.mozilla.interfaces.nsIINIParser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIINIParserFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInlineSpellChecker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInputIterator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInputStreamCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInputStreamChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInputStreamPump.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInputStreamTee.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInstallLocation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIInterfaceRequestor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIIOService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIIOService2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJARChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJARProtocolHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJARURI.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJSCID.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJSID.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJSIID.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJSON.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJSXMLHttpRequest.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJVMConfig.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJVMConfigManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJVMManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIJVMPluginInstance.class);
+			interfacesList.add(org.mozilla.interfaces.nsIKeygenThread.class);
+			interfacesList.add(org.mozilla.interfaces.nsIKeyObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIKeyObjectFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsILineInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIListBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsILivemarkService.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoadContext.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoadGroup.class);
+			interfacesList.add(org.mozilla.interfaces.nsILocale.class);
+			interfacesList.add(org.mozilla.interfaces.nsILocaleService.class);
+			interfacesList.add(org.mozilla.interfaces.nsILocalFile.class);
+			interfacesList.add(org.mozilla.interfaces.nsILocalFileWin.class);
+			interfacesList.add(org.mozilla.interfaces.nsILocalHandlerApp.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoginInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoginManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoginManager_MOZILLA_1_9_1.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoginManagerIEMigrationHelper.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoginManagerPrompter.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoginManagerStorage.class);
+			interfacesList.add(org.mozilla.interfaces.nsILoginMetaInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMarkupDocumentViewer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMemory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMemoryReporter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMemoryReporterManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMenuBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMIMEHeaderParam.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMIMEInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMIMEInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMIMEService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIModule.class);
+			interfacesList.add(org.mozilla.interfaces.nsIModuleLoader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMozIconURI.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMultiPartChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMultiplexInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMutable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIMutableArray.class);
+			interfacesList.add(org.mozilla.interfaces.nsINativeAppSupport.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavBookmarkObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavBookmarkObserver_MOZILLA_1_9_1_ADDITIONS.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavBookmarksService.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryBatchCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryContainerResultNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryFullVisitResultNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryObserver_MOZILLA_1_9_1_ADDITIONS.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryQuery.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryQueryOptions.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryQueryResultNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResultNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResultTreeViewer.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryResultViewer.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryService.class);
+			interfacesList.add(org.mozilla.interfaces.nsINavHistoryVisitResultNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsINestedURI.class);
+			interfacesList.add(org.mozilla.interfaces.nsINetUtil.class);
+			interfacesList.add(org.mozilla.interfaces.nsINetworkLinkService.class);
+			interfacesList.add(org.mozilla.interfaces.nsINonBlockingAlertService.class);
+			interfacesList.add(org.mozilla.interfaces.nsINSSCertCache.class);
+			interfacesList.add(org.mozilla.interfaces.nsINSSErrorsService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIObjectInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIObjectLoadingContent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIObjectOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIObserverService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOCSPResponder.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOfflineCacheUpdate.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOfflineCacheUpdateObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOfflineCacheUpdateService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOSChromeItem.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOutputIterator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIOutputStreamCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIParentalControlsService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPasswordManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPasswordManagerInternal.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPermission.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPermissionManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPersistentProperties.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPhonetic.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPipe.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPK11Token.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPK11TokenDB.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPKCS11.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPKCS11Module.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPKCS11ModuleDB.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPKCS11Slot.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPKIParamBlock.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPlaintextEditor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPluginHost.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPluginManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPluginTag.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPopupBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPopupWindowManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrefBranch.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrefBranch2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrefBranchInternal.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrefetchService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrefLocalizedString.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrefService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrincipal.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrinterEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintingPrompt.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintingPromptService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintOptions.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintProgress.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintProgressParams.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintSettings.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintSettingsService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrintStatusFeedback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrivateBrowsingService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProcess.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProcess2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProfile.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProfileChangeStatus.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProfileLock.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProfileMigrator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProfileStartup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProfileUnlocker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProgrammingLanguage.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProgressEventSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPrompt.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPromptFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPromptService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPromptService2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProperties.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProperty.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPropertyBag.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPropertyBag2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIPropertyElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProtectedAuthThread.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProtocolHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProtocolProxyService2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProxiedChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProxiedProtocolHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProxyAutoConfig.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProxyInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIProxyObjectManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRandomAccessIterator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRandomGenerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFBlob.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFCompositeDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFContainer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFContainerUtils.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFDate.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFDelegateFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFInferDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFInMemoryDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFInt.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFLiteral.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFNode.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFPropagatableDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFPurgeableDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFRemoteDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFResource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLParser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSerializer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSinkObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRDFXMLSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRecentBadCertsService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRecyclingAllocator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRefreshURI.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRelativeFilePref.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRemoteService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRequest.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRequestObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRequestObserverProxy.class);
+			interfacesList.add(org.mozilla.interfaces.nsIResProtocolHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIResumableChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIRunnable.class);
+			interfacesList.add(org.mozilla.interfaces.nsISafeOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsISaveAsCharset.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXAttributes.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXContentHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXDTDHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXErrorHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXLexicalHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXLocator.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXMutableAttributes.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXXMLFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsISAXXMLReader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScreen.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScreenManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScreenManager_MOZILLA_1_9_1_BRANCH.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptableDateFormat.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptableInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptableInterfaces.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptableInterfacesByID.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptableRegion.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptableUnescapeHTML.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptableUnicodeConverter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptError.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptLoaderObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScriptSecurityManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScrollable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIScrollBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsISearchableInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsISearchContext.class);
+			interfacesList.add(org.mozilla.interfaces.nsISearchEngine.class);
+			interfacesList.add(org.mozilla.interfaces.nsISearchSubmission.class);
+			interfacesList.add(org.mozilla.interfaces.nsISecretDecoderRing.class);
+			interfacesList.add(org.mozilla.interfaces.nsISecretDecoderRingConfig.class);
+			interfacesList.add(org.mozilla.interfaces.nsISecureBrowserUI.class);
+			interfacesList.add(org.mozilla.interfaces.nsISecurityCheckedComponent.class);
+			interfacesList.add(org.mozilla.interfaces.nsISecurityEventSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsISecurityInfoProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsISecurityWarningDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsISeekableStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsISelectElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsISelection.class);
+			interfacesList.add(org.mozilla.interfaces.nsISelection2.class);
+			interfacesList.add(org.mozilla.interfaces.nsISelectionController.class);
+			interfacesList.add(org.mozilla.interfaces.nsISelectionDisplay.class);
+			interfacesList.add(org.mozilla.interfaces.nsISelectionListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsISelectionPrivate.class);
+			interfacesList.add(org.mozilla.interfaces.nsISemanticUnitScanner.class);
+			interfacesList.add(org.mozilla.interfaces.nsISerializable.class);
+			interfacesList.add(org.mozilla.interfaces.nsIServerSocket.class);
+			interfacesList.add(org.mozilla.interfaces.nsIServerSocketListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIServiceManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsISHContainer.class);
+			interfacesList.add(org.mozilla.interfaces.nsISHEntry.class);
+			interfacesList.add(org.mozilla.interfaces.nsISHistory.class);
+			interfacesList.add(org.mozilla.interfaces.nsISHistoryInternal.class);
+			interfacesList.add(org.mozilla.interfaces.nsISHistoryListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsISHTransaction.class);
+			interfacesList.add(org.mozilla.interfaces.nsISidebar.class);
+			interfacesList.add(org.mozilla.interfaces.nsISidebarExternal.class);
+			interfacesList.add(org.mozilla.interfaces.nsISimpleEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsISimpleStreamListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsISimpleUnicharStreamFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsISliderListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsISMimeCert.class);
+			interfacesList.add(org.mozilla.interfaces.nsISocketProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsISocketProviderService.class);
+			interfacesList.add(org.mozilla.interfaces.nsISocketTransport.class);
+			interfacesList.add(org.mozilla.interfaces.nsISocketTransportService.class);
+			interfacesList.add(org.mozilla.interfaces.nsISOCKSSocketInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsISound.class);
+			interfacesList.add(org.mozilla.interfaces.nsISSLCertErrorDialog.class);
+			interfacesList.add(org.mozilla.interfaces.nsISSLErrorListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsISSLSocketControl.class);
+			interfacesList.add(org.mozilla.interfaces.nsISSLStatus.class);
+			interfacesList.add(org.mozilla.interfaces.nsISSLStatusProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStackFrame.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStandardURL.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStorageStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamCipher.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamConverter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamConverterService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamListenerTee.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamLoader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamLoaderObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStreamTransportService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStringBundle.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStringBundleOverride.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStringBundleService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStringEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStringInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIStyleSheetService.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupports.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsArray.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsChar.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsCString.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsDouble.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsFloat.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsID.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsInterfacePointer.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRBool.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPrimitive.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRInt16.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRInt32.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRInt64.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPriority.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRTime.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint16.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint32.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint64.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsPRUint8.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsString.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsVoid.class);
+			interfacesList.add(org.mozilla.interfaces.nsISupportsWeakReference.class);
+			interfacesList.add(org.mozilla.interfaces.nsISyncLoadDOMService.class);
+			interfacesList.add(org.mozilla.interfaces.nsISyncStreamListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsISystemProxySettings.class);
+			interfacesList.add(org.mozilla.interfaces.nsITableEditor.class);
+			interfacesList.add(org.mozilla.interfaces.nsITaggingService.class);
+			interfacesList.add(org.mozilla.interfaces.nsITextScroll.class);
+			interfacesList.add(org.mozilla.interfaces.nsITextServicesFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsITextToSubURI.class);
+			interfacesList.add(org.mozilla.interfaces.nsIThread.class);
+			interfacesList.add(org.mozilla.interfaces.nsIThreadEventFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIThreadInternal.class);
+			interfacesList.add(org.mozilla.interfaces.nsIThreadManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIThreadObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIThreadPool.class);
+			interfacesList.add(org.mozilla.interfaces.nsIThreadPoolListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsITimelineService.class);
+			interfacesList.add(org.mozilla.interfaces.nsITimer.class);
+			interfacesList.add(org.mozilla.interfaces.nsITimerCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsITokenDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsITokenPasswordDialogs.class);
+			interfacesList.add(org.mozilla.interfaces.nsIToolkitChromeRegistry.class);
+			interfacesList.add(org.mozilla.interfaces.nsIToolkitProfile.class);
+			interfacesList.add(org.mozilla.interfaces.nsIToolkitProfileService.class);
+			interfacesList.add(org.mozilla.interfaces.nsITooltipListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsITooltipTextProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsITraceableChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransaction.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransactionList.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransactionListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransactionManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransfer.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransferable.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransport.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransportEventSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsITransportSecurityInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsITreeBoxObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsITreeColumn.class);
+			interfacesList.add(org.mozilla.interfaces.nsITreeColumns.class);
+			interfacesList.add(org.mozilla.interfaces.nsITreeContentView.class);
+			interfacesList.add(org.mozilla.interfaces.nsITreeSelection.class);
+			interfacesList.add(org.mozilla.interfaces.nsITreeView.class);
+			interfacesList.add(org.mozilla.interfaces.nsITXTToHTMLConv.class);
+			interfacesList.add(org.mozilla.interfaces.nsITypeAheadFind.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUnicharInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUnicharLineInputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUnicharOutputStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUnicharStreamListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUnicharStreamLoader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUnicharStreamLoaderObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUnicodeNormalizer.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdate.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdateChecker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdateCheckListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdateItem.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdateManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdatePatch.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdatePrompt.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUpdateTimerManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUploadChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURI.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURIChecker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURIClassifier.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURIClassifierCallback.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURIContentListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURIFixup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURILoader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURIRefObject.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURL.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURLFormatter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIURLParser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUserCertPicker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUserInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUTF8ConverterService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUTF8StringEnumerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIUUIDGenerator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIVariant.class);
+			interfacesList.add(org.mozilla.interfaces.nsIVersionComparator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWeakReference.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowser.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserChrome.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserChrome2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserChromeFocus.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserFind.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserFindInFrames.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserFocus.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserPersist.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserPrint.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserSetup.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebBrowserStream.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebContentHandlerRegistrar.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebHandlerApp.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebNavigation.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebNavigationInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebPageDescriptor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebProgress.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebProgressListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWebProgressListener2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWifiAccessPoint.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWifiListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWifiMonitor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWindowCreator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWindowCreator2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWindowDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWindowMediator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWindowMediatorListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWindowProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWindowWatcher.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWorker.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWorkerErrorEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWorkerGlobalScope.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWorkerMessageEvent.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWorkerMessagePort.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWorkerNavigator.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWorkerScope.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWritablePropertyBag.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWritablePropertyBag2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWritableVariant.class);
+			interfacesList.add(org.mozilla.interfaces.nsIWyciwygChannel.class);
+			interfacesList.add(org.mozilla.interfaces.nsIX509Cert.class);
+			interfacesList.add(org.mozilla.interfaces.nsIX509Cert2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIX509Cert3.class);
+			interfacesList.add(org.mozilla.interfaces.nsIX509CertDB.class);
+			interfacesList.add(org.mozilla.interfaces.nsIX509CertDB2.class);
+			interfacesList.add(org.mozilla.interfaces.nsIX509CertList.class);
+			interfacesList.add(org.mozilla.interfaces.nsIX509CertValidity.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXBLAccessible.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXMLContentBuilder.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXMLHttpRequest.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXMLHttpRequestEventTarget.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXMLHttpRequestUpload.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Classes.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_ClassesByID.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Constructor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Exception.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_ID.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Results.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_Utils.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCComponents_utils_Sandbox.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCConstructor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCSecurityManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPCWrappedJSObjectGetter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPIDialogService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPIInstallInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPInstallManager.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPIProgressDialog.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPointerResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPTLoader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXPTLoaderSink.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXSLTException.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXSLTProcessor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXSLTProcessorObsolete.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXSLTProcessorPrivate.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXTFAttributeHandler.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXTFElement.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXTFElementFactory.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXTFElementWrapper.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXTFPrivate.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULAppInfo.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULAppInstall.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULBrowserWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULBuilderListener.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULChromeRegistry.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULOverlayProvider.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULRuntime.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULSortService.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateBuilder.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateQueryProcessor.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateResult.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULTemplateRuleFilter.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULTreeBuilder.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULTreeBuilderObserver.class);
+			interfacesList.add(org.mozilla.interfaces.nsIXULWindow.class);
+			interfacesList.add(org.mozilla.interfaces.nsIZipEntry.class);
+			interfacesList.add(org.mozilla.interfaces.nsIZipReader.class);
+			interfacesList.add(org.mozilla.interfaces.nsIZipReaderCache.class);
+			interfacesList.add(org.mozilla.interfaces.nsIZipWriter.class);
+			interfacesList.add(org.mozilla.interfaces.nsPICommandUpdater.class);
+			interfacesList.add(org.mozilla.interfaces.nsPIDNSService.class);
+			interfacesList.add(org.mozilla.interfaces.nsPIEditorTransaction.class);
+			interfacesList.add(org.mozilla.interfaces.nsPIExternalAppLauncher.class);
+			interfacesList.add(org.mozilla.interfaces.nsPIPlacesDatabase.class);
+			interfacesList.add(org.mozilla.interfaces.nsPISocketTransportService.class);
+			interfacesList.add(org.mozilla.interfaces.rdfIDataSource.class);
+			interfacesList.add(org.mozilla.interfaces.rdfISerializer.class);
+			interfacesList.add(org.mozilla.interfaces.rdfITripleVisitor.class);
+			interfacesList.add(org.mozilla.interfaces.txIEXSLTRegExFunctions.class);
+			interfacesList.add(org.mozilla.interfaces.txIFunctionEvaluationContext.class);
+			interfacesList.add(org.mozilla.interfaces.txINodeSet.class);
+			interfacesList.add(org.mozilla.interfaces.txIXPathObject.class);
+			interfacesList.add(org.mozilla.interfaces.xpcIJSModuleLoader.class);
+			interfacesList.add(org.mozilla.interfaces.xpcIJSWeakReference.class);
+		}
+
+		return interfacesList;
+	}
+}

Copied: trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XulRunnerVpeUtils.java (from rev 22445, trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerVpeUtils.java)
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XulRunnerVpeUtils.java	                        (rev 0)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/util/XulRunnerVpeUtils.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -0,0 +1,109 @@
+/*******************************************************************************
+ * Copyright (c) 2007 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributor:
+ *     Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+
+package org.jboss.tools.vpe.xulrunner.util;
+
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
+import org.eclipse.swt.graphics.Rectangle;
+import org.jboss.tools.vpe.xulrunner.BrowserPlugin;
+import org.mozilla.interfaces.nsIBoxObject;
+import org.mozilla.interfaces.nsIDOMDocument;
+import org.mozilla.interfaces.nsIDOMElement;
+import org.mozilla.interfaces.nsIDOMNSDocument;
+import org.mozilla.interfaces.nsIDOMNSElement;
+import org.mozilla.interfaces.nsIDOMNSHTMLElement;
+import org.mozilla.interfaces.nsIDOMNode;
+import org.mozilla.xpcom.XPCOMException;
+
+/**
+ * @author dsakovich at exadel.com
+ */
+public class XulRunnerVpeUtils {
+
+	private static int findPosX(nsIDOMNSHTMLElement boxObject) {
+		int curleft = 0;
+		
+		if (boxObject.getOffsetParent() != null) {
+			while (true) {
+				curleft += boxObject.getOffsetLeft();
+				if ( boxObject.getOffsetParent() == null)
+					return curleft;
+				boxObject = queryInterface(boxObject.getOffsetParent(), nsIDOMNSHTMLElement.class);
+			}
+		} else {
+			curleft += boxObject.getOffsetLeft();
+		}
+		return curleft;
+	}
+
+	private static int findPosY(nsIDOMNSHTMLElement boxObject) {
+		int curleft = 0;
+		
+		if (boxObject.getOffsetParent() != null) {
+			while (true) {
+				curleft += boxObject.getOffsetTop();
+				if ( boxObject.getOffsetParent() == null)
+					return curleft;
+				boxObject = queryInterface(boxObject.getOffsetParent(), nsIDOMNSHTMLElement.class);
+			}
+		} else {
+			curleft += boxObject.getOffsetTop();
+		}
+		return curleft;
+	}
+
+	/**
+	 * @param domElement
+	 * @return Rectangle
+	 */
+	static public Rectangle getElementBounds(nsIDOMNode domNode) {
+		try {
+			nsIDOMElement domElement = queryInterface(domNode, nsIDOMElement.class);
+		
+			nsIDOMNSElement htmlElement = queryInterface(domNode, nsIDOMNSElement.class);
+			nsIDOMNSHTMLElement domNSHTMLElement = queryInterface(domNode, nsIDOMNSHTMLElement.class);
+			nsIDOMDocument document = domElement.getOwnerDocument();
+
+			nsIDOMNSDocument nsDocument = queryInterface(document, nsIDOMNSDocument.class);
+			nsIBoxObject boxObject = nsDocument.getBoxObjectFor(domElement);
+			Rectangle rectangle = new Rectangle(findPosX(domNSHTMLElement),
+														 findPosY(domNSHTMLElement),
+														 boxObject.getWidth(),
+														 boxObject.getHeight());
+
+			if (BrowserPlugin.PRINT_ELEMENT_BOUNDS) {
+				System.out.println("getElementBounds(IDOMNode) returns "
+						+ rectangle);
+				System.out
+						.println("nsIDOMNSHTMLElement getOffsetLeft,getOffsetTop,getOffsetWidth,getOffsetHeight"
+								+ new Rectangle(domNSHTMLElement.getOffsetLeft(),
+										domNSHTMLElement.getOffsetTop(), domNSHTMLElement
+												.getOffsetWidth(), domNSHTMLElement
+												.getOffsetHeight()));
+				System.out
+						.println("nsIDOMNSElement getClientLeft,getClientTop,getClientWidth,getClientHeight"
+								+ new Rectangle(htmlElement.getClientLeft(),
+										htmlElement.getClientTop(), htmlElement
+												.getClientWidth(), htmlElement
+												.getClientHeight()));
+				System.out.println("nsIBoxObject getX,getY,getWidth,getHeight"
+						+ new Rectangle(boxObject.getX(), boxObject.getY(),
+								boxObject.getWidth(), boxObject.getHeight()));
+
+			}
+			return rectangle;
+
+		} catch (XPCOMException xpcomException) {
+			return new Rectangle(0, 0, 0, 0);
+		}
+	}
+}

Modified: trunk/vpe/tests/org.jboss.tools.vpe.html.test/src/org/jboss/tools/vpe/html/test/jbide/JBIDE3280Test.java
===================================================================
--- trunk/vpe/tests/org.jboss.tools.vpe.html.test/src/org/jboss/tools/vpe/html/test/jbide/JBIDE3280Test.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/tests/org.jboss.tools.vpe.html.test/src/org/jboss/tools/vpe/html/test/jbide/JBIDE3280Test.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -23,7 +23,7 @@
 import org.jboss.tools.vpe.html.test.HtmlAllTests;
 import org.jboss.tools.vpe.ui.test.TestUtil;
 import org.jboss.tools.vpe.ui.test.VpeTest;
-import org.jboss.tools.vpe.xulrunner.browser.util.DOMTreeDumper;
+import org.jboss.tools.vpe.xulrunner.util.DOMTreeDumper;
 import org.mozilla.interfaces.nsIDOMDocument;
 
 /**

Modified: trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java
===================================================================
--- trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java	2010-06-01 03:28:57 UTC (rev 22447)
+++ trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java	2010-06-01 04:31:55 UTC (rev 22448)
@@ -10,6 +10,8 @@
  ******************************************************************************/
 package org.jboss.tools.vpe.ui.test;
 
+import static org.jboss.tools.vpe.xulrunner.util.XPCOM.queryInterface;
+
 import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.FileReader;
@@ -245,8 +247,8 @@
 					throw new ComparisonException("there is not : \"" + name //$NON-NLS-1$
 							+ "\" attribute"); //$NON-NLS-1$
 				
-				nsIDOMAttr vpeAttr = (nsIDOMAttr) vpeAttributes.getNamedItem(
-						name).queryInterface(nsIDOMAttr.NS_IDOMATTR_IID);
+				nsIDOMAttr vpeAttr = queryInterface(
+						vpeAttributes.getNamedItem(name), nsIDOMAttr.class);
 
 				
 



More information about the jbosstools-commits mailing list