Cleanup.
diff --git a/robolectric-resources/src/main/java/org/robolectric/res/OpaqueLoader.java b/robolectric-resources/src/main/java/org/robolectric/res/OpaqueLoader.java
deleted file mode 100644
index f2a6de7..0000000
--- a/robolectric-resources/src/main/java/org/robolectric/res/OpaqueLoader.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.robolectric.res;
-
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-public class OpaqueLoader extends StaxLoader {
-  public OpaqueLoader(PackageResourceTable resourceTable, String xpathExpr, String attrType, ResType resType) {
-    super(resourceTable, xpathExpr, attrType, resType);
-  }
-
-  @Override
-  public void onStart(XMLStreamReader xml, XmlContext xmlContext) throws XMLStreamException {
-  }
-
-  @Override
-  public void onCharacters(XMLStreamReader xml, XmlContext xmlContext) throws XMLStreamException {
-  }
-
-  @Override
-  public void onEnd(XMLStreamReader xml, XmlContext xmlContext) throws XMLStreamException {
-    resourceTable.addResource(attrType, xmlContext.getXmlFile().getBaseName(), new FileTypedResource(xmlContext.getXmlFile(), resType, xmlContext));
-  }
-}
diff --git a/robolectric-resources/src/main/java/org/robolectric/res/ResourceTableFactory.java b/robolectric-resources/src/main/java/org/robolectric/res/ResourceTableFactory.java
index 9e2b835..2e73410 100644
--- a/robolectric-resources/src/main/java/org/robolectric/res/ResourceTableFactory.java
+++ b/robolectric-resources/src/main/java/org/robolectric/res/ResourceTableFactory.java
@@ -152,9 +152,13 @@
     }
   }
 
-  private void loadOpaque(ResourcePath resourcePath, PackageResourceTable resourceTable, String type, ResType resType) {
-    new StaxDocumentLoader(resourceTable.getPackageName(), resourcePath, false,
-        new OpaqueLoader(resourceTable, "/*", type, resType)
-    ).load(type);
+  private void loadOpaque(ResourcePath resourcePath, final PackageResourceTable resourceTable, final String type, final ResType resType) {
+    new StaxDocumentLoader(resourceTable.getPackageName(), resourcePath) {
+      @Override
+      protected void loadResourceXmlFile(XmlContext xmlContext) {
+        resourceTable.addResource(type, xmlContext.getXmlFile().getBaseName(),
+            new FileTypedResource(xmlContext.getXmlFile(), resType, xmlContext));
+      }
+    }.load(type);
   }
 }
\ No newline at end of file
diff --git a/robolectric-resources/src/main/java/org/robolectric/res/StaxDocumentLoader.java b/robolectric-resources/src/main/java/org/robolectric/res/StaxDocumentLoader.java
index 2d01903..30d6173 100644
--- a/robolectric-resources/src/main/java/org/robolectric/res/StaxDocumentLoader.java
+++ b/robolectric-resources/src/main/java/org/robolectric/res/StaxDocumentLoader.java
@@ -27,19 +27,13 @@
 
   private final String packageName;
   private final ResourcePath resourcePath;
-  private final boolean parse;
   private final StaxLoader[] staxLoaders;
   private final NodeHandler topLevelNodeHandler;
   private final XMLInputFactory factory;
 
   public StaxDocumentLoader(String packageName, ResourcePath resourcePath, StaxLoader... staxLoaders) {
-    this(packageName, resourcePath, true, staxLoaders);
-  }
-
-  public StaxDocumentLoader(String packageName, ResourcePath resourcePath, boolean parse, StaxLoader... staxLoaders) {
     this.packageName = packageName;
     this.resourcePath = resourcePath;
-    this.parse = parse;
     this.staxLoaders = staxLoaders;
 
     topLevelNodeHandler = new NodeHandler();
@@ -76,15 +70,8 @@
 
     XMLStreamReader xmlStreamReader = null;
     try {
-      if (parse) {
-        xmlStreamReader = factory.createXMLStreamReader(xmlFile.getInputStream());
-        doParse(xmlStreamReader, xmlContext);
-      } else {
-        for (StaxLoader staxLoader : staxLoaders) {
-          staxLoader.onStart(null, xmlContext);
-          staxLoader.onEnd(null, xmlContext);
-        }
-      }
+      xmlStreamReader = factory.createXMLStreamReader(xmlFile.getInputStream());
+      doParse(xmlStreamReader, xmlContext);
     } catch (Exception e) {
       throw new RuntimeException("error parsing " + xmlFile, e);
     }
@@ -111,12 +98,6 @@
           nodeHandlerStack.push(nodeHandler);
           NodeHandler elementHandler = nodeHandler.findMatchFor(reader);
           nodeHandler = elementHandler == null ? NO_OP_HANDLER : elementHandler;
-
-          List<NodeHandler> stack = new ArrayList<>();
-          stack.addAll(nodeHandlerStack);
-          Collections.reverse(stack);
-          stack.remove(0);
-
           nodeHandler.onStart(reader, xmlContext);
           break;