Matthew Tretter
906fbbd463
Reduce calls to backend
...
Reading from an `ImageCacheFile`, will result in accessing its `file`
attribute repeatedly which would result in the `before_access` signal
being dispatched, which in turn would result in many unnecessary calls
to the image cache backend. With this change, we don't send
`before_access` if the file has already been created.
Similarly, we don't need to try to generate the image if we know for
certain that it's already been generated (because we have a reference
to it).
2013-05-10 02:56:44 -04:00
Matthew Tretter
bc49f9cf8b
Store the file after we generate it
...
This means reading ImageCacheFiles won't result in an additional storage
operation.
2013-05-10 02:42:28 -04:00
Matthew Tretter
06dd238993
Store cachefile strategy on file; not generator
...
The file can appeal to the generator for the value, but it shouldn't
require it; it just does that as a convenience.
2013-05-10 00:51:47 -04:00
Matthew Tretter
d5d5fc0550
Add cachefile backend fallback
...
The generator shouldn't have to implement `cachefile_backend`
2013-05-10 00:26:46 -04:00
Matthew Tretter
c704db2da5
Sanitize cache keys for memcached
...
Closes #208
2013-04-30 09:32:47 -04:00
Matthew Tretter
2b10e85813
Clarify "force" kwarg
2013-04-02 22:55:44 -04:00
Matthew Tretter
3ca8c53698
Also defer existance check
2013-04-02 22:37:52 -04:00
Matthew Tretter
728368abf6
Add async cachefile backend
2013-04-02 22:29:53 -04:00
Matthew Tretter
86cd23e906
Remove actions module
2013-03-15 01:06:28 -04:00
Matthew Tretter
3d6a9de9aa
Add existence check timeout
2013-03-15 01:05:53 -04:00
Matthew Tretter
1e129c5b70
Convert to boolean
2013-03-15 00:49:24 -04:00
Matthew Tretter
70ff6dc788
Store state when force-generated
2013-03-15 00:30:58 -04:00
Matthew Tretter
c48c720f8a
Add __nonzero__ method that will work for async
2013-03-15 00:27:23 -04:00
Matthew Tretter
fc87c0497c
Add abstract cachefile backend for illustration
2013-03-15 00:20:15 -04:00
Matthew Tretter
54dda25adb
Generation goes through backend; use states
...
We might as well account for asynchronous generation in our
CachedFileBackend.
2013-03-15 00:19:19 -04:00
Matthew Tretter
ac92b77709
Fix loopy existence check
...
Sometimes two wrongs do make a right I guess. But better to have two
rights.
2013-03-14 23:04:30 -04:00
Matthew Tretter
f181d30008
Rename file_exists to exists
2013-03-14 22:58:28 -04:00
Matthew Tretter
044a3625f9
Correct error message
2013-03-14 22:55:40 -04:00
Matthew Tretter
b33869a9f8
Sourceless specs are falsy
...
Passes test added in 190153d . Related to #187
2013-02-25 22:18:33 -05:00
Matthew Tretter
969275bbc9
Rename GeneratedImageFile to ImageCacheFile
2013-02-08 18:15:00 -05:00
Matthew Tretter
301adc2087
Let's call em cachefiles
...
Changed my mind about 04aa72c1f9 . It's
just a better description, even if different strategies can change the
behavior so it isn't really very cache-like.
2013-02-04 19:52:38 -05:00