nio-blocks/mixins — pull request #9 by cloudformdesign (2014-11-07 21:20:12+00:00)
Title: Persistence changes

IMPORTANT: Change is not backwards compatible with blocks that use groupby -- need to update all blocks

This is an issue with how mixins + persistence is implemented. Instead of the upper level block handling the persistence for mixin attributes, the Mixin should have it's own _load and _store methods that the upper level block has to call (if they exist).

Probably a better option would be for the self.persistence have a list called `methods`where every Block / Mixin can add their own load/store methods. This way you could write code like this:

```
def __init__(self, ...):
def load(self):
self.value = self.persistence.load("value") or 0
def store(self):
self.persistence.store("value", self.value)
self.persistence.methods.append((load, store))
```

Then no block that inherrits mixins has to worry about this.