[316024] Performance issue in FlatVirtualComponent for binary references
diff --git a/plugins/org.eclipse.wst.common.modulecore/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.common.modulecore/META-INF/MANIFEST.MF
index d7f7bb1..094daf5 100644
--- a/plugins/org.eclipse.wst.common.modulecore/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.wst.common.modulecore/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name.0
 Bundle-Vendor: %provider
 Bundle-SymbolicName: org.eclipse.wst.common.modulecore; singleton:=true
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.1.qualifier
 Bundle-Activator: org.eclipse.wst.common.componentcore.internal.ModulecorePlugin
 Bundle-Localization: plugin
 Export-Package: org.eclipse.wst.common.componentcore,
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/flat/FlatVirtualComponent.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/flat/FlatVirtualComponent.java
index 09829f1..b6f7c7a 100644
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/flat/FlatVirtualComponent.java
+++ b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/flat/FlatVirtualComponent.java
@@ -322,7 +322,7 @@
 				}
 				VirtualComponentFlattenUtility.addMembersToModuleFolder((IFlatFolder)moduleParent, new FlatResource[]{mf});
 			} else {
-				if( shouldAddComponentFile(virtualComp, mf)) {
+				if( shouldAddExportableFile(virtualComp, mf)) {
 					if (mf.getModuleRelativePath().isEmpty()) {
 						for( IFlatResource tmp : members) 
 							if( tmp.getName().equals(mf.getName()))
@@ -341,6 +341,14 @@
 		}
 	}
 
+	protected boolean shouldAddExportableFile(IVirtualComponent current, FlatFile file) {
+		for( int i = 0; i < participants.length; i++ ) {
+			if ( !participants[i].shouldAddExportableFile(component, current, dataModel, file))
+				return false;
+		}
+		return true;
+	}
+
 	public IVirtualComponent getComponent() {
 		return component;
 	}