added fix to load Amalthea models programmatically (even in case "no-load" nature is added)
diff --git a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaLoader.java b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaLoader.java
index d2342f5..8e4102b 100644
--- a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaLoader.java
+++ b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaLoader.java
@@ -103,7 +103,7 @@
 	private static ResourceSet initializeResourceSet() {
 		AmaltheaPackage.eINSTANCE.eClass(); // register the package
 		final ExtendedResourceSet resSet = new ExtendedResourceSetImpl();
-		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory());
+		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory(true));
 
 		return resSet;
 	}
diff --git a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaWriter.java b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaWriter.java
index 50b45db..97e54be 100644
--- a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaWriter.java
+++ b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/io/AmaltheaWriter.java
@@ -98,7 +98,7 @@
 	private static ResourceSet initializeResourceSet() {
 		AmaltheaPackage.eINSTANCE.eClass(); // register the package
 		final ExtendedResourceSet resSet = new ExtendedResourceSetImpl();
-		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory());
+		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory(true));
 
 		return resSet;
 	}
diff --git a/plugins/org.eclipse.app4mc.amalthea.sphinx/src/org/eclipse/app4mc/amalthea/sphinx/AmaltheaResourceFactory.java b/plugins/org.eclipse.app4mc.amalthea.sphinx/src/org/eclipse/app4mc/amalthea/sphinx/AmaltheaResourceFactory.java
index ee5cfd9..42171fd 100644
--- a/plugins/org.eclipse.app4mc.amalthea.sphinx/src/org/eclipse/app4mc/amalthea/sphinx/AmaltheaResourceFactory.java
+++ b/plugins/org.eclipse.app4mc.amalthea.sphinx/src/org/eclipse/app4mc/amalthea/sphinx/AmaltheaResourceFactory.java
@@ -29,9 +29,20 @@
 
 public class AmaltheaResourceFactory extends XMIResourceFactoryImpl {
 
+	private boolean isInvokedProgrammatically=false;
+	
 	public AmaltheaResourceFactory() {
 		super();
 	}
+	
+	/**
+	 * AmaltheaResourceFactory is created using this constructor in a scenario to load models programmatically (explicitly -> instead of workspace build mechanism)
+	 * If the parameter to the constructor is supplied as true, by default Amalthea model file will be allowed to be loaded (irrespective of "no-load" nature)
+	 * @param isInvokedProgrammatically true or false
+	 */
+	public AmaltheaResourceFactory( boolean isInvokedProgrammatically) {
+		this.isInvokedProgrammatically=isInvokedProgrammatically;
+	}
 
 	/**
 	 * Adds UTF-8 encoding to AMALTHEA resource.
@@ -64,8 +75,7 @@
 	 */
 	private boolean canLoadAmaltheaModel(final URI uri) {
 
-// FIXME
-		if (Platform.isRunning() == false) {
+		if ((Platform.isRunning() == false) || isInvokedProgrammatically) {
 			return true;
 		}
 		
@@ -108,4 +118,12 @@
 		return true;
 	}
 
+	public boolean isInvokedExplicitly() {
+		return isInvokedProgrammatically;
+	}
+
+	public void setInvokedExplicitly(boolean isInvokedExplicitly) {
+		this.isInvokedProgrammatically = isInvokedExplicitly;
+	}
+
 }
diff --git a/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader.java b/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader.java
index 5745dae..8c5bf3c 100644
--- a/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader.java
+++ b/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader.java
@@ -70,7 +70,7 @@
 	@Override
 	protected void runInternal(final Context ctx) throws WorkflowException {
 		final ExtendedResourceSet resSet = new ExtendedResourceSetImpl();
-		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory());
+		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory(true));
 		final Copier copier = new Copier(true, true);
 		for (final String filename : getFileNames()) {
 			try {
diff --git a/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader2.java b/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader2.java
index 3ec8a0f..cdfc3f5 100644
--- a/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader2.java
+++ b/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelReader2.java
@@ -55,7 +55,7 @@
 	@Override
 	protected void runInternal(final Context ctx) throws WorkflowException {
 		final ExtendedResourceSet resSet = new ExtendedResourceSetImpl();
-		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory());
+		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory(true));
 		final Collection<Amalthea> models = new ArrayList<Amalthea>();
 		for (final String filename : getFileNames()) {
 			try {
diff --git a/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelWriter.java b/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelWriter.java
index 5a176c5..c730379 100644
--- a/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelWriter.java
+++ b/plugins/org.eclipse.app4mc.amalthea.workflow.core/src/org/eclipse/app4mc/amalthea/workflow/component/ModelWriter.java
@@ -172,7 +172,7 @@
 			final URI tmpUri = URI.createURI(outputFilePath);
 			final ExtendedResourceSet resourceSet = new ExtendedResourceSetImpl();
 			resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi",
-					new AmaltheaResourceFactory());
+					new AmaltheaResourceFactory(true));
 			((ExtendedResourceSetImpl) resourceSet).setURIResourceMap(this.uRIResourceCache);
 			final Resource outResource = resourceSet.createResource(tmpUri);
 			((ResourceImpl) outResource).setIntrinsicIDToEObjectMap(this.IntrinsicIDToEObjectCache);
diff --git a/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaReader.java b/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaReader.java
index 5ed827f..4728479 100644
--- a/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaReader.java
+++ b/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaReader.java
@@ -67,7 +67,7 @@
 	protected void invokeInternal(final WorkflowContext ctx, final ProgressMonitor monitor, final Issues issues) {
 		this.log.info("Starting reading files...");
 		final ResourceSet resSet = new ResourceSetImpl();
-		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory());
+		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory(true));
 		final Copier copier = new Copier(true, true);
 		for (final String filename : getFileNames()) {
 			try {
diff --git a/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaWriter.java b/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaWriter.java
index 7e55409..4608fa9 100644
--- a/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaWriter.java
+++ b/plugins/org.eclipse.app4mc.amalthea.workflow.mwe2/src/org/eclipse/app4mc/amalthea/workflow/mwe2/util/AmaltheaWriter.java
@@ -187,7 +187,7 @@
 			final URI tmpUri = URI.createURI(outputFilePath);
 			final ResourceSet resourceSet = new ResourceSetImpl();
 			resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi",
-					new AmaltheaResourceFactory());
+					new AmaltheaResourceFactory(true));
 			((ResourceSetImpl) resourceSet).setURIResourceMap(this.cache2);
 			final Resource outResource = resourceSet.createResource(tmpUri);
 			((ResourceImpl) outResource).setIntrinsicIDToEObjectMap(this.cache);
diff --git a/plugins/org.eclipse.app4mc.multicore.sharelibs/src/org/eclipse/app4mc/multicore/sharelibs/UniversalHandler.java b/plugins/org.eclipse.app4mc.multicore.sharelibs/src/org/eclipse/app4mc/multicore/sharelibs/UniversalHandler.java
index 9f0cf01..dad4357 100644
--- a/plugins/org.eclipse.app4mc.multicore.sharelibs/src/org/eclipse/app4mc/multicore/sharelibs/UniversalHandler.java
+++ b/plugins/org.eclipse.app4mc.multicore.sharelibs/src/org/eclipse/app4mc/multicore/sharelibs/UniversalHandler.java
@@ -173,7 +173,7 @@
 	 */
 	public void readModels(final URI uri, final boolean copyModel) {
 		final ResourceSet resSet = new ResourceSetImpl();
-		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory());
+		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory(true));
 		final Copier copier = new Copier(true, true);
 		final Collection<EObject> content;
 		try {
@@ -210,7 +210,7 @@
 		// and
 		// org.eclipse.app4mc.amalthea.workflow.mwe2.AmaltheaWriter#saveModel
 		final ResourceSet resSet = new ResourceSetImpl();
-		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory());
+		resSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("amxmi", new AmaltheaResourceFactory(true));
 		((ResourceSetImpl) resSet).setURIResourceMap(this.cache2);
 		final Resource resource = resSet.createResource(uri);
 		((ResourceImpl) resource).setIntrinsicIDToEObjectMap(this.cache);