Commit graph

50 commits

Author SHA1 Message Date
Jim Blake
4b0cdadb0d VIVO-958 Accommodate a migration directly from 1.5 data to 1.8
Move data directory from ontologies/update to version-specific directory ontologies/update17to18
Create ontologies/update15to16 and ontologies/update16to17 from previous update data directories.

Revise UpdateKnowledgeBase to accept the data directory as a parameter instead of having it hard-coded.
Create classes like Release18Migrator that will call UpdateKnowledgeBase with the appropriate directory, and do other release-specific migration tasks.

Make corresponding changes in startup_listeners.txt
2015-03-13 12:15:25 -04:00
Jim Blake
f339f1864f VIVO-863 get rid of GuardAgainstUnmigratedRDB
It was only useful for the transition from 1.6 to 1.7, and it was a problem when someone used a triple-store other than SDB.
2014-12-11 16:12:42 -05:00
Jim Blake
73b76a6e90 VIVO-933 Read PropertyConfig.n3 into an existing model, just once. 2014-12-11 15:51:59 -05:00
Jim Blake
481d3fc1d8 VIVO-695 VIVO-699 Refactor and optimize the PropertyRestrictionBean
Formerly the PropertyRestrictionPolicyHelper.
2014-12-10 17:39:06 -05:00
Jim Blake
4b71c1d6bb VIVO-778 Refactor the connections to the TBox reasoner.
Replace PelletListener with a TBoxReasonerModule in the Application.
   The reasoner will be accessible only through here, not as a context attribute or through the WebappDaoFactory.
Split out the initialization of the TBox reasoner from SimpleReasonerSetup.
Break out the filtering of TBox changes into a ConfiguredReasonerListener.
Refactor the threading logic into a BasicTBoxReasonerDriver.
   Add a factory for creating VitroBackgroundThreads in an Executor.
Isolate the actual reasoner into a TBoxReasoner implementation. In this case, PelletTBoxReasoner.
Combine the consistency flag, error flag, explanation, and running status into one TBoxReasonerStatus object.
2014-12-08 10:54:07 -05:00
Jim Blake
ebb31eb081 VIVO-906 Assemble application at runtime.
Create an object to represent VitroHomeDirectory
Instantiate TripleSources, FileStorage, etc, based on the config file.
2014-11-13 17:11:11 -05:00
Jim Blake
6e5bbaeef8 VIVO-848 Move the FileStorage system behind an interface
Add it to the Application framework, and do some cleanup.
2014-08-14 16:54:29 -04:00
Ted Lawless
6b72b39729 Change link to documentation for StartupManager. 2014-07-31 12:20:08 -04:00
Jim Blake
58148630ad VIVO-823 Replace RDFServiceSetup with RDFSetup
This introduces the RDFSource as a wrapper around an RDFServiceFactory and 2 ModelMakerFactorys.
This introduces ModelMakerUtils as a way to get the ModelMakers for context or for request.
Create implementations of RDFSource for SDB, TDB, and SPARQL.
The SDB implementation absorbs JenaPersistentDataSourceSetup and part of ConfigurationPropertiesSmokeTests,
which aren't needed unless we use SDB.

This is probably broken, without the subsequent changes.
2014-07-18 17:15:24 -04:00
Jim Blake
ea9d1e739d VIVO 746, at startup, remove obsolete Permissions from the user accounts model.
Also, get rid of UpdatePermissionSetUris, which supported the transition from 1.4 to 1.5.
2014-06-13 10:27:25 -04:00
Jim Blake
7cf03661d4 VIVO-773 guard against RDB data that has not been migrated. 2014-06-09 15:37:54 -04:00
Jim Blake
3a2930cdc6 VIVO-773 Update the JENA libraries and adjust to the changes
Replace the JAR files with more current ones.
Add a one-line change to BaseInfGraph (from the Jena source), so it will work with Pellet 2.3.1
Adjust all implementations of Graph to include new methods and remove old ones.
Add annotations and generics to reduce compiler warnings.
Remove all dependencies on RDB, which is no longer supported.
   This requires considerable refactoring of JenaIngestController, RDFUploadController, listModels.jsp
Refactor the ModelMaker uses
   Remove VitroJenaModelMaker,
   Revise VitroInterceptingModelMaker to be configurable for Config or Content models
Add debug logging code to ModelChangeImpl ChangeSetImpl, RDFServiceJena.
Add TDB support: RDFServiceFactoryTDB, RDFServiceTDB
   Refactor RDFServiceJena and RDFServiceSDB so much of the code can be reused by RDFServiceTDB
Accomodate two RDFService instances - one for Configuration models and one for Content models.
   Changes to RDFServiceUtils, RDFServiceSetup
   Configuration models use TDB directory in Vitro home directory
Handle bulk updating:
   Jena has deprecated bulk operations, and their models classes no longer use the bulk updaters
   Create a VitroModelFactory to use instead of the ModelFactory, when bulk updating is required.
   Create adapter classes: BulkUpdatingModel, BulkUpdatingOntModel, AbstractModelDecorator
Make the configuration model setup algorithms uniform
   Combine ApplicationModelSetup and UserModelSetup into ConfigurationModelsSetup
2014-06-01 18:23:21 -04:00
Jim Blake
1bb5153857 VIVO-742 Setup the Application properly, and guard against NPEs 2014-04-22 15:18:22 -04:00
Jim Blake
823848123f VIVO-742 Create SearchEngineSetup and SearchIndexerSetup 2014-04-22 15:18:15 -04:00
j2blake
245763e9e7 Make DeveloperSettings a singleton, and other improvements.
By making it a singleton, we do need an explicit Setup operation. However, it means that we can refer to the settings in client code that doesn’t have access to a request or to the ServletContext.

Other refactorings to simplify the logic or make it more scalable.
2014-01-04 14:22:29 -05:00
brianjlowe
aad1f023cc disabling knowledge base migration in plain vitro 2013-10-04 14:27:32 -04:00
brianjlowe
500bb456c3 changing behavior of reasoning wrt migration 2013-09-20 15:41:45 -04:00
j2blake
d69bb824ac VIVO-274 move permission_config.n3 to rdf/auth/everytime
Get rid of the PermissionSetsLoader, keep the smoke tests.
2013-08-27 17:26:24 -04:00
j2blake
3f061da006 VIVO-246 Re-implement the FreemarkerConfiguration
The Configuration must contain mutable information like the theme directory and the TemplateLoader. It must also be request-specific so it can have the correct Locale for language support. But we should only have one instance, so there is only one TemplateCache (alternatively, one TemplateCache per theme).

Previously, this was addressed by intercepting the Template processing and adding the request-based info to the Environment. However, this interception code needed to appear each time a Template was processed. This was sometimes overlooked, and at best introduced a bunch of duplicated code.

Instead, I extended the freemarker Configuration class to include a ThreadLocal that holds request-specific information.
2013-08-08 13:22:16 -04:00
tworrall
98bb7236d1 replaced reference to the sirceforge wiki with a reference to the duraspace wiki 2013-08-06 14:31:26 -04:00
Brian Caruso
54f79f2ea7 Normalize line endings VIVO-101 2013-07-18 15:19:53 -04:00
j2blake
8f336b3505 VIVO-213 smoke test to check JVM temp directory
If it isn't set, if it isn't a directory, if we can't access it, if we can't create a temp file, complain.
2013-07-17 13:01:08 -04:00
j2blake
416e98f5ab VIVO-82 Split WebappDaoSetup into ContentModelSetup and ModelMaker setup. 2013-05-16 16:42:57 -04:00
j2blake
bb6b2fa970 VIVO-12 NIHVIVO-4011 Provide config and GUI for selecting Locale 2013-01-24 16:21:36 -05:00
j2blake
e8f01e9838 NIHVIVO-3748 Implement a shortview_config.n3 file to set up the short views. It had been hardcoded. 2012-06-21 19:41:35 +00:00
brianjlowe
94a34e274b startup listener refactoring for RDF API 2012-06-12 19:55:18 +00:00
brianjlowe
101de4614b merge recent revision from trunk 2012-06-08 19:41:48 +00:00
brianjlowe
cead502f89 SDB implementation of RDF API (and merge from trunk) 2012-06-04 21:09:36 +00:00
j2blake
71ed58cc2e Neither PUBLIC nor self-editors get to edit any properties by virtue of their role. 2012-03-29 16:36:09 +00:00
j2blake
9442468b75 NIHVIVO-3300 Placeholder images are configured by a properties file, which is loaded at startup. 2012-03-22 20:10:18 +00:00
j2blake
3a6a3b985a NIHVIVO-3706 Create a separate permission "UseSparqlQueryPage" to control the SPARQL query page. Installers may modify permission_config.n3 to make the SPARQL query page publicly accessible. 2012-03-22 17:40:21 +00:00
j2blake
2c2151a0f2 NIHVIVO-2694 Create a new Permission to determine who can login when logins are restricted. 2012-02-02 21:54:06 +00:00
j2blake
7690f83cfe Don't allow the public to edit properties that are marked as editable by the public. 2012-01-30 16:27:04 +00:00
j2blake
4ddfff7018 NIHVIVO-3523 Create the EditByRolePermission, so we can use the PermissionsPolicy instead of EditRestrictedDataByRoleLevelPolicy, and these edit restrictions can be assigned to arbitrary PermissionSets. 2012-01-06 22:39:41 +00:00
j2blake
ffafc5f3e0 NIHVIVO-3523 Create the DisplayByRolePermission, so we can use the PermissionsPolicy instead of DisplayRestrictedDataByRoleLevelPolicy, and these display restrictions can be assigned to arbitrary PermissionSets. 2012-01-06 21:58:16 +00:00
j2blake
45e8d0c654 NIHVIVO-3523 Convert all simple PUBLIC-or-above requested actions to SimplePermissions. 2011-12-22 15:33:48 +00:00
j2blake
8ba596bfae NIHVIVO-3523 Convert all simple SELF_EDITOR-or-above requested actions to SimplePermissions. 2011-12-21 22:08:33 +00:00
j2blake
b36659d9f4 NIHVIVO-3523 Convert all simple EDITOR-or-above requested actions to SimplePermissions. 2011-12-21 21:41:13 +00:00
j2blake
1aac179c87 NIHVIVO-3523 Convert all simple CURATOR-or-above requested actions to SimplePermissions. 2011-12-21 21:23:04 +00:00
j2blake
adad173dc9 NIHVIVO-3523 Convert all simple ADMIN-only requested actions to SimplePermissions. 2011-12-21 20:46:17 +00:00
j2blake
20b7f694d1 NIHVIVO-3523 Write the PermissionSetsLoader. 2011-12-20 21:24:52 +00:00
j2blake
7d7503fc22 NIHVIVO-3523 Rewrite the PermissionRegistry to be immutable, and to distribute BrokenPermissions when someone asks for a Permission that doesn't exist. 2011-12-19 21:19:58 +00:00
j2blake
9d89fc291c NIHVIVO-3522 Changed to the new PermissionSet URIs, with updater. 2011-12-17 23:48:29 +00:00
j2blake
4139ec0f6e NIHVIVO-3523 For the first iteration, let's implement MANAGE_MENUS as a SimplePermission. This version still needs the loader and the policy and... 2011-12-16 20:52:23 +00:00
j2blake
6aec52dc1d Create a smoke test to check the connection to Solr. 2011-11-23 21:53:53 +00:00
j2blake
f3098b2705 Create basic smoke tests for startup; confirm that the home directory exists and is read/write; confirm that we can create a database connection. 2011-10-07 22:21:22 +00:00
j2blake
3f6b6a7d28 NIHVIVO-1810 Change the way that the default theme and the list of available themes are handled. If the application is configured to use a theme that is not found, it will throw a warning on the StartupStatus and use the default theme instead. 2011-09-30 22:10:39 +00:00
j2blake
b49317d33b NIHVIVO-336 For the on-demand status page, no need to have a "continue" link. 2011-09-28 15:17:37 +00:00
j2blake
d4f561d156 NIHVIVO-2811 Rewrite the build script to be simpler, and to run faster incremental builds for VIVO. 2011-09-27 21:06:02 +00:00
j2blake
4b656f3465 Make sure that the new startup_listeners.txt file gets into the new build. 2011-09-20 19:32:44 +00:00