From 55c6bfebcea8b011f95d1ca9b32fb02a7c46d66a Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Wed, 11 Apr 2018 11:56:16 +0200
Subject: [PATCH] OverviewImageView class removed

---
 .../api/projects/ProjectMetaData.java         |  14 +-
 .../api/projects/ProjectRestImpl.java         |  80 ++++-------
 .../elements/ElementsRestImpl.java            |  21 ---
 .../publications/PublicationsRestImpl.java    |  21 ---
 .../services/view/OverviewImageView.java      | 124 ------------------
 .../view/OverviewImageViewFactory.java        |  60 ---------
 .../resources/applicationContext-service.xml  |   1 -
 .../mapviewer/services/view/AllViewTests.java |   2 -
 .../view/OverviewImageViewFactoryTest.java    |  47 -------
 .../services/view/OverviewImageViewTest.java  |  27 ----
 10 files changed, 36 insertions(+), 361 deletions(-)
 delete mode 100644 service/src/main/java/lcsb/mapviewer/services/view/OverviewImageView.java
 delete mode 100644 service/src/main/java/lcsb/mapviewer/services/view/OverviewImageViewFactory.java
 delete mode 100644 service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewFactoryTest.java
 delete mode 100644 service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewTest.java

diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectMetaData.java b/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectMetaData.java
index 9f209f5307..ff880436c8 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectMetaData.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectMetaData.java
@@ -6,7 +6,7 @@ import java.util.Map;
 
 import org.apache.log4j.Logger;
 
-import lcsb.mapviewer.services.view.OverviewImageView;
+import lcsb.mapviewer.model.map.OverviewImage;
 
 public class ProjectMetaData implements Serializable {
 
@@ -51,12 +51,12 @@ public class ProjectMetaData implements Serializable {
   /**
    * List of overview images attached to this model.
    */
-  private List<OverviewImageView> overviewImageViews;
+  private List<OverviewImage> overviewImageViews;
 
   /**
    * Top level overview image.
    */
-  private OverviewImageView topOverviewImage;
+  private OverviewImage topOverviewImage;
 
   /**
    * Default constructor. Should be used only for deserialization.
@@ -102,7 +102,7 @@ public class ProjectMetaData implements Serializable {
    * @return the overviewImageViews
    * @see #overviewImageViews
    */
-  public List<OverviewImageView> getOverviewImageViews() {
+  public List<OverviewImage> getOverviewImageViews() {
     return overviewImageViews;
   }
 
@@ -111,7 +111,7 @@ public class ProjectMetaData implements Serializable {
    *          the overviewImageViews to set
    * @see #overviewImageViews
    */
-  public void setOverviewImageViews(List<OverviewImageView> overviewImageViews) {
+  public void setOverviewImageViews(List<OverviewImage> overviewImageViews) {
     this.overviewImageViews = overviewImageViews;
   }
 
@@ -119,7 +119,7 @@ public class ProjectMetaData implements Serializable {
    * @return the topOverviewImage
    * @see #topOverviewImage
    */
-  public OverviewImageView getTopOverviewImage() {
+  public OverviewImage getTopOverviewImage() {
     return topOverviewImage;
   }
 
@@ -128,7 +128,7 @@ public class ProjectMetaData implements Serializable {
    *          the topOverviewImage to set
    * @see #topOverviewImage
    */
-  public void setTopOverviewImage(OverviewImageView topOverviewImage) {
+  public void setTopOverviewImage(OverviewImage topOverviewImage) {
     this.topOverviewImage = topOverviewImage;
   }
 
diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java
index 15afbc55d2..589c2850ff 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java
@@ -14,11 +14,11 @@ import java.security.NoSuchAlgorithmException;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Comparator;
-import java.util.TreeMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.TreeMap;
 
 import org.apache.commons.io.IOUtils;
 import org.apache.log4j.Logger;
@@ -77,7 +77,6 @@ import lcsb.mapviewer.services.utils.ColorSchemaReader;
 import lcsb.mapviewer.services.utils.CreateProjectParams;
 import lcsb.mapviewer.services.utils.data.BuildInLayout;
 import lcsb.mapviewer.services.utils.gmap.CoordinationConverter;
-import lcsb.mapviewer.services.view.OverviewImageViewFactory;
 
 @Transactional(value = "txManager")
 public class ProjectRestImpl extends BaseRestImpl {
@@ -108,9 +107,6 @@ public class ProjectRestImpl extends BaseRestImpl {
   @Autowired
   private ProjectDao projectDao;
 
-  @Autowired
-  private OverviewImageViewFactory factory;
-
   @Autowired
   private UploadedFileEntryDao uploadedFileEntryDao;
 
@@ -136,7 +132,7 @@ public class ProjectRestImpl extends BaseRestImpl {
     }
     result.setProgress(project.getProgress());
 
-    result.setOverviewImageViews(factory.createList(project.getOverviewImages()));
+    result.setOverviewImageViews(project.getOverviewImages());
 
     Set<OverviewImage> set = new HashSet<>();
     set.addAll(project.getOverviewImages());
@@ -151,11 +147,11 @@ public class ProjectRestImpl extends BaseRestImpl {
     result.setDirectory(project.getDirectory());
     result.setErrors(project.getErrors() != null && !project.getErrors().isEmpty());
     if (set.size() > 0) {
-      result.setTopOverviewImage(factory.create(set.iterator().next()));
+      result.setTopOverviewImage(set.iterator().next());
     } else if (project.getOverviewImages().size() > 0) {
       logger.warn(
           "Cannot determine top level image. Taking first one. " + project.getOverviewImages().get(0).getFilename());
-      result.setTopOverviewImage(factory.create(project.getOverviewImages().get(0)));
+      result.setTopOverviewImage(project.getOverviewImages().get(0));
     }
 
     if (project.getOrganism() != null) {
@@ -168,23 +164,6 @@ public class ProjectRestImpl extends BaseRestImpl {
     return result;
   }
 
-  /**
-   * @return the factory
-   * @see #factory
-   */
-  public OverviewImageViewFactory getFactory() {
-    return factory;
-  }
-
-  /**
-   * @param factory
-   *          the factory to set
-   * @see #factory
-   */
-  public void setFactory(OverviewImageViewFactory factory) {
-    this.factory = factory;
-  }
-
   public FileEntry getSource(String token, String projectId) throws SecurityException, QueryException {
     Project project = getProjectService().getProjectByProjectId(projectId, token);
     if (project == null) {
@@ -331,14 +310,14 @@ public class ProjectRestImpl extends BaseRestImpl {
       String backgroundOverlayId, String overlayIds, String zoomLevel, String polygonString)
       throws SecurityException, QueryException, IOException, InvalidColorSchemaException, CommandExecutionException,
       ConverterException, InconsistentModelException {
-	  User user = getUserService().getUserByToken(token);
+    User user = getUserService().getUserByToken(token);
     Model topModel = getModelService().getLastModelByProjectId(projectId, token);
     if (topModel == null) {
       throw new ObjectNotFoundException("Project with given id doesn't exist");
     }
-    
+
     Model originalModel = topModel.getSubmodelById(modelId);
-        
+
     if (originalModel == null) {
       throw new ObjectNotFoundException("Model with given id doesn't exist");
     }
@@ -349,31 +328,29 @@ public class ProjectRestImpl extends BaseRestImpl {
     // create model bounded by the polygon
     SubModelCommand subModelCommand = new SubModelCommand(originalModel, polygon);
     Model part = subModelCommand.execute();
-    
-    //Get list of overlay ids
-    String[] overlayIdsList;    
-    if (overlayIds == null || overlayIds.trim().isEmpty()) {    	
-    	overlayIdsList = new String[0];
-    }
-    else {    	
-    	overlayIdsList = overlayIds.split(",");
-    }    
+
+    // Get list of overlay ids
+    String[] overlayIdsList;
+    if (overlayIds == null || overlayIds.trim().isEmpty()) {
+      overlayIdsList = new String[0];
+    } else {
+      overlayIdsList = overlayIds.split(",");
+    }
     // Remove all colors
-    if (overlayIdsList.length > 0)
-    {
-	    
-	    for (Element element: part.getElements()){
-	    	element.setColor(Color.WHITE);
-	    }
+    if (overlayIdsList.length > 0) {
+
+      for (Element element : part.getElements()) {
+        element.setColor(Color.WHITE);
+      }
     }
     // Color with overlays
-    for (String overlayId: overlayIdsList){
-    	Layout overlay = layoutService.getLayoutById(Integer.parseInt(overlayId.trim()), token);
-    	
-    	ColorSchemaReader reader = new ColorSchemaReader();
-    	Collection<ColorSchema> schemas = reader.readColorSchema(overlay.getInputData().getFileContent());
-  
-    	new ColorModelCommand(part, schemas, getUserService().getColorExtractorForUser(user)).execute();    	
+    for (String overlayId : overlayIdsList) {
+      Layout overlay = layoutService.getLayoutById(Integer.parseInt(overlayId.trim()), token);
+
+      ColorSchemaReader reader = new ColorSchemaReader();
+      Collection<ColorSchema> schemas = reader.readColorSchema(overlay.getInputData().getFileContent());
+
+      new ColorModelCommand(part, schemas, getUserService().getColorExtractorForUser(user)).execute();
     }
 
     IConverter parser = getModelParser(handlerClass);
@@ -821,7 +798,8 @@ public class ProjectRestImpl extends BaseRestImpl {
     return null;
   }
 
-  public List<Map<String, Object>> getSubmapConnections(String token, String projectId) throws ObjectNotFoundException, SecurityException {
+  public List<Map<String, Object>> getSubmapConnections(String token, String projectId)
+      throws ObjectNotFoundException, SecurityException {
     List<Map<String, Object>> result = new ArrayList<>();
     List<Model> models = getModels(projectId, "*", token);
     List<Element> elements = new ArrayList<>();
diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/bioEntities/elements/ElementsRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/bioEntities/elements/ElementsRestImpl.java
index f5ff71b1b1..5aac8ca424 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/bioEntities/elements/ElementsRestImpl.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/bioEntities/elements/ElementsRestImpl.java
@@ -8,7 +8,6 @@ import java.util.Set;
 import java.util.TreeMap;
 
 import org.apache.log4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 
 import lcsb.mapviewer.api.BaseRestImpl;
@@ -25,7 +24,6 @@ import lcsb.mapviewer.model.map.species.field.ElementModification;
 import lcsb.mapviewer.model.map.species.field.Structure;
 import lcsb.mapviewer.model.map.species.field.UniprotRecord;
 import lcsb.mapviewer.services.SecurityException;
-import lcsb.mapviewer.services.view.OverviewImageViewFactory;
 
 @Transactional(value = "txManager")
 public class ElementsRestImpl extends BaseRestImpl {
@@ -36,9 +34,6 @@ public class ElementsRestImpl extends BaseRestImpl {
   @SuppressWarnings("unused")
   private Logger logger = Logger.getLogger(ElementsRestImpl.class);
 
-  @Autowired
-  private OverviewImageViewFactory factory;
-
   public List<Map<String, Object>> getElements(String projectId, String id, String columns, String modelId,
       String token, String type, String includedCompartmentIds, String excludedCompartmentIds)
       throws QueryException, SecurityException {
@@ -307,20 +302,4 @@ public class ElementsRestImpl extends BaseRestImpl {
     return columnsSet;
   }
 
-  /**
-   * @return the factory
-   * @see #factory
-   */
-  public OverviewImageViewFactory getFactory() {
-    return factory;
-  }
-
-  /**
-   * @param factory
-   *          the factory to set
-   * @see #factory
-   */
-  public void setFactory(OverviewImageViewFactory factory) {
-    this.factory = factory;
-  }
 }
diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/publications/PublicationsRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/publications/PublicationsRestImpl.java
index 343de635ee..6565b23e84 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/publications/PublicationsRestImpl.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/projects/models/publications/PublicationsRestImpl.java
@@ -27,7 +27,6 @@ import lcsb.mapviewer.model.map.MiriamType;
 import lcsb.mapviewer.model.map.model.Model;
 import lcsb.mapviewer.services.SecurityException;
 import lcsb.mapviewer.services.interfaces.ISearchService;
-import lcsb.mapviewer.services.view.OverviewImageViewFactory;
 
 @Transactional(value = "txManager")
 public class PublicationsRestImpl extends BaseRestImpl {
@@ -43,9 +42,6 @@ public class PublicationsRestImpl extends BaseRestImpl {
   @Autowired
   private PubmedParser pubmedParser;
 
-  @Autowired
-  private OverviewImageViewFactory factory;
-
   public SortedMap<MiriamData, List<BioEntity>> getPublications(Collection<Model> models) {
     SortedMap<MiriamData, List<BioEntity>> publications = new TreeMap<>();
 
@@ -87,23 +83,6 @@ public class PublicationsRestImpl extends BaseRestImpl {
     this.searchService = searchService;
   }
 
-  /**
-   * @return the factory
-   * @see #factory
-   */
-  public OverviewImageViewFactory getFactory() {
-    return factory;
-  }
-
-  /**
-   * @param factory
-   *          the factory to set
-   * @see #factory
-   */
-  public void setFactory(OverviewImageViewFactory factory) {
-    this.factory = factory;
-  }
-
   private enum SortColumn {
     PUBMED_ID("pubmedId"), //
     YEAR("year"), //
diff --git a/service/src/main/java/lcsb/mapviewer/services/view/OverviewImageView.java b/service/src/main/java/lcsb/mapviewer/services/view/OverviewImageView.java
deleted file mode 100644
index d6a7ed977e..0000000000
--- a/service/src/main/java/lcsb/mapviewer/services/view/OverviewImageView.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package lcsb.mapviewer.services.view;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
-import lcsb.mapviewer.model.map.OverviewImage;
-
-/**
- * View representatin of a {@link OverviewImage}. It's a light structre that
- * present {@link OverviewImage} data to the client side.
- * 
- * @author Piotr Gawron
- * 
- */
-public class OverviewImageView extends AbstractView<OverviewImage> implements Serializable {
-
-	/**
-	 * 
-	 */
-	private static final long				serialVersionUID	= 1L;
-
-	/**
-	 * Name of the file (relative to the main image data framework directory).
-	 */
-	private String									filename;
-	/**
-	 * Width of the image.
-	 */
-	private Integer									width;
-	/**
-	 * Height of the image.
-	 */
-	private Integer									height;
-
-	/**
-	 * List of links that are accesible from this image.
-	 */
-	private List<OverviewLinkView>	links							= new ArrayList<OverviewLinkView>();
-
-	/**
-	 * Default constructor.
-	 * 
-	 * @param object
-	 *          original {@link OverviewImage}
-	 */
-	protected OverviewImageView(OverviewImage object) {
-		super(object);
-	}
-
-	/**
-	 * Default constructor. Should be used only for deserialization.
-	 */
-	protected OverviewImageView() {
-	}
-
-	/**
-	 * @return the filename
-	 * @see #filename
-	 */
-	public String getFilename() {
-		return filename;
-	}
-
-	/**
-	 * @param filename
-	 *          the filename to set
-	 * @see #filename
-	 */
-	public void setFilename(String filename) {
-		this.filename = filename;
-	}
-
-	/**
-	 * @return the width
-	 * @see #width
-	 */
-	public Integer getWidth() {
-		return width;
-	}
-
-	/**
-	 * @param width
-	 *          the width to set
-	 * @see #width
-	 */
-	public void setWidth(Integer width) {
-		this.width = width;
-	}
-
-	/**
-	 * @return the height
-	 * @see #height
-	 */
-	public Integer getHeight() {
-		return height;
-	}
-
-	/**
-	 * @param height
-	 *          the height to set
-	 * @see #height
-	 */
-	public void setHeight(Integer height) {
-		this.height = height;
-	}
-
-	/**
-	 * @return the links
-	 * @see #links
-	 */
-	public List<OverviewLinkView> getLinks() {
-		return links;
-	}
-
-	/**
-	 * @param links
-	 *          the links to set
-	 * @see #links
-	 */
-	public void setLinks(List<OverviewLinkView> links) {
-		this.links = links;
-	}
-}
diff --git a/service/src/main/java/lcsb/mapviewer/services/view/OverviewImageViewFactory.java b/service/src/main/java/lcsb/mapviewer/services/view/OverviewImageViewFactory.java
deleted file mode 100644
index 4b4bc5b150..0000000000
--- a/service/src/main/java/lcsb/mapviewer/services/view/OverviewImageViewFactory.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package lcsb.mapviewer.services.view;
-
-import lcsb.mapviewer.model.map.OverviewImage;
-
-import org.apache.log4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
-
-import lcsb.mapviewer.common.exception.NotImplementedException;
-
-import com.google.gson.Gson;
-
-/**
- * Factory class for {@link OverviewImage} class.
- * 
- * @author Piotr Gawron
- * 
- */
-@Transactional(value = "txManager")
-public class OverviewImageViewFactory extends AbstractViewFactory<OverviewImage, OverviewImageView> {
-	/**
-	 * Default class logger.
-	 */
-	private static Logger						logger	= Logger.getLogger(OverviewImageViewFactory.class);
-
-	/**
-	 * Factory object used for creation of {@link OverviewImageView} elements.
-	 */
-	@Autowired
-	private OverviewLinkViewFactory	overviewLinkViewFactory;
-
-	@Override
-	public OverviewImageView create(OverviewImage object) {
-		OverviewImageView result = new OverviewImageView(object);
-		if (object == null) {
-			logger.warn("Empty image...");
-			return result;
-		}
-		if (object.getProject() != null) {
-			result.setFilename(object.getProject().getDirectory() + "/" + object.getFilename());
-		} else {
-			result.setFilename(object.getFilename());
-		}
-		result.setWidth(object.getWidth());
-		result.setHeight(object.getHeight());
-		result.setLinks(overviewLinkViewFactory.createList(object.getLinks()));
-
-		return result;
-	}
-
-	@Override
-	public String createGson(OverviewImageView object) {
-		return new Gson().toJson(object);
-	}
-
-	@Override
-	public OverviewImage viewToObject(OverviewImageView view) {
-		throw new NotImplementedException();
-	}
-}
diff --git a/service/src/main/resources/applicationContext-service.xml b/service/src/main/resources/applicationContext-service.xml
index ef8ea2b837..4eafac2052 100644
--- a/service/src/main/resources/applicationContext-service.xml
+++ b/service/src/main/resources/applicationContext-service.xml
@@ -45,7 +45,6 @@
 	<bean id="PasswordEncoder" class="lcsb.mapviewer.services.impl.Md5PasswordEncoder"/>
 	
 	<!-- View factories -->
-	<bean id="OverviewImageViewFactory" class="lcsb.mapviewer.services.view.OverviewImageViewFactory"/>
 	<bean id="OverviewLinkViewFactory" class="lcsb.mapviewer.services.view.OverviewLinkViewFactory"/>
 	<bean id="ReferenceGenomeViewFactory" class="lcsb.mapviewer.services.view.ReferenceGenomeViewFactory"/>
 	<bean id="ReferenceGenomeGeneMappingViewFactory" class="lcsb.mapviewer.services.view.ReferenceGenomeGeneMappingViewFactory"/>
diff --git a/service/src/test/java/lcsb/mapviewer/services/view/AllViewTests.java b/service/src/test/java/lcsb/mapviewer/services/view/AllViewTests.java
index 16b074840b..de944a5cb3 100644
--- a/service/src/test/java/lcsb/mapviewer/services/view/AllViewTests.java
+++ b/service/src/test/java/lcsb/mapviewer/services/view/AllViewTests.java
@@ -6,8 +6,6 @@ import org.junit.runners.Suite.SuiteClasses;
 
 @RunWith(Suite.class)
 @SuiteClasses({ FrameworkVersionViewTest.class, //
-    OverviewImageViewFactoryTest.class, //
-    OverviewImageViewTest.class, //
     OverviewLinkViewFactoryTest.class, //
     OverviewLinkViewTest.class, //
     ReferenceGenomeViewFactoryTest.class, //
diff --git a/service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewFactoryTest.java b/service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewFactoryTest.java
deleted file mode 100644
index 61a2c7772a..0000000000
--- a/service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewFactoryTest.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package lcsb.mapviewer.services.view;
-
-import static org.junit.Assert.assertNotNull;
-import lcsb.mapviewer.model.map.OverviewImage;
-import lcsb.mapviewer.services.ServiceTestFunctions;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.springframework.beans.factory.annotation.Autowired;
-
-public class OverviewImageViewFactoryTest extends ServiceTestFunctions {
-	@Autowired
-	OverviewImageViewFactory	overviewImageViewFactory;
-
-	@Before
-	public void setUp() throws Exception {
-	}
-
-	@After
-	public void tearDown() throws Exception {
-	}
-
-	@Test
-	public void testCreateNull() throws Exception {
-		try {
-			OverviewImageView result = overviewImageViewFactory.create(null);
-			assertNotNull(result);
-		} catch (Exception e) {
-			e.printStackTrace();
-			throw e;
-		}
-	}
-
-	@Test
-	public void testCreate() throws Exception {
-		try {
-			OverviewImage oi = new OverviewImage();
-			OverviewImageView result = overviewImageViewFactory.create(oi);
-			assertNotNull(result);
-		} catch (Exception e) {
-			e.printStackTrace();
-			throw e;
-		}
-	}
-
-}
diff --git a/service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewTest.java b/service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewTest.java
deleted file mode 100644
index 3922449a9a..0000000000
--- a/service/src/test/java/lcsb/mapviewer/services/view/OverviewImageViewTest.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package lcsb.mapviewer.services.view;
-
-import org.apache.commons.lang3.SerializationUtils;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-public class OverviewImageViewTest {
-
-	@Before
-	public void setUp() throws Exception {
-	}
-
-	@After
-	public void tearDown() throws Exception {
-	}
-
-	@Test
-	public void testSerialization() {
-		try {
-			SerializationUtils.serialize(new OverviewImageView());
-		} catch (Exception e) {
-			e.printStackTrace();
-			throw e;
-		}
-	}
-}
-- 
GitLab