This is a helper class for BufferedStore & TransactionalStore, which buffer real cache requests in memory. The memory-part can easily be handled by MemoryStore. There's just 1 gotcha: when an item is to be deleted (but not yet committed), it needs to be deleted from the MemoryStore too, but we need to be able to make a distinction between "this is deleted" and "this value is not known in this memory cache, fall back to real cache".
This is where this class comes in to play: we'll add an additional "expired" method, which allows BufferedStore to just expire the keys that are supposed to be deleted (instead of deleting them) - then we can keep track of when a key is just not known, or known-but-deleted (=expired)
- MatthiasMullie\Scrapbook\Adapters\MemoryStore implements MatthiasMullie\Scrapbook\KeyValueStore
Copyright: Copyright (c) 2014, Matthias Mullie. All rights reserved
Author: Matthias Mullie email@example.com
Located at Buffered/Utils/Buffer.php
Methods inherited from MatthiasMullie\Scrapbook\Adapters\MemoryStore
Make items publicly available - if we create a collection from this, that collection will need to be able to access these items to determine if something has expired.