public synchronized <Model, Data> void replace( @NonNull Class<Model> modelClass, @NonNull Class<Data> dataClass, @NonNull ModelLoaderFactory<? extends Model, ? extends Data> factory) { tearDown(multiModelLoaderFactory.replace(modelClass, dataClass, factory)); cache.clear(); }
@NonNull private synchronized <A> List<ModelLoader<A, ?>> getModelLoadersForClass( @NonNull Class<A> modelClass) { List<ModelLoader<A, ?>> loaders = cache.get(modelClass); if (loaders == null) { loaders = Collections.unmodifiableList(multiModelLoaderFactory.build(modelClass)); cache.put(modelClass, loaders); } return loaders; }
public synchronized <Model, Data> void remove(Class<Model> modelClass, Class<Data> dataClass) { tearDown(multiModelLoaderFactory.remove(modelClass, dataClass)); cache.clear(); }
public synchronized <Model, Data> void replace(Class<Model> modelClass, Class<Data> dataClass, ModelLoaderFactory<Model, Data> factory) { tearDown(multiModelLoaderFactory.replace(modelClass, dataClass, factory)); cache.clear(); }
public synchronized <Model, Data> void prepend(Class<Model> modelClass, Class<Data> dataClass, ModelLoaderFactory<Model, Data> factory) { multiModelLoaderFactory.prepend(modelClass, dataClass, factory); cache.clear(); }
public synchronized <Model, Data> void append(Class<Model> modelClass, Class<Data> dataClass, ModelLoaderFactory<Model, Data> factory) { multiModelLoaderFactory.append(modelClass, dataClass, factory); cache.clear(); }
public synchronized <Model, Data> void prepend( @NonNull Class<Model> modelClass, @NonNull Class<Data> dataClass, @NonNull ModelLoaderFactory<? extends Model, ? extends Data> factory) { multiModelLoaderFactory.prepend(modelClass, dataClass, factory); cache.clear(); }
public synchronized <Model, Data> void remove(@NonNull Class<Model> modelClass, @NonNull Class<Data> dataClass) { tearDown(multiModelLoaderFactory.remove(modelClass, dataClass)); cache.clear(); }
public synchronized <Model, Data> void append( @NonNull Class<Model> modelClass, @NonNull Class<Data> dataClass, @NonNull ModelLoaderFactory<? extends Model, ? extends Data> factory) { multiModelLoaderFactory.append(modelClass, dataClass, factory); cache.clear(); }