@VisibleForTesting
  /* package protected */ synchronized DiskStorage get() throws IOException {
    if (shouldCreateNewStorage()) {
      // discard anything we created
      deleteOldStorageIfNecessary();
      createStorage();
    }
    return Preconditions.checkNotNull(mCurrentState.delegate);
  }
Gets a concrete disk-storage instance. If nothing has changed since the last call, then the
last state is returned

@return an instance of the appropriate DiskStorage class
@throws IOException
imagepipeline-base/src/main/java/com/facebook/cache/disk/DynamicDefaultDiskStorage.java