diff --git a/productMods/WEB-INF/resources/startup_listeners.txt b/productMods/WEB-INF/resources/startup_listeners.txt index db43cc7e..9514f2bf 100644 --- a/productMods/WEB-INF/resources/startup_listeners.txt +++ b/productMods/WEB-INF/resources/startup_listeners.txt @@ -63,9 +63,6 @@ edu.ucsf.vitro.opensocial.OpenSocialSmokeTests # For multiple language support edu.cornell.mannlib.vitro.webapp.i18n.selection.LocaleSelectionSetup -# Add VIVO specific DocumentModifers, this must come before SearchIndexerSetup -edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VivoDocumentModifiers - # The search indexer uses a "public" permission, so the PropertyRestrictionPolicyHelper # and the PermissionRegistry must already be set up. edu.cornell.mannlib.vitro.webapp.searchindex.SearchIndexerSetup diff --git a/rdf/display/everytime/VivoSearchIndexerConfiguration.n3 b/rdf/display/everytime/VivoSearchIndexerConfiguration.n3 new file mode 100644 index 00000000..52c0ada2 --- /dev/null +++ b/rdf/display/everytime/VivoSearchIndexerConfiguration.n3 @@ -0,0 +1,46 @@ +@prefix : . + +# +# Specify the SearchIndexExcluders and DocumentModifiers for VIVO. +# These are in addition to the ones specified for VIVO. +# + +:vivoSearchExcluder_namespaceExcluder + a , + ; + :excludes + "http://purl.obolibrary.org/obo/" . + +# ------------------------------------ + +:vivodocumentModifier_calculateParameters + a , + . + +:vivodocumentModifier_valuesFromVcards + a , + . + +:vivodocumentModifier_ISFBasicFields + a , + . + +:vivodocumentModifier_ISFAdvisingFields + a , + . + +:vivodocumentModifier_ISFEducationFields + a , + . + +:vivodocumentModifier_ISFGrantFields + a , + . + +:vivodocumentModifier_ISFMemberFields + a , + . + +:vivodocumentModifier_informationResourceContextNodeFields + a , + . diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/CalculateParameters.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/CalculateParameters.java index d8870508..e3169436 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/CalculateParameters.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/CalculateParameters.java @@ -12,6 +12,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.hp.hpl.jena.query.Dataset; +import com.hp.hpl.jena.query.DatasetFactory; import com.hp.hpl.jena.query.Query; import com.hp.hpl.jena.query.QueryExecution; import com.hp.hpl.jena.query.QueryExecutionFactory; @@ -26,12 +27,13 @@ import com.hp.hpl.jena.rdf.model.ResourceFactory; import com.hp.hpl.jena.shared.Lock; import edu.cornell.mannlib.vitro.webapp.beans.Individual; +import edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccess; import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputDocument; import edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier; +import edu.cornell.mannlib.vitro.webapp.utils.configuration.ContextModelsUser; -public class CalculateParameters implements DocumentModifier { +public class CalculateParameters implements DocumentModifier, ContextModelsUser { private boolean shutdown = false; private Dataset dataset; @@ -60,15 +62,11 @@ public class CalculateParameters implements DocumentModifier { private static Log log = LogFactory.getLog(CalculateParameters.class); - public CalculateParameters(Dataset dataset){ - this.dataset =dataset; - // new Thread(new TotalInd(this.dataset,totalCountQuery)).start(); + @Override + public void setContextModels(ContextModelAccess models) { + this.dataset = DatasetFactory.create(models.getOntModel()); } - - public CalculateParameters(){ - super(); - } - + public float calculateBeta(String uri){ float beta=0; int Conn=0; diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VIVOValuesFromVcards.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VIVOValuesFromVcards.java index 9d97de26..7d9849bc 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VIVOValuesFromVcards.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VIVOValuesFromVcards.java @@ -15,11 +15,11 @@ import com.hp.hpl.jena.query.ResultSet; import com.hp.hpl.jena.rdf.model.RDFNode; import edu.cornell.mannlib.vitro.webapp.beans.Individual; +import edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccess; import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputDocument; import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.RDFServiceUtils; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier; +import edu.cornell.mannlib.vitro.webapp.utils.configuration.ContextModelsUser; /** * If there are any VCards on this Individual with Title objects, store the text @@ -28,7 +28,7 @@ import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier * If there are any VCards on this Individual with EMail objects, store the text * in the ALL_TEXT field. */ -public class VIVOValuesFromVcards implements DocumentModifier { +public class VIVOValuesFromVcards implements DocumentModifier, ContextModelsUser { private static final Log log = LogFactory .getLog(VIVOValuesFromVcards.class); @@ -77,11 +77,12 @@ public class VIVOValuesFromVcards implements DocumentModifier { } }}; - private RDFServiceFactory rdfServiceFactory; + private RDFService rdfService; private boolean shutdown = false; - public VIVOValuesFromVcards(RDFServiceFactory rdfServiceFactory) { - this.rdfServiceFactory = rdfServiceFactory; + @Override + public void setContextModels(ContextModelAccess models) { + this.rdfService = models.getRDFService(); } @Override @@ -100,7 +101,6 @@ public class VIVOValuesFromVcards implements DocumentModifier { String query = queryTemplate.replaceAll("\\?uri", uri); try { - RDFService rdfService = rdfServiceFactory.getRDFService(); ResultSet results = RDFServiceUtils.sparqlSelectQuery(query, rdfService); if (results != null) { diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFields.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFields.java index 440d2599..3e325a66 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFields.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFields.java @@ -4,9 +4,6 @@ package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; import java.util.ArrayList; import java.util.List; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ContextNodeFields; - /** * Class that adds text from context nodes to Search Documents for * foaf:Agent individuals. @@ -15,8 +12,8 @@ public class VivoAgentContextNodeFields extends ContextNodeFields{ static List queriesForAgent = new ArrayList(); - public VivoAgentContextNodeFields(RDFServiceFactory rdfServiceFactory){ - super(queriesForAgent,rdfServiceFactory); + public VivoAgentContextNodeFields(){ + super(queriesForAgent); } protected static final String prefix = diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoDocumentModifiers.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoDocumentModifiers.java deleted file mode 100644 index 51bc5049..00000000 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoDocumentModifiers.java +++ /dev/null @@ -1,72 +0,0 @@ -/* $This file is distributed under the terms of the license in /doc/license.txt$ */ -package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; - -import java.util.ArrayList; -import java.util.List; - -import javax.servlet.ServletContext; -import javax.servlet.ServletContextEvent; - -import com.hp.hpl.jena.query.Dataset; -import com.hp.hpl.jena.query.DatasetFactory; - -import edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.RDFServiceUtils; - -public class VivoDocumentModifiers implements javax.servlet.ServletContextListener{ - - /** - * Exclude from the search index individuals who's URIs start with these namespaces. - */ - private static final String[] INDIVIDUAL_NS_EXCLUDES={ - //bdc34: seems that there are a lot of odd OBO things in the search, exclude them - "http://purl.obolibrary.org/obo/" - }; - - @SuppressWarnings("unchecked") - @Override - public void contextInitialized(ServletContextEvent sce) { - - ServletContext context = sce.getServletContext(); - RDFServiceFactory rdfServiceFactory = RDFServiceUtils.getRDFServiceFactory(context); - - Dataset dataset = DatasetFactory.create(ModelAccess.on(context).getOntModel()); - - /* Put DocumentModifiers into servlet context for use later in startup by SearchSetup - * This adds the code for VIVO specific additions to the building - * of search input Documents. */ - List modifiers = (List)context.getAttribute("DocumentModifiers"); - if( modifiers == null ){ - modifiers = new ArrayList(); - context.setAttribute("DocumentModifiers", modifiers); - } - - modifiers.add(new CalculateParameters(dataset)); - modifiers.add( new VIVOValuesFromVcards( rdfServiceFactory )); - modifiers.add( new VivoISFBasicFields( rdfServiceFactory )); - modifiers.add( new VivoISFAdvisingFields( rdfServiceFactory )); - modifiers.add( new VivoISFEducationFields( rdfServiceFactory )); - modifiers.add( new VivoISFGrantFields( rdfServiceFactory )); - modifiers.add( new VivoISFMemberFields( rdfServiceFactory )); - modifiers.add(new VivoInformationResourceContextNodeFields(rdfServiceFactory)); - - /* - * Add VIVO specific code that excludes Individuals from the search index. - */ - List excludes = - (List)context.getAttribute("SearchIndexExcludes"); - - if( excludes == null ){ - excludes = new ArrayList(); - context.setAttribute("SearchIndexExcludes", excludes); - } - - excludes.add(new ExcludeBasedOnNamespace(INDIVIDUAL_NS_EXCLUDES )); - } - - @Override - public void contextDestroyed(ServletContextEvent arg0) { - // do nothing. - } -} diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFAdvisingFields.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFAdvisingFields.java index c2f26778..600feb4d 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFAdvisingFields.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFAdvisingFields.java @@ -5,9 +5,6 @@ package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; import java.util.ArrayList; import java.util.List; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ContextNodeFields; - /** * DocumentModifier for adding rdfs:labels of individuals related via * a advising relationship. @@ -31,8 +28,8 @@ public class VivoISFAdvisingFields extends ContextNodeFields { queries.add( makeQueryForPeople() ); } - public VivoISFAdvisingFields(RDFServiceFactory rdfServiceFactory){ - super(queries,rdfServiceFactory); + public VivoISFAdvisingFields(){ + super(queries); } /** diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFBasicFields.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFBasicFields.java index 23856b5a..dfecb445 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFBasicFields.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFBasicFields.java @@ -5,9 +5,6 @@ package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; import java.util.ArrayList; import java.util.List; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ContextNodeFields; - /** * DocumentModifier to populate Search index fields for the basic ISF relationships. * @@ -32,8 +29,8 @@ public class VivoISFBasicFields extends ContextNodeFields { static List queries = new ArrayList(); - public VivoISFBasicFields(RDFServiceFactory rdfServiceFactory){ - super(queries,rdfServiceFactory); + public VivoISFBasicFields(){ + super(queries); } protected static final String prefix = diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFEducationFields.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFEducationFields.java index 8ba9cc3e..a4655805 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFEducationFields.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFEducationFields.java @@ -5,9 +5,6 @@ package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; import java.util.ArrayList; import java.util.List; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ContextNodeFields; - public class VivoISFEducationFields extends ContextNodeFields { private static String VIVONS = "http://vivoweb.org/ontology/core#"; @@ -18,8 +15,8 @@ public class VivoISFEducationFields extends ContextNodeFields { + " prefix rdfs: \n" + " prefix obo: \n" ; - public VivoISFEducationFields(RDFServiceFactory rdfServiceFactory){ - super(queries,rdfServiceFactory); + public VivoISFEducationFields(){ + super(queries); } /** diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFGrantFields.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFGrantFields.java index c36fde17..edcb4368 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFGrantFields.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFGrantFields.java @@ -5,9 +5,6 @@ package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; import java.util.ArrayList; import java.util.List; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ContextNodeFields; - /* * This DocumentModifier is for the ISF style grants. * It will @@ -30,8 +27,8 @@ public class VivoISFGrantFields extends ContextNodeFields { + " prefix rdfs: \n" + " prefix obo: \n" ; - public VivoISFGrantFields(RDFServiceFactory rdfServiceFactory){ - super(queries,rdfServiceFactory); + public VivoISFGrantFields(){ + super(queries); } /** diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFMemberFields.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFMemberFields.java index 9ae1c566..b7c6769a 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFMemberFields.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoISFMemberFields.java @@ -5,9 +5,6 @@ package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; import java.util.ArrayList; import java.util.List; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ContextNodeFields; - /** * This class will: * add people's names to organization's search Documents. @@ -26,8 +23,8 @@ public class VivoISFMemberFields extends ContextNodeFields { + " prefix rdfs: \n" + " prefix obo: \n" ; - public VivoISFMemberFields(RDFServiceFactory rdfServiceFactory){ - super(queries,rdfServiceFactory); + public VivoISFMemberFields(){ + super(queries); } /** diff --git a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFields.java b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFields.java index 54ef0dad..c34815b2 100644 --- a/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFields.java +++ b/src/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFields.java @@ -4,9 +4,6 @@ package edu.cornell.mannlib.vitro.webapp.search.documentBuilding; import java.util.ArrayList; import java.util.List; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ContextNodeFields; - /** * Class that adds text from context nodes to search index Documents for * obo:IAO_0000030 individuals. @@ -18,8 +15,8 @@ public class VivoInformationResourceContextNodeFields extends ContextNodeFields{ static List queriesForInformationResource = new ArrayList(); - public VivoInformationResourceContextNodeFields(RDFServiceFactory rdfServiceFactory){ - super(queriesForInformationResource, rdfServiceFactory); + public VivoInformationResourceContextNodeFields(){ + super(queriesForInformationResource); } protected static final String prefix = diff --git a/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest.java b/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest.java index e4ab7c20..e418e2ff 100644 --- a/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest.java +++ b/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest.java @@ -9,6 +9,8 @@ import java.io.InputStream; import org.junit.BeforeClass; import org.junit.Test; +import stubs.edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccessStub; + import com.hp.hpl.jena.rdf.model.Model; import com.hp.hpl.jena.rdf.model.ModelFactory; import com.hp.hpl.jena.rdf.model.Property; @@ -18,17 +20,14 @@ import com.hp.hpl.jena.rdf.model.ResourceFactory; import edu.cornell.mannlib.vitro.testing.AbstractTestClass; import edu.cornell.mannlib.vitro.webapp.beans.Individual; import edu.cornell.mannlib.vitro.webapp.beans.IndividualImpl; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.RDFServiceFactorySingle; +import edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess.WhichService; import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel; public class VivoAgentContextNodeFieldsTest extends AbstractTestClass{ static String SPCA = "http://vivo.mydomain.edu/individual/n8087"; - - static RDFServiceFactory rdfServiceFactory; + static ContextModelAccessStub contextModels; @BeforeClass public static void setup(){ @@ -44,8 +43,8 @@ public class VivoAgentContextNodeFieldsTest extends AbstractTestClass{ assertTrue("expect statements about SPCA", m.contains(ResourceFactory.createResource(SPCA),(Property) null,(RDFNode) null)); - RDFService rdfService = new RDFServiceModel(m); - rdfServiceFactory = new RDFServiceFactorySingle(rdfService); + contextModels = new ContextModelAccessStub(); + contextModels.setRDFService(WhichService.CONTENT, new RDFServiceModel(m)); } @Test @@ -53,7 +52,8 @@ public class VivoAgentContextNodeFieldsTest extends AbstractTestClass{ Individual ind = new IndividualImpl(); ind.setURI(SPCA); - VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(rdfServiceFactory); + VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(); + vacnf.setContextModels(contextModels); StringBuffer sb = vacnf.getValues( ind ); assertNotNull( sb ); @@ -68,7 +68,8 @@ public class VivoAgentContextNodeFieldsTest extends AbstractTestClass{ Individual ind = new IndividualImpl(); ind.setURI(SPCA); - VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(rdfServiceFactory); + VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(); + vacnf.setContextModels(contextModels); StringBuffer sb = vacnf.getValues( ind ); assertNotNull( sb ); @@ -83,7 +84,8 @@ public class VivoAgentContextNodeFieldsTest extends AbstractTestClass{ Individual ind = new IndividualImpl(); ind.setURI(SPCA); - VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(rdfServiceFactory); + VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(); + vacnf.setContextModels(contextModels); StringBuffer sb = vacnf.getValues( ind ); assertNotNull( sb ); diff --git a/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest2.java b/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest2.java index 1d641e92..f3973ef1 100644 --- a/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest2.java +++ b/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoAgentContextNodeFieldsTest2.java @@ -10,6 +10,8 @@ import org.apache.commons.lang.StringUtils; import org.junit.BeforeClass; import org.junit.Test; +import stubs.edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccessStub; + import com.hp.hpl.jena.rdf.model.Model; import com.hp.hpl.jena.rdf.model.ModelFactory; import com.hp.hpl.jena.rdf.model.Property; @@ -19,9 +21,7 @@ import com.hp.hpl.jena.rdf.model.ResourceFactory; import edu.cornell.mannlib.vitro.testing.AbstractTestClass; import edu.cornell.mannlib.vitro.webapp.beans.Individual; import edu.cornell.mannlib.vitro.webapp.beans.IndividualImpl; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.RDFServiceFactorySingle; +import edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess.WhichService; import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel; /** @@ -32,9 +32,8 @@ import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceMod public class VivoAgentContextNodeFieldsTest2 extends AbstractTestClass{ static String HISTORY_DEPT = "http://vivo.colorado.edu/deptid_10238" ; - - static RDFServiceFactory rdfServiceFactory; - + static ContextModelAccessStub contextModels; + @BeforeClass public static void setup(){ Model m = ModelFactory.createDefaultModel(); @@ -52,8 +51,8 @@ public class VivoAgentContextNodeFieldsTest2 extends AbstractTestClass{ assertTrue("expect statements about HISTORY_DEPT", m.contains(ResourceFactory.createResource(HISTORY_DEPT),(Property) null,(RDFNode) null)); - RDFService rdfService = new RDFServiceModel(m); - rdfServiceFactory = new RDFServiceFactorySingle(rdfService); + contextModels = new ContextModelAccessStub(); + contextModels.setRDFService(WhichService.CONTENT, new RDFServiceModel(m)); } /** @@ -65,7 +64,8 @@ public class VivoAgentContextNodeFieldsTest2 extends AbstractTestClass{ Individual ind = new IndividualImpl(); ind.setURI(HISTORY_DEPT); - VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(rdfServiceFactory); + VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(); + vacnf.setContextModels(contextModels); StringBuffer sb = vacnf.getValues( ind ); assertNotNull( sb ); diff --git a/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFieldsTest.java b/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFieldsTest.java index 9deefcfd..6691121d 100644 --- a/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFieldsTest.java +++ b/test/edu/cornell/mannlib/vitro/webapp/search/documentBuilding/VivoInformationResourceContextNodeFieldsTest.java @@ -9,6 +9,7 @@ import java.util.Collection; import org.junit.Assert; import org.junit.Test; +import stubs.edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccessStub; import stubs.edu.cornell.mannlib.vitro.webapp.modules.ApplicationStub; import stubs.edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngineStub; import stubs.javax.servlet.ServletContextStub; @@ -23,10 +24,8 @@ import edu.cornell.mannlib.vitro.webapp.application.ApplicationUtils; import edu.cornell.mannlib.vitro.webapp.beans.Individual; import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory; import edu.cornell.mannlib.vitro.webapp.dao.jena.WebappDaoFactoryJena; +import edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess.WhichService; import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputDocument; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService; -import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFServiceFactory; -import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.RDFServiceFactorySingle; import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel; public class VivoInformationResourceContextNodeFieldsTest extends AbstractTestClass { @@ -54,13 +53,15 @@ public class VivoInformationResourceContextNodeFieldsTest extends AbstractTestCl WebappDaoFactory wadf = new WebappDaoFactoryJena(ontModel); Individual ind = wadf.getIndividualDao().getIndividualByURI(DOCUMENT_URI); Assert.assertNotNull(ind); - - RDFService rdfService = new RDFServiceModel(ontModel); - RDFServiceFactory rdfServiceFactory = new RDFServiceFactorySingle(rdfService); + + ContextModelAccessStub contextModels = new ContextModelAccessStub(); + contextModels.setRDFService(WhichService.CONTENT, new RDFServiceModel(ontModel)); + SearchInputDocument doc = ApplicationUtils.instance().getSearchEngine().createInputDocument(); doc.addField("ALLTEXT", ""); - VivoInformationResourceContextNodeFields vircnf = new VivoInformationResourceContextNodeFields(rdfServiceFactory); + VivoInformationResourceContextNodeFields vircnf = new VivoInformationResourceContextNodeFields(); + vircnf.setContextModels(contextModels); vircnf.modifyDocument(ind, doc); Collection values = doc.getField("ALLTEXT").getValues(); @@ -68,7 +69,8 @@ public class VivoInformationResourceContextNodeFieldsTest extends AbstractTestCl Assert.assertFalse("rdf:label erroneously added by document modifier:", value.toString().contains(RDFS_LABEL_VALUE)); } - VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(rdfServiceFactory); + VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields(); + vacnf.setContextModels(contextModels); vacnf.modifyDocument(ind, doc); }