Use literal identifier for ImportJobStoreFactory #4083
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Moves some table logic from
JobStoreFactory
toDeprecatedJobStoreFactoryTrait
. This trait contains all the behavior we want to leave behind, for both deprecated table names, and deriving the table name from an identifier.Adds
AbstractJobStoreFactory
, which allows subclasses to dictate the table name. Also usesDeprecatedJobStoreFactoryTrait
as a fallback to performs all the logic for determining the table name.Adds
ImportJobStoreFactory
, which is a subclass ofAbstractJobStoreFactory
. This hard-codes the table name asjobstore_2613055649_importjob
for historical reasons.Adds
dkan.datastore.import_job_store_factory
service, which isImportJobStoreFactory
.Deprecates
JobStoreFactory
, which now basically only usesDeprecatedJobStoreFactoryTrait
.Finds all code occurrences which uses the old calling system like this:
$this->jobStoreFactory->getInstance(ImportJob::class)
, and replaces them with$this->importJobStoreFactory->getInstance()
. This includes replacing or adding the import job store factory service.Updates tests to pass.
Adds tests for
AbstractJobStoreFactory
.