VIVO Documentation
...
Code Block |
---|
OntModel ontModel = (OntModel) getServletContext().getAttribute("jenaOntModel");
Object sessionOntModel = request.getSession().getAttribute("jenaOntModel");
ctx.setAttribute("jenaOntModel", masterUnion); |
Occasionally, conditional code was inserted, to retrieve a model from the Request if available, and to fall back to the Session or the Context as necessary. Such code was sporadic, and inconsistent. This sort of model juggling also involved inversions of logic, with some code acting so a model in the Request would override one in the Session, while other code would prioritize the Session model over the one in the Request. For example:
...
Note |
---|
TBD - What are we transitioning from? Check out VIVO-82. |
...
Semantics have changed: saves code, but may alter some uses.
prior to ModelAccess | using ModelAccess | |||
---|---|---|---|---|
User Accounts Model | ctx.getAttribute("userAccountsOntModel") | ModelAccess.on(ctx).getUserAccountsModel() | ||
ctx.setAttribute("userAccountsOntModel", model) | ModelAccess.on(ctx).setUserAccountsModel(model) | |||
DisplayModel | req.getAttribute("displayOntModel") | ModelAccess.on(req).getDisplayModel() | ||
session.getAttribute("displayOntModel") | ModelAccess.on(session).getDisplayModel() | |||
ctx.getAttribute("displayOntModel") ModelContext.getDisplayModel(ctx) | ModelAccess.on(ctx).getDisplayModel() | |||
ctx.setAttribute("displayOntModel", model) ModelContext.setDisplayModel(model, ctx) | ModelAccess.on(ctx).getDisplayModel() | |||
req.setAttribute("displayOntModel", model) | ModelAccess.on(req).setDisplayModel(model) | |||
"jenaOntModel" | ctx.getAttribute("jenaOntModel") | ModelAccess.on(ctx).getJenaOntModel() | ||
session.getAttribute("jenaOntModel") | ModelAccess.on(session).getJenaOntModel() | |||
req.getAttribute("jenaOntModel") | ModelAccess.on(req).getJenaOntModel() | |||
ctx.setAttribute("jenaOntModel", model) | ModelAccess.on(ctx).setOntModel(ModelID.UNION_FULL, model) | |||
req.setAttribute("jenaOntModel", model) | ModelAccess.on(req).setOntModel(ModelID.UNION_FULL, model) ModelAccess.on(req).setJenaOntModel(model) | |||
"baseOntModel" "assertionsModel" Base Full Model | ModelContext.getBaseOntModel(ctx) ctx.getAttribute("baseOntModel") session.getAttribute("baseOntModel") | ModelAccess.on(ctx).getOntModel(ModelID.BASE_FULL) ModelAccess.on(ctx).getBaseOntModel() | ||
ModelContext.setBaseOntModel(model, ctx) | ||||
"inferenceModel" Inference Full Model | ctx.getAttribute("inferenceOntModel") | ModelAccess.on(ctx).getInferenceOntModel() |
...
"jenaOntModel" is a previous term for the Union Full model. The convenience methods getJenaOntModel()
and setJenaOntModel(m)
support this use.
"baseOntModel" and "assertionsModel" are both previous terms for the Base Full model. The convenience methods getBaseOntModel()
and setBaseOntModel(m)
support this use.
prior to ModelAccess | using ModelAccess | ||
---|---|---|---|
ontModelSelector unionOntModelSelector | ModelContext.setOntModelSelector(model, ctx) ModelContext.getUnionOntModelSelector(ctx) ctx.getAttribute("ontModelSelector") ctx.getAttribute("unionOntModelSelector") | no mutator methods ModelAccess.on(ctx).getOntModelSelector() ModelAccess.on(ctx).getUnionOntModelSelector() | |
baseOntModelSelector | ctx.getAttribute("baseOntModelSelector") | ModelAccess.on(ctx).getBaseOntModelSelector() | |
inferenceOntModelSelector | ctx.getAttribute("inferenceOntModelSelector") | ModelAccess.on(ctx).getInferenceOntModelSelector() |
...
The default WebappDaoFactory is the one backed by the unionOntModelSelector. On the request level, this is also known as the "fullWebappDaoFactory". The convenience methodsgetWebappDaoFactory()
and setWebappDaoFactory(wdf)
support this use.
"baseWebappDaoFactory" and "assertionsWebappDaoFactory" are both previous terms for the WebappDaoFactory backed by the baseOntModelSelector. The convenience methods getBaseWebappDaoFactory()
and setBaseWebappDaoFactory(wdf)
support this use.
Nobody was using the "deductionsWebappDaoFactory", so we got rid of it.