Task #27764

Introduce abstract storage adapter class

Added by Andreas Wolf almost 10 years ago. Updated almost 10 years ago.

Status:
Accepted
Priority:
Should have
Assignee:
Category:
-
Target version:
-
Start date:
2011-06-29
Due date:
% Done:

0%

Estimated time:
Sprint:
Branch:
Tags:

Description

The storage adapters share a lot of functionality, which seems to be duplicated in each of them. Therefore, some common functionality should be moved to an abstract base class.


Related issues

Related to Semantic Web Integration (v4) - Task #27785: Move all storage-adapters to their own namespacesAcceptedAndreas Wolf2011-06-30

Actions
#1

Updated by Thomas Maroschik almost 10 years ago

  • Status changed from New to Accepted

+1 for that

do you have any clue how to better integrate the 3 different backends, sqlgenerator, query backend, storage backend?

I would like to make packages out of the backends, so they get shipped in parallel with the erfurt distribution.

#2

Updated by Andreas Wolf almost 10 years ago

You're right, there's more things that are storage-related, so we should try to unify all these in a common place. I suggest a structure like this:

  • \Erfurt\Storage\<StorageType, e.g. Typo3, >\
    • SqlGeneratorAdapter
    • EngineDbAdapter
    • StorageAdapter
    • AuthenticationProvider

What do you think? An open question for me is how the rest of Erfurt then gets the neccessary library - if we factor out everything into the storage packages and provide a tiny interface that is used by the rest, or if we still directly use all these adapters. I fear the latter will get us into trouble for e.g. non-SQL storages - so we might need a larger scale architectural overhaul.

Also available in: Atom PDF