From c44df14ec1ca69da439dbf99305a40b554448ac7 Mon Sep 17 00:00:00 2001 From: Jim Blake Date: Wed, 21 May 2014 13:08:36 -0400 Subject: [PATCH] VIVO-773 continue clean up of model makers --- .../controller/jena/JenaIngestController.java | 87 ++--- .../controller/jena/RDFUploadController.java | 2 +- .../mannlib/vitro/webapp/dao/ModelAccess.java | 1 - .../dao/jena/VitroJenaSDBModelMaker.java | 346 ------------------ .../dao/jena/VitroJenaSpecialModelMaker.java | 131 ------- .../utils/dataGetter/DataGetterBase.java | 2 +- webapp/web/jenaIngest/listModels.jsp | 4 - 7 files changed, 27 insertions(+), 546 deletions(-) delete mode 100644 webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSDBModelMaker.java delete mode 100644 webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSpecialModelMaker.java diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/JenaIngestController.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/JenaIngestController.java index cdd9d13ee..16a06008c 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/JenaIngestController.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/JenaIngestController.java @@ -69,9 +69,6 @@ import edu.cornell.mannlib.vitro.webapp.dao.ModelAccess; import edu.cornell.mannlib.vitro.webapp.dao.ModelAccess.ModelID; import edu.cornell.mannlib.vitro.webapp.dao.OntologyDao; import edu.cornell.mannlib.vitro.webapp.dao.jena.RDFServiceGraph; -import edu.cornell.mannlib.vitro.webapp.dao.jena.RDFServiceModelMaker; -import edu.cornell.mannlib.vitro.webapp.dao.jena.VitroJenaSDBModelMaker; -import edu.cornell.mannlib.vitro.webapp.dao.jena.VitroJenaSpecialModelMaker; import edu.cornell.mannlib.vitro.webapp.dao.jena.event.EditEvent; import edu.cornell.mannlib.vitro.webapp.rdfservice.ChangeSet; import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService; @@ -86,8 +83,7 @@ import edu.cornell.mannlib.vitro.webapp.utils.jena.JenaOutputUtils; import edu.cornell.mannlib.vitro.webapp.utils.jena.WorkflowOntology; public class JenaIngestController extends BaseEditController { - - private static final Log log = LogFactory.getLog(JenaIngestController.class); + private static final Log log = LogFactory.getLog(JenaIngestController.class); private static final String INGEST_MENU_JSP = "/jenaIngest/ingestMenu.jsp"; private static final String LIST_MODELS_JSP = "/jenaIngest/listModels.jsp"; @@ -113,9 +109,7 @@ public class JenaIngestController extends BaseEditController { private static final String RENAME_RESOURCE = "/jenaIngest/renameResource.jsp"; private static final String RENAME_RESULT = "/jenaIngest/renameResult.jsp"; private static final String CREATED_GRAPH_BASE_URI = "http://vitro.mannlib.cornell.edu/a/graph/"; - public static final boolean MAIN_STORE_STATE = true; - public static final boolean AUXILIARY_STORE_STATE = false; - private static final String INGEST_STORE_ATTR = JenaIngestController.class.getName() + ".isUsingMainStoreForIngest"; + private static final String WHICH_MODEL_MAKER = "jenaIngestModelMakerID"; private static final Map attachedModels = new HashMap(); @@ -129,7 +123,7 @@ public class JenaIngestController extends BaseEditController { VitroRequest vreq = new VitroRequest(request); ModelMaker maker = getVitroJenaModelMaker(vreq); - String modelType = getModelType(vreq, maker); + String modelType = getModelType(vreq); String actionStr = vreq.getParameter("action"); actionStr = (actionStr != null) ? actionStr : ""; @@ -197,7 +191,6 @@ public class JenaIngestController extends BaseEditController { maker = getVitroJenaModelMaker(vreq); request.setAttribute("modelNames", maker.listModels().toList()); - request.setAttribute("jenaIngestModelMaker", maker); RequestDispatcher rd = request.getRequestDispatcher( Controllers.BASIC_JSP); @@ -214,30 +207,19 @@ public class JenaIngestController extends BaseEditController { showModelList(vreq, maker, modelType); } - public static boolean isUsingMainStoreForIngest(VitroRequest vreq) { - Boolean storeState = (Boolean) vreq.getSession().getAttribute(INGEST_STORE_ATTR); - if (storeState == null) { - return MAIN_STORE_STATE; - } else { - return storeState; - } - } - - private void setUsingMainStoreForIngest(VitroRequest vreq, boolean storeState) { - vreq.getSession().setAttribute(INGEST_STORE_ATTR, storeState); + public static boolean isUsingMainStoreForIngest(HttpServletRequest req) { + return CONFIGURATION != req.getSession().getAttribute(WHICH_MODEL_MAKER); } private void processRDBModelsRequest(VitroRequest vreq, ModelMaker maker, String modelType) { ModelMaker vjmm = ModelAccess.on(getServletContext()).getModelMaker(CONFIGURATION); - vreq.getSession().setAttribute("jenaIngestModelMaker", vjmm); - setUsingMainStoreForIngest(vreq, AUXILIARY_STORE_STATE); + vreq.getSession().setAttribute(WHICH_MODEL_MAKER, CONFIGURATION); showModelList(vreq, vjmm, "rdb"); } private void processSDBModelsRequest(VitroRequest vreq, ModelMaker maker, String modelType) { ModelMaker vsmm = ModelAccess.on(getServletContext()).getModelMaker(CONTENT); - vreq.getSession().setAttribute("jenaIngestModelMaker", vsmm); - setUsingMainStoreForIngest(vreq, MAIN_STORE_STATE); + vreq.getSession().setAttribute(WHICH_MODEL_MAKER, CONTENT); showModelList(vreq, vsmm, "sdb"); } @@ -427,7 +409,7 @@ public class JenaIngestController extends BaseEditController { doConnectDB(vreq); if ("SDB".equals(tripleStore)) { getServletContext().setAttribute("modelT", "sdb"); - getServletContext().setAttribute("info", "SDB models"); + getServletContext().setAttribute("info", "SDB models"); vreq.setAttribute("modelType", "sdb"); vreq.setAttribute("infoLine", "SDB models"); } else { @@ -727,27 +709,10 @@ public class JenaIngestController extends BaseEditController { } } - protected ModelMaker getVitroJenaModelMaker(HttpServletRequest request){ - return getVitroJenaModelMaker(request,getServletContext()); - } - - - - protected Model getModel( String name, HttpServletRequest request ){ - return JenaIngestController.getModel(name, request, getServletContext()); - } - - - - protected String getModelType(VitroRequest vreq, ModelMaker maker) { + protected String getModelType(VitroRequest vreq) { String modelType = vreq.getParameter("modelType"); - maker = (maker instanceof VitroJenaSpecialModelMaker) - ? ((VitroJenaSpecialModelMaker) maker).getInnerModelMaker() - : maker; if (modelType == null) { - if (maker instanceof RDFServiceModelMaker) { - modelType = "sdb"; - } else if (maker instanceof VitroJenaSDBModelMaker) { + if (isUsingMainStoreForIngest(vreq)) { modelType = "sdb"; } else { modelType = "rdb"; @@ -956,13 +921,10 @@ public class JenaIngestController extends BaseEditController { public void doConnectDB(VitroRequest vreq) { String tripleStore = vreq.getParameter("tripleStore"); - ServletContext ctx = getServletContext(); - ModelMaker vjmm = ModelAccess.on(ctx).getModelMaker(CONFIGURATION); - ModelMaker vsmm = ModelAccess.on(ctx).getModelMaker(CONTENT); if("SDB".equals(tripleStore)) { - vreq.getSession().setAttribute("jenaIngestModelMaker",vsmm); + vreq.getSession().setAttribute(WHICH_MODEL_MAKER,CONTENT); } else { - vreq.getSession().setAttribute("jenaIngestModelMaker",vjmm); + vreq.getSession().setAttribute(WHICH_MODEL_MAKER,CONFIGURATION); } } @@ -1242,12 +1204,6 @@ public class JenaIngestController extends BaseEditController { if(modelType.equals("rdb")){ vreq.setAttribute("modelType", "rdb"); vreq.setAttribute("infoLine", "RDB models"); - } else if (maker instanceof VitroJenaSDBModelMaker || - (maker instanceof VitroJenaSpecialModelMaker && - ((VitroJenaSpecialModelMaker) maker).getInnerModelMaker() - instanceof VitroJenaSDBModelMaker)) { - vreq.setAttribute("modelType", "sdb"); - vreq.setAttribute("infoLine", "SDB models"); } else { vreq.setAttribute("modelType", "sdb"); vreq.setAttribute("infoLine", "main store models"); @@ -1272,7 +1228,7 @@ public class JenaIngestController extends BaseEditController { } - public static Model getModel(String name, HttpServletRequest request, ServletContext context) { + public static Model getModel(String name, HttpServletRequest request) { if ("vitro:jenaOntModel".equals(name)) { return ModelAccess.on(request.getSession()).getJenaOntModel(); } else if ("vitro:baseOntModel".equals(name)) { @@ -1280,13 +1236,20 @@ public class JenaIngestController extends BaseEditController { } else if ("vitro:inferenceOntModel".equals(name)) { return ModelAccess.on(request.getSession()).getInferenceOntModel(); } else { - return getVitroJenaModelMaker(request,context).getModel(name); + return getVitroJenaModelMaker(request).getModel(name); } } - protected static ModelMaker getVitroJenaModelMaker(HttpServletRequest request, ServletContext context) { - ModelMaker myVjmm = (ModelMaker) request.getSession().getAttribute("jenaIngestModelMaker"); - myVjmm = (myVjmm == null) ? ModelAccess.on(context).getModelMaker(CONTENT) : myVjmm; - return new VitroJenaSpecialModelMaker(myVjmm, request); + protected static ModelMaker getVitroJenaModelMaker(HttpServletRequest req){ + ServletContext ctx = req.getSession().getServletContext(); + if (isUsingMainStoreForIngest(req)) { + return ModelAccess.on(ctx).getModelMaker(CONTENT); + } else { + return ModelAccess.on(ctx).getModelMaker(CONFIGURATION); + } } + + + + } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/RDFUploadController.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/RDFUploadController.java index cd07764bd..51c892dbc 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/RDFUploadController.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/jena/RDFUploadController.java @@ -261,7 +261,7 @@ public class RDFUploadController extends JenaIngestController { } finally { rdfService.close(); } - String modelType = getModelType(request, maker); + String modelType = getModelType(request); showModelList(request, maker, modelType); } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/ModelAccess.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/ModelAccess.java index c09f3f804..06a886988 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/ModelAccess.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/ModelAccess.java @@ -40,7 +40,6 @@ import edu.cornell.mannlib.vitro.webapp.dao.jena.OntModelSelector; * VitroModelSource.openModelIfPresent(string) * ServletContext.getAttribute("pelletOntModel") * VitroJenaModelMaker - * VitroJenaSpecialModelMaker * JenaDataSourceSetupBase.getApplicationDataSource(ctx) * JenaDataSourceSetupBase.getStartupDataset() * HttpSession.getAttribute("jenaAuditModel") diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSDBModelMaker.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSDBModelMaker.java deleted file mode 100644 index ea372c777..000000000 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSDBModelMaker.java +++ /dev/null @@ -1,346 +0,0 @@ -/* $This file is distributed under the terms of the license in /doc/license.txt$ */ - -package edu.cornell.mannlib.vitro.webapp.dao.jena; - -import java.sql.SQLException; -import java.text.Collator; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.List; -import java.util.Set; - -import javax.sql.DataSource; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import com.hp.hpl.jena.graph.Graph; -import com.hp.hpl.jena.graph.GraphMaker; -import com.hp.hpl.jena.graph.Node; -import com.hp.hpl.jena.query.Dataset; -import com.hp.hpl.jena.query.Query; -import com.hp.hpl.jena.query.QueryExecution; -import com.hp.hpl.jena.query.QueryExecutionFactory; -import com.hp.hpl.jena.query.QueryFactory; -import com.hp.hpl.jena.rdf.model.Literal; -import com.hp.hpl.jena.rdf.model.Model; -import com.hp.hpl.jena.rdf.model.ModelFactory; -import com.hp.hpl.jena.rdf.model.ModelMaker; -import com.hp.hpl.jena.rdf.model.ModelReader; -import com.hp.hpl.jena.rdf.model.RDFNode; -import com.hp.hpl.jena.rdf.model.Resource; -import com.hp.hpl.jena.rdf.model.Statement; -import com.hp.hpl.jena.rdf.model.StmtIterator; -import com.hp.hpl.jena.sdb.SDBFactory; -import com.hp.hpl.jena.sdb.Store; -import com.hp.hpl.jena.sdb.StoreDesc; -import com.hp.hpl.jena.sdb.sql.SDBConnection; -import com.hp.hpl.jena.sdb.util.StoreUtils; -import com.hp.hpl.jena.util.iterator.ExtendedIterator; -import com.hp.hpl.jena.util.iterator.WrappedIterator; -import com.hp.hpl.jena.vocabulary.RDFS; - -public class VitroJenaSDBModelMaker implements ModelMaker { - - private final static Log log = LogFactory.getLog(VitroJenaSDBModelMaker.class); - - private StoreDesc storeDesc = null; - private DataSource ds = null; - private SDBConnection conn = null; - private SDBGraphConnectionGenerator connGen = null; - - public static final String METADATA_MODEL_URI = - "http://vitro.mannlib.cornell.edu/ns/vitro/sdb/metadata"; - - public static final String HAS_NAMED_MODEL_URI = - "http://vitro.mannlib.cornell.edu/ns/vitro/sdb/hasNamedModel"; - - private Resource sdbResource; // a resource representing the SDB database - - public VitroJenaSDBModelMaker(StoreDesc storeDesc, DataSource ds) - throws SQLException { - - this.storeDesc = storeDesc; - this.ds = ds; - connGen = new SDBGraphConnectionGenerator(ds); - - Store store = getStore(); - try { - setUpMetadata(store); - } finally { - store.close(); - } - } - - private static final int MAX_TRIES = 10; - - private Store getStore() { - Store store = null; - boolean goodStore = false; - int tries = 0; - while (!goodStore && tries < MAX_TRIES) { - tries++; - if (conn == null) { - try { - conn = new SDBConnection(connGen.generateConnection()); - } catch (SQLException sqle) { - throw new RuntimeException( - "Unable to get SQL connection", sqle); - } - } - store = SDBFactory.connectStore(conn, storeDesc); - try { - if (!StoreUtils.isFormatted(store)) { - // initialize the store - try { - store.getTableFormatter().create(); - store.getTableFormatter().truncate(); - } catch (Exception e) { - throw new RuntimeException( - "Unable to format store for " + - "VitroJenaSDBModelMaker", e); - } - } - } catch (SQLException sqle) { - conn.close(); - conn = null; - } - if (conn != null) { - if (isWorking(store)) { - goodStore = true; - } else { - conn.close(); - conn = null; - } - } - } - if (store == null) { - throw new RuntimeException( - "Unable to connect to SDB store after " + - MAX_TRIES + " attempts"); - } - return store; - } - - Model getMetadataModel() { - return getModel(METADATA_MODEL_URI); - } - - private void setUpMetadata(Store store) { - Model metadataModel = getMetadataModel(); - - if (metadataModel.size() == 0) { - // set up the model name metadata to avoid expensive calls to - // listNames() - Resource sdbRes = metadataModel.createResource(); - this.sdbResource = sdbRes; - Iterator nameIt = SDBFactory.connectDataset(store).listNames(); - while (nameIt.hasNext()) { - String name = (String) nameIt.next(); - metadataModel.add(sdbResource,metadataModel.getProperty( - HAS_NAMED_MODEL_URI),name); - } - } else { - StmtIterator stmtIt = metadataModel.listStatements( - (Resource) null, metadataModel.getProperty( - HAS_NAMED_MODEL_URI),(RDFNode) null); - if (stmtIt.hasNext()) { - Statement stmt = stmtIt.nextStatement(); - sdbResource = stmt.getSubject(); - } - stmtIt.close(); - } - - } - - private boolean isWorking(Store store) { - Dataset d = SDBFactory.connectDataset(store); - try { - String validationQuery = "ASK { <" + RDFS.Resource.getURI() + "> " + - " <" + RDFS.isDefinedBy.getURI() + "> " + - " <" + RDFS.Resource.getURI() + "> }"; - Query q = QueryFactory.create(validationQuery); - QueryExecution qe = QueryExecutionFactory.create(q, d); - try { - qe.execAsk(); - return true; - } catch (Exception e) { - log.error(e, e); - return false; - } finally { - qe.close(); - } - } finally { - d.close(); - } - } - - public void close() { - getStore().close(); - } - - public Model createModel(String modelName) { - Model model = getModel(modelName); - Model metadataModel = getMetadataModel(); - try { - metadataModel.add( - sdbResource,metadataModel.getProperty( - HAS_NAMED_MODEL_URI), modelName); - } finally { - metadataModel.close(); - } - return model; - } - - public Model createModel(String arg0, boolean arg1) { - // TODO Figure out if we can offer a "create if not found" option using SDB - return createModel(arg0); - } - - public GraphMaker getGraphMaker() { - throw new UnsupportedOperationException( - "GraphMaker not supported by " + this.getClass().getName()); - } - - public boolean hasModel(String arg0) { - Model metadataModel = getMetadataModel(); - try { - StmtIterator stmtIt = metadataModel.listStatements( - sdbResource, metadataModel.getProperty( - HAS_NAMED_MODEL_URI), arg0); - try { - return stmtIt.hasNext(); - } finally { - if (stmtIt != null) { - stmtIt.close(); - } - } - } finally { - metadataModel.close(); - } - } - - public ExtendedIterator listModels() { - Model metadataModel = getMetadataModel(); - try { - return listModelNames(metadataModel); - } finally { - metadataModel.close(); - } - } - - private ExtendedIterator listModelNames(Model metadataModel) { - Set modelNameSet = new HashSet(); - - Iterator metadataNameIt = metadataModel.listObjectsOfProperty( - metadataModel.getProperty(HAS_NAMED_MODEL_URI)); - while (metadataNameIt.hasNext()) { - RDFNode rdfNode = metadataNameIt.next(); - if (rdfNode.isLiteral()) { - modelNameSet.add(((Literal) rdfNode).getLexicalForm()); - } - } - - Iterator storeNameIt = StoreUtils.storeGraphNames(getStore()); - while (storeNameIt.hasNext()){ - Node node = storeNameIt.next(); - modelNameSet.add(node.getURI()); - } - - List modelNameList = new ArrayList(); - modelNameList.addAll(modelNameSet); - Collections.sort(modelNameList, Collator.getInstance()); - - return WrappedIterator.create(modelNameList.iterator()); - } - - public Model openModel(String arg0, boolean arg1) { - return SDBFactory.connectNamedModel(getStore(),arg0); - } - - public void removeModel(String arg0) { - Model m = getModel(arg0); - m.removeAll(null,null,null); - Model metadataModel = getMetadataModel(); - try { - metadataModel.remove(sdbResource, metadataModel.getProperty( - HAS_NAMED_MODEL_URI),metadataModel.createLiteral(arg0)); - } finally { - metadataModel.close(); - } - } - - public Model addDescription(Model arg0, Resource arg1) { - throw new UnsupportedOperationException( - "addDescription not supported by " + this.getClass().getName()); - } - - public Model createModelOver(String arg0) { - throw new UnsupportedOperationException( - "createModelOver not supported by " + this.getClass().getName()); - } - - public Model getDescription() { - throw new UnsupportedOperationException( - "createModelOver not supported by " + this.getClass().getName()); - } - - public Model getDescription(Resource arg0) { - throw new UnsupportedOperationException( - "getDescription not supported by "+this.getClass().getName()); - } - - public Model openModel() { - return SDBFactory.connectDefaultModel(getStore()); - } - - public Model createDefaultModel() { - return SDBFactory.connectDefaultModel(getStore()); - } - - public Model createFreshModel() { - throw new UnsupportedOperationException( - "createFreshModel not supported by " + this.getClass().getName()); - } - - /** - * @deprecated - */ - public Model createModel() { - return SDBFactory.connectDefaultModel(getStore()); - } - - /** - * @deprecated - */ - public Model getModel() { - return SDBFactory.connectDefaultModel(getStore()); - } - - public Model openModel(String arg0) { - return SDBFactory.connectDefaultModel(getStore()); - } - - public Model openModelIfPresent(String arg0) { - return (this.hasModel(arg0)) - ? SDBFactory.connectNamedModel(getStore(),arg0) - : null; - } - - public Model getModel(String modelName) { - SDBGraphGenerator graphGen = new SDBGraphGenerator( - connGen, storeDesc, modelName); - Graph g = new RegeneratingGraph( - SDBFactory.connectNamedGraph(getStore(), modelName), graphGen); - return ModelFactory.createModelForGraph(g); - } - - public Model getModel(String arg0, ModelReader arg1) { - throw new UnsupportedOperationException( - "getModel(String, ModelReader) not supported by " + - this.getClass().getName()); - } - -} diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSpecialModelMaker.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSpecialModelMaker.java deleted file mode 100644 index 58247d3e8..000000000 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VitroJenaSpecialModelMaker.java +++ /dev/null @@ -1,131 +0,0 @@ -/* $This file is distributed under the terms of the license in /doc/license.txt$ */ - -package edu.cornell.mannlib.vitro.webapp.dao.jena; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import com.hp.hpl.jena.graph.GraphMaker; -import com.hp.hpl.jena.rdf.model.Model; -import com.hp.hpl.jena.rdf.model.ModelMaker; -import com.hp.hpl.jena.rdf.model.ModelReader; -import com.hp.hpl.jena.util.iterator.ExtendedIterator; - -import edu.cornell.mannlib.vitro.webapp.dao.ModelAccess; - -/** - * Wraps a model maker and returns Models from the servlet context when - * certain model URIs are requested - * @author bjl23 - * - */ -public class VitroJenaSpecialModelMaker implements ModelMaker { - - private static final Log log = LogFactory.getLog(VitroJenaSpecialModelMaker.class.getName()); - - private ModelMaker innerModelMaker; - private HttpServletRequest request; - - public VitroJenaSpecialModelMaker(ModelMaker mm, HttpServletRequest request) { - this.innerModelMaker = mm; - this.request = request; - } - - public ModelMaker getInnerModelMaker() { - return this.innerModelMaker; - } - - public void close() { - innerModelMaker.close(); - } - - public Model createModel(String arg0) { - return innerModelMaker.createModel(arg0); - } - - public Model createModel(String arg0, boolean arg1) { - Model specialModel = getSpecialModel(arg0); - return (specialModel != null) ? specialModel : innerModelMaker.createModel(arg0,arg1); - } - - public GraphMaker getGraphMaker() { - return innerModelMaker.getGraphMaker(); - } - - public boolean hasModel(String arg0) { - return ( (getSpecialModel(arg0) != null) || innerModelMaker.hasModel(arg0) ); - } - - /** - * Won't list the special models - */ - public ExtendedIterator listModels() { - return innerModelMaker.listModels(); - } - - public Model openModel(String arg0, boolean arg1) { - Model specialModel = getSpecialModel(arg0); - return (specialModel != null) ? specialModel : innerModelMaker.openModel(arg0,arg1); - } - - public void removeModel(String arg0) { - innerModelMaker.removeModel(arg0); - } - - public Model createModelOver(String arg0) { - Model specialModel = getSpecialModel(arg0); - return (specialModel != null) ? specialModel : createModelOver(arg0); - } - - public Model createDefaultModel() { - return innerModelMaker.createDefaultModel(); - } - - public Model createFreshModel() { - return innerModelMaker.createFreshModel(); - } - - public Model openModel(String arg0) { - Model specialModel = getSpecialModel(arg0); - return (specialModel != null) ? specialModel : innerModelMaker.openModel(arg0); - } - - public Model openModelIfPresent(String arg0) { - Model specialModel = getSpecialModel(arg0); - return (specialModel != null) ? specialModel : innerModelMaker.openModelIfPresent(arg0); - } - - public Model getModel(String arg0) { - Model specialModel = getSpecialModel(arg0); - return (specialModel != null) ? specialModel : innerModelMaker.getModel(arg0); - } - - public Model getModel(String arg0, ModelReader arg1) { - Model specialModel = getSpecialModel(arg0); - return (specialModel != null) ? specialModel : innerModelMaker.getModel(arg0,arg1); - } - - /** - * This will trap for strings like "vitro:jenaOntModel" and return the - * appropriate in-memory model used by the current webapp context. - * To use this functionality, the VitroJenaModelMaker must be constructed - * with a VitroRequest parameter - */ - private Model getSpecialModel(String modelName) { - if (request != null) { - if ("vitro:jenaOntModel".equals(modelName)) { - return ModelAccess.on(request.getSession()).getJenaOntModel(); - } else if ("vitro:baseOntModel".equals(modelName)) { - return ModelAccess.on(request.getSession()).getBaseOntModel(); - } else if ("vitro:inferenceOntModel".equals(modelName)) { - return ModelAccess.on(request.getSession()).getInferenceOntModel(); - } else { - return null; - } - } - return null; - } - -} diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/dataGetter/DataGetterBase.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/dataGetter/DataGetterBase.java index a57025796..79a1b7400 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/dataGetter/DataGetterBase.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/dataGetter/DataGetterBase.java @@ -27,7 +27,7 @@ public abstract class DataGetterBase implements DataGetter { }else if( CONTEXT_DISPLAY_MODEL.equals(modelName)){ return ModelAccess.on(context).getDisplayModel(); }else if( ! StringUtils.isEmpty( modelName)){ - Model model = JenaIngestController.getModel( modelName, vreq, context); + Model model = JenaIngestController.getModel( modelName, vreq); if( model == null ) throw new IllegalAccessError("Cannot get model <" + modelName +"> for DataGetter."); else diff --git a/webapp/web/jenaIngest/listModels.jsp b/webapp/web/jenaIngest/listModels.jsp index 2b0f48343..3297b4184 100644 --- a/webapp/web/jenaIngest/listModels.jsp +++ b/webapp/web/jenaIngest/listModels.jsp @@ -29,11 +29,7 @@ function init(){
-<% if ("SDB models".equals(request.getAttribute("infoLine"))) { %> - -<% } else { %> -<% } %>