1. Created a draft person level vis (integration of sparkline & co-authorship vis)
2. Modified the person pub count to use a single VO to give access to jsp to various contents of sparkline. 3. Modified test bed to include link to Person Level vis.
This commit is contained in:
parent
0e8e1dc9e2
commit
64ff99a222
7 changed files with 86 additions and 72 deletions
|
@ -2,6 +2,8 @@ package edu.cornell.mannlib.vitro.webapp.visualization.personlevel;
|
|||
|
||||
import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletException;
|
||||
|
@ -21,6 +23,8 @@ import edu.cornell.mannlib.vitro.webapp.visualization.coauthorship.CoAuthorshipG
|
|||
import edu.cornell.mannlib.vitro.webapp.visualization.coauthorship.QueryHandler;
|
||||
import edu.cornell.mannlib.vitro.webapp.visualization.coauthorship.VisVOContainer;
|
||||
import edu.cornell.mannlib.vitro.webapp.visualization.exceptions.MalformedQueryParametersException;
|
||||
import edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.VisualizationCodeGenerator;
|
||||
import edu.cornell.mannlib.vitro.webapp.visualization.valueobjects.BiboDocument;
|
||||
import edu.cornell.mannlib.vitro.webapp.visualization.visutils.UtilityFunctions;
|
||||
|
||||
public class VisualizationRequestHandler {
|
||||
|
@ -53,18 +57,25 @@ public class VisualizationRequestHandler {
|
|||
|
||||
String visContainer = vitroRequest.getParameter(VisualizationFrameworkConstants.VIS_CONTAINER_URL_HANDLE);
|
||||
|
||||
QueryHandler queryManager =
|
||||
new QueryHandler(egoURIParam,
|
||||
edu.cornell.mannlib.vitro.webapp.visualization.coauthorship.QueryHandler coAuthorshipQueryManager =
|
||||
new edu.cornell.mannlib.vitro.webapp.visualization.coauthorship.QueryHandler(egoURIParam,
|
||||
resultFormatParam,
|
||||
rdfResultFormatParam,
|
||||
dataSource,
|
||||
|
||||
log);
|
||||
|
||||
edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.QueryHandler sparklineQueryManager =
|
||||
new edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.QueryHandler(egoURIParam,
|
||||
resultFormatParam,
|
||||
rdfResultFormatParam,
|
||||
dataSource,
|
||||
log);
|
||||
|
||||
try {
|
||||
|
||||
VisVOContainer authorNodesAndEdges = queryManager.getVisualizationJavaValueObjects();
|
||||
|
||||
edu.cornell.mannlib.vitro.webapp.visualization.coauthorship.VisVOContainer coAuthorshipVO =
|
||||
coAuthorshipQueryManager.getVisualizationJavaValueObjects();
|
||||
|
||||
/*
|
||||
* In order to avoid unneeded computations we have pushed this "if" condition up.
|
||||
* This case arises when the render mode is data. In that case we dont want to generate
|
||||
|
@ -77,49 +88,46 @@ public class VisualizationRequestHandler {
|
|||
* When just the graphML file is required - based on which actual visualization will
|
||||
* be rendered.
|
||||
* */
|
||||
prepareVisualizationQueryDataResponse(authorNodesAndEdges);
|
||||
prepareVisualizationQueryDataResponse(coAuthorshipVO);
|
||||
return;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
List<BiboDocument> authorDocuments = sparklineQueryManager.getVisualizationJavaValueObjects();
|
||||
|
||||
/*
|
||||
* Create a map from the year to number of publications. Use the BiboDocument's
|
||||
* parsedPublicationYear to populate the data.
|
||||
* */
|
||||
Map<String, Integer> yearToPublicationCount = sparklineQueryManager
|
||||
.getYearToPublicationCount(authorDocuments);
|
||||
|
||||
|
||||
/*
|
||||
* Computations required to generate HTML for the sparklines & related context.
|
||||
* */
|
||||
|
||||
/*
|
||||
* This is required because when deciding the range of years over which the vis
|
||||
* was rendered we dont want to be influenced by the "DEFAULT_PUBLICATION_YEAR".
|
||||
* */
|
||||
// publishedYearsForCollege.remove(VOConstants.DEFAULT_PUBLICATION_YEAR);
|
||||
edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.VisVOContainer sparklineVO =
|
||||
new edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.VisVOContainer();
|
||||
|
||||
/*
|
||||
VisualizationCodeGenerator visualizationCodeGenerator =
|
||||
new VisualizationCodeGenerator(yearToPublicationCount, log);
|
||||
|
||||
String visContentCode = visualizationCodeGenerator
|
||||
.getMainVisualizationCode(authorDocuments,
|
||||
publishedYears,
|
||||
visMode,
|
||||
visContainer);
|
||||
|
||||
String visContextCode = visualizationCodeGenerator
|
||||
.getVisualizationContextCode(vitroRequest.getRequestURI(),
|
||||
collegeURIParam,
|
||||
visMode);
|
||||
*/
|
||||
|
||||
/*
|
||||
* This is side-effecting because the response of this method is just to redirect to
|
||||
* a page with visualization on it.
|
||||
* */
|
||||
edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.VisualizationCodeGenerator visualizationCodeGenerator =
|
||||
new edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.VisualizationCodeGenerator(
|
||||
vitroRequest.getRequestURI(),
|
||||
egoURIParam,
|
||||
VisualizationCodeGenerator.FULL_SPARKLINE_MODE_URL_HANDLE,
|
||||
visContainer,
|
||||
authorDocuments,
|
||||
yearToPublicationCount,
|
||||
sparklineVO,
|
||||
log);
|
||||
|
||||
|
||||
RequestDispatcher requestDispatcher = null;
|
||||
|
||||
prepareVisualizationQueryStandaloneResponse(egoURIParam, request, response, vitroRequest);
|
||||
prepareVisualizationQueryStandaloneResponse(egoURIParam, sparklineVO, request, response, vitroRequest);
|
||||
|
||||
// requestDispatcher = request.getRequestDispatcher(Controllers.BASIC_JSP);
|
||||
requestDispatcher = request.getRequestDispatcher("/templates/page/blankPage.jsp");
|
||||
requestDispatcher = request.getRequestDispatcher("/templates/page/blankPage.jsp");
|
||||
|
||||
try {
|
||||
requestDispatcher.forward(request, response);
|
||||
|
@ -170,10 +178,12 @@ public class VisualizationRequestHandler {
|
|||
}
|
||||
}
|
||||
|
||||
private void prepareVisualizationQueryStandaloneResponse(String egoURIParam,
|
||||
HttpServletRequest request,
|
||||
HttpServletResponse response,
|
||||
VitroRequest vreq) {
|
||||
private void prepareVisualizationQueryStandaloneResponse(
|
||||
String egoURIParam,
|
||||
edu.cornell.mannlib.vitro.webapp.visualization.personpubcount.VisVOContainer sparklineVO,
|
||||
HttpServletRequest request,
|
||||
HttpServletResponse response,
|
||||
VitroRequest vreq) {
|
||||
|
||||
Portal portal = vreq.getPortal();
|
||||
|
||||
|
@ -181,6 +191,7 @@ public class VisualizationRequestHandler {
|
|||
// request.setAttribute("visContextCode", visContextCode);
|
||||
|
||||
request.setAttribute("egoURIParam", egoURIParam);
|
||||
request.setAttribute("sparklineVO", sparklineVO);
|
||||
|
||||
request.setAttribute("bodyJsp", "/templates/visualization/person_level.jsp");
|
||||
request.setAttribute("portalBean", portal);
|
||||
|
|
|
@ -33,9 +33,9 @@ public class VisualizationCodeGenerator {
|
|||
|
||||
private static final String defaultVisContainerDivID = "vis_container";
|
||||
|
||||
private static final String SHORT_SPARKLINE_MODE_URL_HANDLE = "short";
|
||||
public static final String SHORT_SPARKLINE_MODE_URL_HANDLE = "short";
|
||||
|
||||
private static final String FULL_SPARKLINE_MODE_URL_HANDLE = "full";
|
||||
public static final String FULL_SPARKLINE_MODE_URL_HANDLE = "full";
|
||||
|
||||
private Map<String, Integer> yearToPublicationCount;
|
||||
|
||||
|
|
|
@ -123,10 +123,6 @@ public class VisualizationRequestHandler {
|
|||
log);
|
||||
|
||||
|
||||
String visContentCode = valueObjectContainer.getSparklineContent();
|
||||
|
||||
String visContextCode = valueObjectContainer.getSparklineContext();
|
||||
|
||||
System.out.println("ft url - " + valueObjectContainer.getFullTimelineNetworkLink());
|
||||
System.out.println("dnld fl - " + valueObjectContainer.getDownloadDataLink());
|
||||
System.out.println("table - " + valueObjectContainer.getTable());
|
||||
|
@ -143,12 +139,12 @@ public class VisualizationRequestHandler {
|
|||
if (VisualizationFrameworkConstants.DYNAMIC_RENDER_MODE_URL_VALUE.equalsIgnoreCase(renderMode)) {
|
||||
|
||||
prepareVisualizationQueryDynamicResponse(request, response, vitroRequest,
|
||||
visContentCode, visContextCode);
|
||||
valueObjectContainer);
|
||||
requestDispatcher = request.getRequestDispatcher("/templates/page/blankPage.jsp");
|
||||
|
||||
} else {
|
||||
prepareVisualizationQueryStandaloneResponse(request, response, vitroRequest,
|
||||
visContentCode, visContextCode, valueObjectContainer);
|
||||
valueObjectContainer);
|
||||
|
||||
requestDispatcher = request.getRequestDispatcher(Controllers.BASIC_JSP);
|
||||
}
|
||||
|
@ -294,12 +290,10 @@ public class VisualizationRequestHandler {
|
|||
|
||||
private void prepareVisualizationQueryStandaloneResponse(HttpServletRequest request,
|
||||
HttpServletResponse response, VitroRequest vreq,
|
||||
String visContentCode, String visContextCode, VisVOContainer valueObjectContainer) {
|
||||
VisVOContainer valueObjectContainer) {
|
||||
|
||||
Portal portal = vreq.getPortal();
|
||||
|
||||
request.setAttribute("visContentCode", visContentCode);
|
||||
request.setAttribute("visContextCode", visContextCode);
|
||||
request.setAttribute("sparklineVO", valueObjectContainer);
|
||||
|
||||
request.setAttribute("bodyJsp", "/templates/visualization/publication_count.jsp");
|
||||
|
@ -310,13 +304,11 @@ public class VisualizationRequestHandler {
|
|||
}
|
||||
|
||||
private void prepareVisualizationQueryDynamicResponse(HttpServletRequest request,
|
||||
HttpServletResponse response, VitroRequest vreq,
|
||||
String visContentCode, String visContextCode) {
|
||||
HttpServletResponse response, VitroRequest vreq, VisVOContainer valueObjectContainer) {
|
||||
|
||||
Portal portal = vreq.getPortal();
|
||||
|
||||
request.setAttribute("visContentCode", visContentCode);
|
||||
request.setAttribute("visContextCode", visContextCode);
|
||||
request.setAttribute("sparklineVO", valueObjectContainer);
|
||||
|
||||
request.setAttribute("portalBean", portal);
|
||||
request.setAttribute("bodyJsp", "/templates/visualization/ajax_vis_content.jsp");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue