1. jummp
  2. jummp

Commits

Author Commit Message Date Builds
Mihai Glonț
Updated documentation for the Model domain object. The docs for vcsIdentifier now correctly describe the purpose of this parameter.
Raza Ali
Instantiate strategies once in SubmissionService Previous implementation was instantiating strategies on each function call in an effort to be stateless. This is probably unnecessary, as long as the strategies themselves are stateless. Please make sure that is the case.
Mihai Glonț
Introduced validation for RepositoryFile.Added automatic mime type detection. The content type discovery relies on Apache Tika, hence the relevant component has been added as a dependency. RepositoryFile now has an extra boolean flag indicating whether this is the main submission entry or not, and a string that holts the content type of the file in question.
Raza Ali
Empty strategy implementation in Submission Service Created an abstract class for implementing the various functions in the submission pipeline with a strategy pattern, to be completed by two classes, specifically for creating models and updating them.
Raza Ali
Minor readability change to modelcontroller
Raza Ali
Fleshed out uploadFlow with calls to SubmissionService The flow now makes appropriate calls to the submission service with (empty, but) correct objects passed to the correct (but empty!) service methods.
Raza Ali
Minor readability changes to model upload webflow
Raza Ali
Created skeleton for Upload webflow Contains the (completely empty) structure for the webflow. Currently linear flow, chevrons to be added later!
Mihai Glonț
Added missing @Validateable annotation to UserCommand. This is needed to avoid intermittent MissingMethodException caused by the validate() method.
Mihai Glonț
Integrated the batch model importer into master.
Mihai Glonț
Improved error logging in ModelService. Now also capturing the validation error messages for new models and revisions.
Mihai Glonț
Remembered to specify a comment when models get imported. That way, we don't invalidate the constraints that we wrote ourselves.
Mihai Glonț
Cleaned BatchImport script of imports which are no longer used.
Mihai Glonț
Fixed class-loading issues so that BatchImport actually runs. The safest thing to do when you need to load a class by its name is to get hold of grailsApplication.classLoader, because that is the grand-daddy of all class loaders in Grails.
Raza Ali
Completed concurrency tests for GitManager Wrote two tests. The first ensures that multiple threads can use the VcsManager read/write functions if they are requesting different models. The second ensures that multiple threads are not allowed access to the same model. In both cases concurrent access and repository correctness is verified.
Mihai Glonț
Disabled transactional behaviour for FileSystemService. Since this service only contains utility methods that do not write to the database, there is not need for it to be transactional.
Mihai Glonț
Added the core submission logic, but ran into DI hell. Cannot seem to be able to instantiate any command object such as ModelTransportCommand or ModelFormatTransportCommand. I suspect this is a Grails bug.
Raza Ali
Concurrency test updated to use VcsService Previous tests used model service which introduces uncertainty due to database reads/validation etc. Now the test uses vcsservice directly. Additionally correctness checks are also performed, testing that concurrently read/written files are not corrupted.
Raza Ali
Test for Concurrent Access to Model storage added New test checks whether two threads beginning at the same time can access VcsManager concurrently if they are accessing different models. This is done by having one read a small model, and another write a large one, and asserting whether the former terminates before the latter. The reliability of the test is increased as the file size for the second thread is increased. However, the execution time…
Raza Ali
Quickfix to Concurrency tests
Raza Ali
Partial implementation of concurrency testing
Raza Ali
GitManager syncrhonised at model level Previous implementation did not allow concurrent access to the repository. This has been modified to be at model-level. Tests pass currently but are single-threaded. Concurrency testing needs to be performed!
Mihai Glonț
Draft BatchImport script as a potential means of submitting models to JUMMP. For the time being, BatchImport only takes care of the prerequisites of the submission, without actually submitting the models. This will be added later. Refer to the script's documentation for usage details. Also added a note in TestCore to say that it is no longer of use.
Mihai Glonț
Added integration tests that simulate the submission workflow. The new tests can be used to populate Jummp with a selection of models contained within a predefined folder. Warning: the database is dropped after the test finishes if the testing environment is used.
Mihai Glonț
Configured Hibernate to release database connections. As a result, we now no longer see ERROR util.JDBCExceptionReporter - Cannot get a connection, general error in the logs. Hopefully it stays that way for good.
Mihai Glonț
Created replacement for the jummp loader. Jummp-loader requires updating to reflect the latest changes to the model storage infrastructure. In the meanwhile, we have developed a sequence of tests that cover the same functionality.
Mihai Glonț
Do not fetch publication details from using CiteXplore. Temporarily keep publication = null until we use EuropePMC web services.
Mihai Glonț
Updated integration tests to use FileSystemService where appropriate. This also means that we ensure that no test models are created in the root model directory.
Raza Ali
SbmlService tests modified to have one model file per directory Current implementation of SbmlService returns the first file in the model directory that is a valid Sbml document. This is problematic for cases where multiple model files are in the directory. We need a non-arbitrary way of getting to the model file we want, instead of getting the first one (or most recent, etc). For now the tests are written to have one model file per directory.
Mihai Glonț
Updated ModelServiceTests to use the FileSystemService.
  1. Prev
  2. Next