Fix on getText method and implemented resolve artifact for IFile handler

Change-Id: I2adc64156705336b21f134c94bd5569d0b144352
diff --git a/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/ArtifactHandler.java b/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/ArtifactHandler.java
index f429025..910c27f 100644
--- a/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/ArtifactHandler.java
+++ b/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/ArtifactHandler.java
@@ -57,13 +57,14 @@
 	Object resolveArtifact(EObject artifact);
 
 	/**
+	 * Provide the display name to be displayed in the selection view when an
+	 * object is dropped. This is a default implementation but gives flexibility
+	 * for each handler to decide how its objects should look like when dropped
+	 * to the selection view.
 	 * 
 	 * @param selection
 	 *            The selected object to be added to the selection view
-	 * @return The name that should be displayed in the selection view. This
-	 *         method has a default implementation but gives flexibility for
-	 *         each handler to decide how its objects should look like when
-	 *         dropped to the selection view.
+	 * @return The string that should be displayed in the selection view.
 	 */
 	default String getDisplayName(Object selection) {
 		if (selection instanceof EObject) {
diff --git a/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java b/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java
index bfd655b..bc32981 100644
--- a/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java
+++ b/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java
@@ -10,6 +10,8 @@
  *******************************************************************************/
 package org.eclipse.capra.handler.file;
 
+import java.io.File;
+
 import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter;
 import org.eclipse.capra.core.handlers.ArtifactHandler;
 import org.eclipse.capra.core.helpers.ExtensionPointHelper;
@@ -37,10 +39,11 @@
 
 	@Override
 	public Object resolveArtifact(EObject artifact) {
-		//TO DO
-		return null;
+		ArtifactMetaModelAdapter adapter = ExtensionPointHelper.getArtifactWrapperMetaModelAdapter().get();
+		String uri = adapter.getArtifactUri(artifact);
+		return new File(uri);
 	}
-	
+
 	@Override
 	public String getDisplayName(Object selection) {
 		IFile selectionAsFile = (IFile) selection;
diff --git a/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java b/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java
index 913a607..08efb39 100644
--- a/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java
+++ b/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java
@@ -94,10 +94,10 @@
 			Collection<ArtifactHandler> artifactHandlers = ExtensionPointHelper.getArtifactHandlers();
 			List<ArtifactHandler> availableHandlers = artifactHandlers.stream()
 					.filter(handler -> handler.canHandleSelection(element)).collect(Collectors.toList());
-			if (availableHandlers.size() == 1) {
+			if (availableHandlers.size() > 1) {
 				return availableHandlers.get(0).getDisplayName(element);
 			} else
-				return null;
+				return element.toString();
 		};
 
 		@Override