Cleaned up ContentProviderUtils's factory pattern.

This commit is contained in:
Dennis Guse
2019-09-10 20:49:47 +02:00
parent f5656470a9
commit 0864bc8104
@@ -353,45 +353,14 @@ public interface ContentProviderUtils {
/**
* A factory which can produce instances of {@link ContentProviderUtils}, and can be overridden for testing.
*/
//TODO Is this still used? From a quick glance, it doesn't looks like it; probably a left over from testing.
@Deprecated
class Factory {
private static Factory instance = new Factory();
/**
* Creates an instance of {@link ContentProviderUtils}.
*
* @param context the context
*/
public static ContentProviderUtils get(Context context) {
return instance.newForContext(context);
}
/**
* Returns the factory instance.
*/
public static Factory getInstance() {
return instance;
}
/**
* Overrides the factory instance for testing.
* Don't forget to set it back to the original value after testing.
*
* @param factory the factory
*/
public static void overrideInstance(Factory factory) {
instance = factory;
}
/**
* Creates an instance of {@link ContentProviderUtils}. Allows subclasses
* to override for testing.
*
* @param context the context
*/
private ContentProviderUtils newForContext(Context context) {
return new ContentProviderUtilsImpl(context.getContentResolver());
}
}