diff --git a/productMods/templates/freemarker/visualization/personlevel/coAuthorPersonLevel.ftl b/productMods/templates/freemarker/visualization/personlevel/coAuthorPersonLevel.ftl
index 47d38d29..c684c32f 100644
--- a/productMods/templates/freemarker/visualization/personlevel/coAuthorPersonLevel.ftl
+++ b/productMods/templates/freemarker/visualization/personlevel/coAuthorPersonLevel.ftl
@@ -95,6 +95,7 @@ $(document).ready(function(){
<#-- Moniker-->
+
4Back to Profile
diff --git a/productMods/templates/freemarker/visualization/personlevel/coPIPersonLevel.ftl b/productMods/templates/freemarker/visualization/personlevel/coPIPersonLevel.ftl
index df93b6d3..3caffdbc 100644
--- a/productMods/templates/freemarker/visualization/personlevel/coPIPersonLevel.ftl
+++ b/productMods/templates/freemarker/visualization/personlevel/coPIPersonLevel.ftl
@@ -92,7 +92,7 @@ $(document).ready(function(){
<#-- Moniker-->
-
+
4Back to Profile
diff --git a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/DummyVisClientController.java b/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/DummyVisClientController.java
deleted file mode 100644
index ed1943e0..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/DummyVisClientController.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-
-package edu.cornell.mannlib.vitro.webapp.controller.visualization;
-
-/*
-Copyright (c) 2010, Cornell University
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
- * Neither the name of Cornell University nor the names of its contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-import java.io.IOException;
-
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import edu.cornell.mannlib.vedit.controller.BaseEditController;
-import edu.cornell.mannlib.vitro.webapp.beans.Portal;
-import edu.cornell.mannlib.vitro.webapp.controller.Controllers;
-import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
-
-/**
- * Services a sparql query. This will return a simple error message and a 501 if
- * there is no jena Model.
- *
- * @author bdc34
- *
- */
-public class DummyVisClientController extends BaseEditController {
-
- private static final long serialVersionUID = 1L;
-
- private static final Log log = LogFactory.getLog(DummyVisClientController.class.getName());
-
- @Override
- protected void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException
- {
- this.doGet(request,response);
- }
-
- @Override
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException
- {
- if (!checkLoginStatus(request, response))
- return;
-
- super.doGet(request, response);
-
- VitroRequest vreq = new VitroRequest(request);
- prepareVisualizationQueryResponse(request, response, vreq);
-
- return;
- }
-
- private void prepareVisualizationQueryResponse(HttpServletRequest request,
- HttpServletResponse response, VitroRequest vreq) {
-
- Portal portal = vreq.getPortal();
-
- RequestDispatcher requestDispatcher = request.getRequestDispatcher(Controllers.BASIC_JSP);
- request.setAttribute("bodyJsp", "/templates/visualization/dummy_vis_client.jsp");
- request.setAttribute("portalBean", portal);
- request.setAttribute("title", "Dummy Visualization Client");
- request.setAttribute("scripts", "/templates/visualization/visualization_scripts.jsp");
-
- try {
- requestDispatcher.forward(request, response);
- } catch (Exception e) {
- log.error("EntityEditController could not forward to view.");
- log.error(e.getMessage());
- log.error(e.getStackTrace());
- }
-
- }
-
-}
diff --git a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationController.java b/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationController.java
deleted file mode 100644
index 70d8a233..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationController.java
+++ /dev/null
@@ -1,224 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-
-package edu.cornell.mannlib.vitro.webapp.controller.visualization;
-
-import java.io.IOException;
-import java.util.Map;
-
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletException;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import org.springframework.beans.factory.BeanFactory;
-import org.springframework.context.ApplicationContext;
-import org.springframework.context.support.ClassPathXmlApplicationContext;
-
-import com.hp.hpl.jena.query.DataSource;
-import com.hp.hpl.jena.query.DatasetFactory;
-import com.hp.hpl.jena.query.Syntax;
-import com.hp.hpl.jena.rdf.model.Model;
-import com.hp.hpl.jena.rdf.model.ModelMaker;
-
-import edu.cornell.mannlib.vedit.controller.BaseEditController;
-import edu.cornell.mannlib.vitro.webapp.beans.Portal;
-import edu.cornell.mannlib.vitro.webapp.controller.Controllers;
-import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
-import edu.cornell.mannlib.vitro.webapp.visualization.constants.VisConstants;
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.VisualizationRequestHandler;
-
-/**
- * Services a visualization request. This will return a simple error message and a 501 if
- * there is no jena Model.
- *
- * @author cdtank
- */
-@SuppressWarnings("serial")
-public class VisualizationController extends BaseEditController {
-
- private Map visualizationIDsToClass;
-
- public static final String URL_ENCODING_SCHEME = "UTF-8";
-
- private static final Log log = LogFactory.getLog(VisualizationController.class.getName());
-
- protected static final Syntax SYNTAX = Syntax.syntaxARQ;
-
- /* This method is overridden to inject vis dependencies i.e. the vis algorithms that are
- * being implemented into the vis controller. Modified Dependency Injection pattern is
- * used here. XML file containing the location of all the vis is saved in accessible folder.
- * @see javax.servlet.GenericServlet#init()
- */
- @Override
- public void init() throws ServletException {
- super.init();
- try {
-
- String resourcePath =
- getServletContext()
- .getRealPath(VisualizationFrameworkConstants
- .RELATIVE_LOCATION_OF_VISUALIZATIONS_BEAN);
-
- ApplicationContext context = new ClassPathXmlApplicationContext(
- "file:" + resourcePath);
-
- BeanFactory factory = context;
-
- VisualizationInjector visualizationInjector =
- (VisualizationInjector) factory.getBean("visualizationInjector");
-
- visualizationIDsToClass = visualizationInjector.getVisualizationIDToClass();
-
- } catch (Exception e) {
- log.error(e);
- }
- }
-
-
- @Override
- protected void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- this.doGet(request, response);
- }
-
- @Override
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- super.doGet(request, response);
-
- VitroRequest vitroRequest = new VitroRequest(request);
-
- /*
- * Based on the query parameters passed via URI get the appropriate visualization
- * request handler.
- * */
- VisualizationRequestHandler visRequestHandler =
- getVisualizationRequestHandler(request, response, vitroRequest);
-
- /*
- * Pass the query to the selected visualization request handler & render the visualization.
- * Since the visualization content is directly added to the response object we are side-
- * effecting this method.
- * */
- renderVisualization(request, response, vitroRequest, visRequestHandler);
-
- return;
- }
-
-
- private void renderVisualization(HttpServletRequest request,
- HttpServletResponse response,
- VitroRequest vitroRequest,
- VisualizationRequestHandler visRequestHandler)
- throws ServletException, IOException {
-
- DataSource dataSource = setupJENADataSource(request,
- response,
- vitroRequest);
- if (dataSource != null && visRequestHandler != null) {
-
- visRequestHandler.generateVisualization(vitroRequest,
- request,
- response,
- log,
- dataSource);
-
- } else {
-
- String errorMessage = "Data Model Empty &/or Inappropriate "
- + "query parameters were submitted. ";
-
- handleMalformedParameters(errorMessage,
- request,
- response);
-
- log.error(errorMessage);
- }
- }
-
- private VisualizationRequestHandler getVisualizationRequestHandler(
- HttpServletRequest request,
- HttpServletResponse response,
- VitroRequest vitroRequest)
- throws ServletException, IOException {
-
- String visType = vitroRequest.getParameter(VisualizationFrameworkConstants
- .VIS_TYPE_KEY);
- VisualizationRequestHandler visRequestHandler = null;
- try {
- visRequestHandler = visualizationIDsToClass.get(visType);
- } catch (NullPointerException nullKeyException) {
-
- /*
- * This is side-effecting because the error content is directly
- * added to the request object. From where it is redirected to
- * the error page.
- * */
- handleMalformedParameters("Inappropriate query parameters were submitted. ",
- request,
- response);
- }
- return visRequestHandler;
- }
-
- private DataSource setupJENADataSource(HttpServletRequest request,
- HttpServletResponse response, VitroRequest vreq) {
-
- Model model = vreq.getJenaOntModel(); // getModel()
- if (model == null) {
- doNoModelInContext(request, response);
- return null;
- }
-
- log.debug("rdfResultFormat was: " + VisConstants.RDF_RESULT_FORMAT_PARAM);
-
- DataSource dataSource = DatasetFactory.create();
- ModelMaker maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
-
- dataSource.setDefaultModel(model);
-
- return dataSource;
- }
-
- private void doNoModelInContext(HttpServletRequest request, HttpServletResponse res) {
- try {
- res.setStatus(HttpServletResponse.SC_NOT_IMPLEMENTED);
- ServletOutputStream sos = res.getOutputStream();
- sos.println("this service is not supporeted by the current "
- + "webapp configuration. A jena model is required in the "
- + "servlet context.");
-
- } catch (IOException e) {
- log.error("Could not write to ServletOutputStream");
- }
- }
-
- private void handleMalformedParameters(String errorMessage, HttpServletRequest request,
- HttpServletResponse response)
- throws ServletException, IOException {
-
- VitroRequest vreq = new VitroRequest(request);
- Portal portal = vreq.getPortal();
-
- request.setAttribute("error", errorMessage);
-
- RequestDispatcher requestDispatcher = request.getRequestDispatcher(Controllers.BASIC_JSP);
- request.setAttribute("bodyJsp", "/templates/visualization/visualization_error.jsp");
- request.setAttribute("portalBean", portal);
- request.setAttribute("title", "Visualization Query Error");
-
- try {
- requestDispatcher.forward(request, response);
- } catch (Exception e) {
- log.error("EntityEditController could not forward to view.");
- log.error(e.getMessage());
- log.error(e.getStackTrace());
- }
- }
-
-}
-
diff --git a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationFrameworkConstants.java b/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationFrameworkConstants.java
deleted file mode 100644
index 22418b1d..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationFrameworkConstants.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-
-package edu.cornell.mannlib.vitro.webapp.controller.visualization;
-
-public class VisualizationFrameworkConstants {
-
- /*
- * Contains the location of bean containing info on all the visualizations
- * available in that instance. Currently it is stored under
- * "productMods/WEB-INF..."
- */
- public static final String RELATIVE_LOCATION_OF_VISUALIZATIONS_BEAN =
- "/WEB-INF/visualization/visualizations-beans-injection.xml";
-
- /*
- * Freemarker Version
- * */
- public static final String RELATIVE_LOCATION_OF_FM_VISUALIZATIONS_BEAN =
- "/WEB-INF/visualization/visualizations-beans-injection-fm.xml";
-
- public static final String ERROR_TEMPLATE = "/visualization/visualizationError.ftl";
-
- /*
- * Vis URL prefix that is seen by all the users
- */
- public static final String VISUALIZATION_URL_PREFIX = "/visualization";
- public static final String FREEMARKERIZED_VISUALIZATION_URL_PREFIX = "/visualizationfm";
- public static final String AJAX_VISUALIZATION_SERVICE_URL_PREFIX = "/visualizationAjax";
- public static final String DATA_VISUALIZATION_SERVICE_URL_PREFIX = "/visualizationData";
-
- public static final String INDIVIDUAL_URL_PREFIX = "/individual";
-
- /*
- * These represent possible query keys in a URI for visualization purposes.
- * Examples,
- * 1. http://vivo.indiana.edu/visualization?uri=http://vivoweb.org/ontology/core/Person10979&vis=person_level&render_mode=standalone
- * 2. http://vivo.indiana.edu/visualization?uri=http://vivoweb.org/ontology/core/Person72&vis=person_pub_count&render_mode=dynamic&container=vis_container
- * */
- public static final String VIS_TYPE_KEY = "vis";
- public static final String VIS_CONTAINER_KEY = "container";
- public static final String INDIVIDUAL_URI_KEY = "uri";
- public static final String VIS_MODE_KEY = "vis_mode";
- public static final String RENDER_MODE_KEY = "render_mode";
-
- /*
- * These values represent possible render modes.
- * */
- public static final String STANDALONE_RENDER_MODE = "standalone";
- public static final String DYNAMIC_RENDER_MODE = "dynamic";
- public static final String DATA_RENDER_MODE = "data";
- public static final String PDF_RENDER_MODE = "pdf";
-
- /*
- * These values represent possible sub-vis modes.
- * */
- public static final String IMAGE_VIS_MODE = "image";
- public static final String SPARKLINE_VIS_MODE = "sparkline";
- public static final String COAUTHORSLIST_VIS_MODE = "coauthors";
- public static final String SHORT_SPARKLINE_VIS_MODE = "short";
- public static final String FULL_SPARKLINE_VIS_MODE = "full";
- public static final String COPI_VIS_MODE = "copi";
-
- /*
- * These values represent possible utilities vis modes.
- * */
- public static final String PROFILE_INFO_UTILS_VIS_MODE = "PROFILE_INFO";
- public static final String PROFILE_UTILS_VIS_MODE = "PROFILE_URL";
- public static final String COAUTHOR_UTILS_VIS_MODE = "COAUTHORSHIP_URL";
- public static final String PERSON_LEVEL_UTILS_VIS_MODE = "PERSON_LEVEL_URL";
- public static final String COPI_UTILS_VIS_MODE = "COPI_URL";
- public static final String IMAGE_UTILS_VIS_MODE = "IMAGE_URL";
- public static final String UNIVERSITY_COMPARISON_VIS_MODE = "UNIVERSITY";
- public static final String SCHOOL_COMPARISON_VIS_MODE = "SCHOOL";
- public static final String DEPARTMENT_COMPARISON_VIS_MODE = "DEPARTMENT";
-
-
- /*
- * These values represent possible visualizations provided as values to the "vis" url key.
- * */
- public static final String PERSON_PUBLICATION_COUNT_VIS = "person_pub_count";
- public static final String PERSON_GRANT_COUNT_VIS = "person_grant_count";
- public static final String PDF_REPORT_VIS = "pdf_report";
- public static final String COLLEGE_PUBLICATION_COUNT_VIS = "college_pub_count";
- public static final String COAUTHORSHIP_VIS = "coauthorship";
- public static final String PERSON_LEVEL_VIS = "person_level";
- public static final String UTILITIES_VIS = "utilities";
- public static final String ENTITY_COMPARISON_VIS = "entity_comparison";
- public static final String CO_PI_VIS = "coprincipalinvestigator";
-
-
-}
diff --git a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationInjector.java b/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationInjector.java
deleted file mode 100644
index b9ecc8bd..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/controller/visualization/VisualizationInjector.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-package edu.cornell.mannlib.vitro.webapp.controller.visualization;
-
-import java.util.Map;
-
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.VisualizationRequestHandler;
-
-public class VisualizationInjector {
- private Map visualizationIDToClass;
-
- public Map getVisualizationIDToClass() {
- return visualizationIDToClass;
- }
-
- public void setVisualizations(Map visualizationIDToClass) {
- this.visualizationIDToClass = visualizationIDToClass;
- }
-
-}
diff --git a/src/edu/cornell/mannlib/vitro/webapp/visualization/entitygrantcount/EntityGrantCountQueryRunner.java b/src/edu/cornell/mannlib/vitro/webapp/visualization/entitygrantcount/EntityGrantCountQueryRunner.java
deleted file mode 100644
index 2f6d9169..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/visualization/entitygrantcount/EntityGrantCountQueryRunner.java
+++ /dev/null
@@ -1,7 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-
-package edu.cornell.mannlib.vitro.webapp.visualization.entitygrantcount;
-
-public class EntityGrantCountQueryRunner {
-
-}
diff --git a/src/edu/cornell/mannlib/vitro/webapp/visualization/freemarker/personpubcount/PersonPublicationCountRequestHandler.java b/src/edu/cornell/mannlib/vitro/webapp/visualization/freemarker/personpubcount/PersonPublicationCountRequestHandler.java
index f89f5e71..d89024b5 100644
--- a/src/edu/cornell/mannlib/vitro/webapp/visualization/freemarker/personpubcount/PersonPublicationCountRequestHandler.java
+++ b/src/edu/cornell/mannlib/vitro/webapp/visualization/freemarker/personpubcount/PersonPublicationCountRequestHandler.java
@@ -33,7 +33,7 @@ import edu.cornell.mannlib.vitro.webapp.visualization.freemarker.valueobjects.In
import edu.cornell.mannlib.vitro.webapp.visualization.freemarker.valueobjects.SparklineData;
import edu.cornell.mannlib.vitro.webapp.visualization.freemarker.visutils.UtilityFunctions;
import edu.cornell.mannlib.vitro.webapp.visualization.freemarker.visutils.VisualizationRequestHandler;
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.PDFDocument;
+import edu.cornell.mannlib.vitro.webapp.visualization.freemarker.visutils.PDFDocument;
import edu.cornell.mannlib.vitro.webapp.visualization.freemarker.visutils.QueryRunner;
/**
diff --git a/src/edu/cornell/mannlib/vitro/webapp/visualization/utilities/UtilitiesRequestHandler.java b/src/edu/cornell/mannlib/vitro/webapp/visualization/utilities/UtilitiesRequestHandler.java
deleted file mode 100644
index 5f169db2..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/visualization/utilities/UtilitiesRequestHandler.java
+++ /dev/null
@@ -1,305 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-
-package edu.cornell.mannlib.vitro.webapp.visualization.utilities;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.logging.Log;
-
-import com.google.gson.Gson;
-import com.hp.hpl.jena.query.DataSource;
-import com.hp.hpl.jena.query.QuerySolution;
-import com.hp.hpl.jena.query.ResultSet;
-import com.hp.hpl.jena.rdf.model.RDFNode;
-
-import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
-import edu.cornell.mannlib.vitro.webapp.controller.visualization.VisualizationController;
-import edu.cornell.mannlib.vitro.webapp.controller.visualization.VisualizationFrameworkConstants;
-import edu.cornell.mannlib.vitro.webapp.filestorage.FileServingHelper;
-import edu.cornell.mannlib.vitro.webapp.visualization.constants.QueryFieldLabels;
-import edu.cornell.mannlib.vitro.webapp.visualization.exceptions.MalformedQueryParametersException;
-import edu.cornell.mannlib.vitro.webapp.visualization.valueobjects.GenericQueryMap;
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.AllPropertiesQueryRunner;
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.GenericQueryRunner;
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.QueryRunner;
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.UtilityFunctions;
-import edu.cornell.mannlib.vitro.webapp.visualization.visutils.VisualizationRequestHandler;
-
-/**
- * This request handler is used when you need helpful information to add more context
- * to the visualization. It does not have any code for generating the visualization,
- * just fires sparql queries to get info for specific cases like,
- * 1. thumbnail/image location for a particular individual
- * 2. profile information for a particular individual like label, moniker etc
- * 3. person level vis url for a particular individual
- * etc.
- * @author cdtank
- */
-public class UtilitiesRequestHandler implements VisualizationRequestHandler {
-
- public void generateVisualization(VitroRequest vitroRequest,
- HttpServletRequest request,
- HttpServletResponse response,
- Log log,
- DataSource dataSource) {
-
- String individualURI = vitroRequest.getParameter(
- VisualizationFrameworkConstants.INDIVIDUAL_URI_KEY);
-
- String visMode = vitroRequest.getParameter(
- VisualizationFrameworkConstants.VIS_MODE_KEY);
-
- String preparedURL = "";
-
- try {
-
- /*
- * If the info being requested is about a profile which includes the name, moniker
- * & image url.
- * */
- if (VisualizationFrameworkConstants.PROFILE_INFO_UTILS_VIS_MODE
- .equalsIgnoreCase(visMode)) {
-
-
- String filterRule = "?predicate = j.2:mainImage "
- + "|| ?predicate = vitro:moniker "
- + "|| ?predicate = rdfs:label";
-
- QueryRunner profileQueryHandler =
- new AllPropertiesQueryRunner(individualURI,
- filterRule,
- dataSource,
- log);
-
- try {
-
- GenericQueryMap profilePropertiesToValues =
- profileQueryHandler.getQueryResult();
-
- profilePropertiesToValues.addEntry("imageContextPath",
- request.getContextPath());
-
- Gson profileInformation = new Gson();
-
- prepareUtilitiesResponse(
- profileInformation.toJson(profilePropertiesToValues),
- response);
-
- return;
-
-
- } catch (MalformedQueryParametersException e) {
- try {
- UtilityFunctions.handleMalformedParameters(
- e.getMessage(),
- "Visualization Query Error - Utilities Profile Info",
- vitroRequest,
- request,
- response,
- log);
- } catch (ServletException e1) {
- log.error(e1.getStackTrace());
- } catch (IOException e1) {
- log.error(e1.getStackTrace());
- }
- return;
- }
- } else if (VisualizationFrameworkConstants.IMAGE_UTILS_VIS_MODE
- .equalsIgnoreCase(visMode)) {
- /*
- * If the url being requested is about a standalone image, which is used when we
- * want to render an image & other info for a co-author OR ego for that matter.
- * */
-
- Map fieldLabelToOutputFieldLabel = new HashMap();
- fieldLabelToOutputFieldLabel.put("downloadLocation",
- QueryFieldLabels.THUMBNAIL_LOCATION_URL);
- fieldLabelToOutputFieldLabel.put("fileName", QueryFieldLabels.THUMBNAIL_FILENAME);
-
- String whereClause = "<" + individualURI
- + "> j.2:thumbnailImage ?thumbnailImage . "
- + "?thumbnailImage j.2:downloadLocation "
- + "?downloadLocation ; j.2:filename ?fileName .";
-
-
-
- QueryRunner imageQueryHandler =
- new GenericQueryRunner(individualURI,
- fieldLabelToOutputFieldLabel,
- whereClause,
- dataSource,
- log);
-
- try {
-
- String thumbnailAccessURL =
- getThumbnailInformation(
- imageQueryHandler.getQueryResult(),
- fieldLabelToOutputFieldLabel);
-
- prepareUtilitiesResponse(thumbnailAccessURL, response);
- return;
-
-
- } catch (MalformedQueryParametersException e) {
- try {
- UtilityFunctions.handleMalformedParameters(
- e.getMessage(),
- "Visualization Query Error - Utilities Image Info",
- vitroRequest,
- request,
- response,
- log);
- } catch (ServletException e1) {
- log.error(e1.getStackTrace());
- } catch (IOException e1) {
- log.error(e1.getStackTrace());
- }
- return;
- }
- } else if (VisualizationFrameworkConstants.COAUTHOR_UTILS_VIS_MODE
- .equalsIgnoreCase(visMode)) {
-
- /*
- * By default we will be generating profile url else some specific url like
- * coAuthorShip vis url for that individual.
- * */
- preparedURL += request.getContextPath()
- + VisualizationFrameworkConstants.VISUALIZATION_URL_PREFIX
- + "?"
- + VisualizationFrameworkConstants.INDIVIDUAL_URI_KEY
- + "=" + URLEncoder.encode(individualURI,
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.VIS_TYPE_KEY
- + "=" + URLEncoder.encode("coauthorship",
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.RENDER_MODE_KEY
- + "=" + URLEncoder.encode(VisualizationFrameworkConstants
- .STANDALONE_RENDER_MODE,
- VisualizationController.URL_ENCODING_SCHEME)
- .toString();
-
-
- prepareUtilitiesResponse(preparedURL, response);
- return;
- } else if (VisualizationFrameworkConstants.PERSON_LEVEL_UTILS_VIS_MODE
- .equalsIgnoreCase(visMode)) {
- /*
- * By default we will be generating profile url else some specific url like
- * coAuthorShip vis url for that individual.
- * */
- preparedURL += request.getContextPath()
- + VisualizationFrameworkConstants.VISUALIZATION_URL_PREFIX
- + "?"
- + VisualizationFrameworkConstants.INDIVIDUAL_URI_KEY
- + "=" + URLEncoder.encode(individualURI,
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.VIS_TYPE_KEY
- + "=" + URLEncoder.encode("person_level",
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.RENDER_MODE_KEY
- + "=" + URLEncoder.encode(VisualizationFrameworkConstants
- .STANDALONE_RENDER_MODE,
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.VIS_MODE_KEY
- + "=" + URLEncoder.encode("coauthorship",
- VisualizationController.URL_ENCODING_SCHEME).toString();
-
- prepareUtilitiesResponse(preparedURL, response);
- return;
- } else if (VisualizationFrameworkConstants.COPI_UTILS_VIS_MODE
- .equalsIgnoreCase(visMode)) {
-
- preparedURL += request.getContextPath()
- + VisualizationFrameworkConstants.VISUALIZATION_URL_PREFIX
- + "?"
- + VisualizationFrameworkConstants.INDIVIDUAL_URI_KEY
- + "=" + URLEncoder.encode(individualURI,
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.VIS_TYPE_KEY
- + "=" + URLEncoder.encode("person_level",
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.RENDER_MODE_KEY
- + "=" + URLEncoder.encode(VisualizationFrameworkConstants
- .STANDALONE_RENDER_MODE,
- VisualizationController.URL_ENCODING_SCHEME).toString()
- + "&"
- + VisualizationFrameworkConstants.VIS_MODE_KEY
- + "=" + URLEncoder.encode("copi",
- VisualizationController.URL_ENCODING_SCHEME).toString();
-
- prepareUtilitiesResponse(preparedURL, response);
- return;
- } else {
-
- preparedURL += request.getContextPath()
- + VisualizationFrameworkConstants.INDIVIDUAL_URL_PREFIX
- + "?"
- + VisualizationFrameworkConstants.INDIVIDUAL_URI_KEY
- + "=" + URLEncoder.encode(individualURI,
- VisualizationController.URL_ENCODING_SCHEME).toString();
-
- prepareUtilitiesResponse(preparedURL, response);
- return;
- }
- } catch (UnsupportedEncodingException e) {
- log.error(e.getLocalizedMessage());
- }
-
- }
-
- private String getThumbnailInformation(ResultSet resultSet,
- Map fieldLabelToOutputFieldLabel) {
-
- String finalThumbNailLocation = "";
-
- while (resultSet.hasNext()) {
- QuerySolution solution = resultSet.nextSolution();
-
-
- RDFNode downloadLocationNode = solution.get(
- fieldLabelToOutputFieldLabel
- .get("downloadLocation"));
- RDFNode fileNameNode = solution.get(fieldLabelToOutputFieldLabel.get("fileName"));
-
- if (downloadLocationNode != null && fileNameNode != null) {
- finalThumbNailLocation =
- FileServingHelper
- .getBytestreamAliasUrl(downloadLocationNode.toString(),
- fileNameNode.toString());
- }
- }
- return finalThumbNailLocation;
- }
-
- private void prepareUtilitiesResponse(String preparedURL,
- HttpServletResponse response) {
-
- response.setContentType("text/plain");
-
- try {
- PrintWriter responseWriter = response.getWriter();
- responseWriter.append(preparedURL);
- responseWriter.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-}
-
diff --git a/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/BiboDocument.java b/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/BiboDocument.java
deleted file mode 100644
index 759e76a5..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/BiboDocument.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-
-package edu.cornell.mannlib.vitro.webapp.visualization.valueobjects;
-
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import edu.cornell.mannlib.vitro.webapp.visualization.constants.VOConstants;
-
-/**
- * @author cdtank
- *
- */
-public class BiboDocument extends Individual {
-
- private String documentMoniker;
- private String documentBlurb;
- private String documentDescription;
- private String publicationYear;
- private String publicationYearMonth;
- private String publicationDate;
- private String parsedPublicationYear = VOConstants.DEFAULT_PUBLICATION_YEAR;
-
- public BiboDocument(String documentURL) {
- super(documentURL);
- }
-
- public String getDocumentURL() {
- return this.getIndividualURI();
- }
-
- public String getDocumentMoniker() {
- return documentMoniker;
- }
-
- public void setDocumentMoniker(String documentMoniker) {
- this.documentMoniker = documentMoniker;
- }
-
- public String getDocumentLabel() {
- return this.getIndividualLabel();
- }
-
- public void setDocumentLabel(String documentLabel) {
- this.setIndividualLabel(documentLabel);
- }
-
- public String getDocumentBlurb() {
- return documentBlurb;
- }
-
- public void setDocumentBlurb(String documentBlurb) {
- this.documentBlurb = documentBlurb;
-
-// if (documentBlurb != null) {
-// this.setParsedPublicationYear(parsePublicationYear(documentBlurb));
-// }
- }
-
- private String parsePublicationYear(String documentBlurb) {
-
- /*
- * This pattern will match all group of numbers which have only 4 digits
- * delimited by the word boundary.
- * */
- String pattern = "(?= VOConstants.MINIMUM_PUBLICATION_YEAR) {
- publishedYear = candidateYearInteger.toString();
- }
-
- }
-
- return publishedYear;
- }
-
- public String getDocumentDescription() {
- return documentDescription;
- }
- public void setDocumentDescription(String documentDescription) {
- this.documentDescription = documentDescription;
- }
-
- /**
- * This method will be called when there is no usable core:year value found
- * for the bibo:Document. It will first check & parse core:yearMonth failing
- * which it will try core:date
- * @return
- */
- public String getParsedPublicationYear() {
-
- /*
- * We are assuming that core:yearMonth has "YYYY-MM" format. This is based
- * off of http://www.w3.org/TR/xmlschema-2/#gYearMonth , which is what
- * core:yearMonth points to internally.
- * */
- if (publicationYearMonth != null
- && publicationYearMonth.length() >= VOConstants.NUM_CHARS_IN_YEAR_FORMAT
- && isValidPublicationYear(publicationYearMonth.substring(
- 0,
- VOConstants.NUM_CHARS_IN_YEAR_FORMAT))) {
-
- return publicationYearMonth.substring(0, VOConstants.NUM_CHARS_IN_YEAR_FORMAT);
-
- }
-
- if (publicationDate != null
- && publicationDate.length() >= VOConstants.NUM_CHARS_IN_YEAR_FORMAT
- && isValidPublicationYear(publicationDate
- .substring(0,
- VOConstants.NUM_CHARS_IN_YEAR_FORMAT))) {
-
- return publicationDate.substring(0, VOConstants.NUM_CHARS_IN_YEAR_FORMAT);
- }
-
- /*
- * If all else fails return default unknown year identifier
- * */
- return VOConstants.DEFAULT_PUBLICATION_YEAR;
- }
-
- /*
- * This publicationYear value is directly from the data supported by the ontology.
- * If this is empty only then use the parsedPublicationYear.
- * */
- public String getPublicationYear() {
- if (publicationYear != null && isValidPublicationYear(publicationYear)) {
- return publicationYear;
- } else {
- return null;
- }
-
- }
-
- public void setPublicationYear(String publicationYear) {
- this.publicationYear = publicationYear;
- }
-
- public String getPublicationYearMonth() {
- return publicationYearMonth;
- }
-
- public void setPublicationYearMonth(String publicationYearMonth) {
- this.publicationYearMonth = publicationYearMonth;
- }
-
- public String getPublicationDate() {
- return publicationDate;
- }
-
- public void setPublicationDate(String publicationDate) {
- this.publicationDate = publicationDate;
- }
-
- private boolean isValidPublicationYear(String testPublicationYear) {
-
- if (testPublicationYear.length() != 0
- && testPublicationYear.trim().length() == VOConstants.NUM_CHARS_IN_YEAR_FORMAT
- && testPublicationYear.matches("\\d+")
- && Integer.parseInt(testPublicationYear) >= VOConstants.MINIMUM_PUBLICATION_YEAR) {
- return true;
- }
-
- return false;
- }
-
-}
diff --git a/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/Child.java b/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/Child.java
deleted file mode 100644
index b7870aca..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/Child.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-package edu.cornell.mannlib.vitro.webapp.visualization.valueobjects;
-
-import java.util.Set;
-import java.util.HashSet;
-/**
- * @author bkoniden
- * Deepak Konidena
- *
- */
-public class Child extends Individual {
-
- Set documents = new HashSet();
-
- public Child(String individualURI) {
- super(individualURI);
- }
-
- public Set getDocuments() {
- return documents;
- }
-
- public Child(String individualURI, String individualLabel) {
- super(individualURI, individualLabel);
- }
-
- @Override
- public boolean equals(Object other){
- boolean result = false;
- if (other instanceof Child){
- Child person = (Child) other;
- result = (this.getIndividualLabel().equals(person.getIndividualLabel())
- && this.getIndividualURI().equals(person.getIndividualURI()));
- }
- return result;
- }
-
- @Override
- public int hashCode(){
- return(41*(getIndividualLabel().hashCode() + 41*(getIndividualURI().hashCode())));
- }
-}
diff --git a/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/CoAuthorshipData.java b/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/CoAuthorshipData.java
deleted file mode 100644
index 4bc11dc5..00000000
--- a/src/edu/cornell/mannlib/vitro/webapp/visualization/valueobjects/CoAuthorshipData.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/* $This file is distributed under the terms of the license in /doc/license.txt$ */
-
-package edu.cornell.mannlib.vitro.webapp.visualization.valueobjects;
-
-import java.util.HashSet;
-import java.util.LinkedHashMap;
-import java.util.Map;
-import java.util.Set;
-
-public class CoAuthorshipData {
-
- private Set nodes;
- private Set edges;
- private Node egoNode;
- private Set