Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ExtendedStorageManager for an arbitrary amount of ExtendedStorage #278

Closed
wants to merge 6 commits into from
Closed

ExtendedStorageManager for an arbitrary amount of ExtendedStorage #278

wants to merge 6 commits into from

Conversation

b3nn0
Copy link

@b3nn0 b3nn0 commented Oct 31, 2014

Hi,
This introduces an ExtendedStorageManager, which, by itself, is also an ExtendedStorage and can handle an arbitrary amount of sub-storages.
In addition it introduces an ExtendedStorageAccess (similar to NodeAccess) interface (and implementation).
To save space in common situation, during graph creation, one can specify either
a) a normal ExtendedStorage, in this case, it will mainly matche the old behaviour of storing ints directly in the graph or
b) an ExtendedStorageManager. In this case, the in-graph-extended-storage will point to the ExtendedStorageManager, which will then contain the ints.

It is possible to only use a subset of the ExtendedStorages that were provided during Graph creation. The ExtendedStorageManager will then figure out what to do, with the help of some properties that were written to the "properties" file.

The GHExtendedStorageAccess is able to correctly determine if it is working on a normal ExtendedStorage object or if it is working on an ExtendedStorageManager and will act accordingly.

A couple of tests were added to make sure that the ExtendedStorageManager and Access class work as intended.

@karussell
Copy link
Member

Thanks, I'll have a look into this!

@karussell
Copy link
Member

Related to #276

@karussell
Copy link
Member

According to email discussion: is there a newer version of this and any news about the CLA signing?

@karussell
Copy link
Member

Due to major refactorings happening since them and easier structure after #111 I'm closing this for now. Feel free to update or resurrect.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants