[VIVO-1245] Split out Template Model builders to avoid initialisation order issue
This commit is contained in:
parent
46ca84d519
commit
4a5a988eeb
5 changed files with 26 additions and 21 deletions
|
@ -33,15 +33,6 @@ public class VIVOIndividualTemplateModel extends IndividualTemplateModel {
|
|||
super(individual, vreq);
|
||||
}
|
||||
|
||||
public static void setAsDefault() {
|
||||
IndividualTemplateModelBuilder.setCustomBuilder(new IndividualTemplateModelBuilder.IIndividualTemplateModelBuilder() {
|
||||
@Override
|
||||
public VIVOIndividualTemplateModel build(Individual individual, VitroRequest vreq) {
|
||||
return new VIVOIndividualTemplateModel(individual, vreq);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private String getVisUrl(String visPath) {
|
||||
String visUrl;
|
||||
boolean isUsingDefaultNameSpace = UrlBuilder.isUriInDefaultNamespace(
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
package edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||
|
||||
public class VIVOIndividualTemplateModelBuilder implements IndividualTemplateModelBuilder.IIndividualTemplateModelBuilder {
|
||||
@Override
|
||||
public VIVOIndividualTemplateModel build(Individual individual, VitroRequest vreq) {
|
||||
return new VIVOIndividualTemplateModel(individual, vreq);
|
||||
}
|
||||
}
|
|
@ -33,16 +33,6 @@ public class VIVOListedIndividual extends ListedIndividual {
|
|||
title = findPreferredTitle();
|
||||
}
|
||||
|
||||
public static void setAsDefault() {
|
||||
ListedIndividualBuilder.setCustomBuilder(new ListedIndividualBuilder.ILIstedIndividualBuilder() {
|
||||
@Override
|
||||
public ListedIndividual build(Individual individual, VitroRequest vreq) {
|
||||
return new VIVOListedIndividual(individual, vreq);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private String findPreferredTitle() {
|
||||
String queryStr = QueryUtils.subUriForQueryVar(VCARD_DATA_QUERY, "subject", individual.getURI());
|
||||
log.debug("queryStr = " + queryStr);
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
package edu.cornell.mannlib.vitro.webapp.web.templatemodels.individuallist;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||
|
||||
public class VIVOListedIndividualBuilder implements ListedIndividualBuilder.ILIstedIndividualBuilder {
|
||||
@Override
|
||||
public ListedIndividual build(Individual individual, VitroRequest vreq) {
|
||||
return new VIVOListedIndividual(individual, vreq);
|
||||
}
|
||||
}
|
|
@ -4,9 +4,11 @@ import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
|||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||
import edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.VIVOIndividualTemplateModel;
|
||||
import edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.IndividualTemplateModelBuilder;
|
||||
import edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.VIVOIndividualTemplateModelBuilder;
|
||||
import edu.cornell.mannlib.vitro.webapp.web.templatemodels.individuallist.ListedIndividual;
|
||||
import edu.cornell.mannlib.vitro.webapp.web.templatemodels.individuallist.ListedIndividualBuilder;
|
||||
import edu.cornell.mannlib.vitro.webapp.web.templatemodels.individuallist.VIVOListedIndividual;
|
||||
import edu.cornell.mannlib.vitro.webapp.web.templatemodels.individuallist.VIVOListedIndividualBuilder;
|
||||
|
||||
import javax.servlet.ServletContextEvent;
|
||||
import javax.servlet.ServletContextListener;
|
||||
|
@ -14,8 +16,8 @@ import javax.servlet.ServletContextListener;
|
|||
public class TemplateModelSetup implements ServletContextListener {
|
||||
@Override
|
||||
public void contextInitialized(ServletContextEvent servletContextEvent) {
|
||||
VIVOIndividualTemplateModel.setAsDefault();
|
||||
VIVOListedIndividual.setAsDefault();
|
||||
IndividualTemplateModelBuilder.setCustomBuilder(new VIVOIndividualTemplateModelBuilder());
|
||||
ListedIndividualBuilder.setCustomBuilder(new VIVOListedIndividualBuilder());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Add table
Reference in a new issue