+ @Override
+ public Image getAuthorCover(String author) {
+ Image custom = getCustomAuthorCover(author);
+ if (custom != null) {
+ return custom;
+ }
+
+ Image cached = cacheLib.getAuthorCover(author);
+ if (cached != null) {
+ return cached;
+ }
+
+ return lib.getAuthorCover(author);
+ }
+
+ @Override
+ public Image getCustomSourceCover(String source) {
+ Image custom = cacheLib.getCustomSourceCover(source);
+ if (custom == null) {
+ custom = lib.getCustomSourceCover(source);
+ if (custom != null) {
+ cacheLib.setSourceCover(source, custom);
+ }
+ }
+
+ return custom;
+ }
+
+ @Override
+ public Image getCustomAuthorCover(String author) {
+ Image custom = cacheLib.getCustomAuthorCover(author);
+ if (custom == null) {
+ custom = lib.getCustomAuthorCover(author);
+ if (custom != null) {
+ cacheLib.setAuthorCover(author, custom);
+ }
+ }
+
+ return custom;
+ }
+