diff --git a/medialibrary/jni/AndroidMediaLibrary.cpp b/medialibrary/jni/AndroidMediaLibrary.cpp index 5989aaff0..1782d461f 100644 --- a/medialibrary/jni/AndroidMediaLibrary.cpp +++ b/medialibrary/jni/AndroidMediaLibrary.cpp @@ -1231,6 +1231,12 @@ AndroidMediaLibrary::getGlobalSubscriptionMaxCacheSize() return p_ml->getMaxCacheSize(); } +bool +AndroidMediaLibrary::refreshAllSubscriptions() +{ + return p_ml->refreshAllSubscriptions(); +} + void AndroidMediaLibrary::onSubscriptionsAdded( std::vector ) { } diff --git a/medialibrary/jni/AndroidMediaLibrary.h b/medialibrary/jni/AndroidMediaLibrary.h index a9882dc1a..266c7f058 100644 --- a/medialibrary/jni/AndroidMediaLibrary.h +++ b/medialibrary/jni/AndroidMediaLibrary.h @@ -198,6 +198,7 @@ public: uint32_t getSubscriptionMaxCachedMedia(); uint64_t getSubscriptionMaxCacheSize(); uint64_t getGlobalSubscriptionMaxCacheSize(); + bool refreshAllSubscriptions(); void onSubscriptionsAdded( std::vector ); void onSubscriptionsModified( std::set ); void onSubscriptionsDeleted( std::set ); diff --git a/medialibrary/jni/medialibrary.cpp b/medialibrary/jni/medialibrary.cpp index 716dba290..66cc6a564 100644 --- a/medialibrary/jni/medialibrary.cpp +++ b/medialibrary/jni/medialibrary.cpp @@ -2121,6 +2121,12 @@ jlong getGlobalSubscriptionMaxCacheSize(JNIEnv* env, jobject thiz, jobject media return aml->getGlobalSubscriptionMaxCacheSize(); } +jboolean refreshAllSubscriptions(JNIEnv* env, jobject thiz, jobject ml) +{ + AndroidMediaLibrary *aml = MediaLibrary_getInstance(env, ml); + return aml->refreshAllSubscriptions(); +} + /* * Services */ @@ -2527,6 +2533,7 @@ static JNINativeMethod methods[] = { {"nativeGetSubscriptionMaxCacheMedia", "(Lorg/videolan/medialibrary/interfaces/Medialibrary;)I", (void*)getSubscriptionMaxCachedMedia}, {"nativeGetSubscriptionMaxCacheSize", "(Lorg/videolan/medialibrary/interfaces/Medialibrary;)J", (void*)getSubscriptionMaxCacheSize}, {"nativeGetGlobalSubscriptionMaxCacheSize", "(Lorg/videolan/medialibrary/interfaces/Medialibrary;)J", (void*)getGlobalSubscriptionMaxCacheSize}, + {"nativeRefreshAllSubscriptions", "(Lorg/videolan/medialibrary/interfaces/Medialibrary;)Z", (void*)refreshAllSubscriptions}, }; static JNINativeMethod media_methods[] = { diff --git a/medialibrary/src/org/videolan/medialibrary/MedialibraryImpl.java b/medialibrary/src/org/videolan/medialibrary/MedialibraryImpl.java index 17239c493..b427845d2 100644 --- a/medialibrary/src/org/videolan/medialibrary/MedialibraryImpl.java +++ b/medialibrary/src/org/videolan/medialibrary/MedialibraryImpl.java @@ -644,6 +644,11 @@ public class MedialibraryImpl extends Medialibrary { return mIsInitiated ? nativeGetGlobalSubscriptionMaxCacheSize(this) : -1L; } + @Override + public boolean refreshAllSubscriptions() { + return mIsInitiated && nativeRefreshAllSubscriptions(this); + } + // Native methods private native void nativeConstruct(String dbPath, String thumbsPath); private native int nativeInit(String dbPath); @@ -757,4 +762,5 @@ public class MedialibraryImpl extends Medialibrary { private native int nativeGetSubscriptionMaxCacheMedia(Medialibrary ml); private native long nativeGetSubscriptionMaxCacheSize(Medialibrary ml); private native long nativeGetGlobalSubscriptionMaxCacheSize(Medialibrary ml); + private native boolean nativeRefreshAllSubscriptions(Medialibrary ml); } diff --git a/medialibrary/src/org/videolan/medialibrary/interfaces/Medialibrary.java b/medialibrary/src/org/videolan/medialibrary/interfaces/Medialibrary.java index 8fa2f3f92..b9e832ca3 100644 --- a/medialibrary/src/org/videolan/medialibrary/interfaces/Medialibrary.java +++ b/medialibrary/src/org/videolan/medialibrary/interfaces/Medialibrary.java @@ -811,4 +811,5 @@ abstract public class Medialibrary { abstract public int getSubscriptionMaxCachedMedia(); abstract public long getSubscriptionMaxCacheSize(); abstract public long getGlobalSubscriptionMaxCacheSize(); + abstract public boolean refreshAllSubscriptions(); } diff --git a/medialibrary/src/org/videolan/medialibrary/stubs/StubMedialibrary.java b/medialibrary/src/org/videolan/medialibrary/stubs/StubMedialibrary.java index 354dbc208..83469089c 100644 --- a/medialibrary/src/org/videolan/medialibrary/stubs/StubMedialibrary.java +++ b/medialibrary/src/org/videolan/medialibrary/stubs/StubMedialibrary.java @@ -730,4 +730,9 @@ public class StubMedialibrary extends Medialibrary { public long getGlobalSubscriptionMaxCacheSize() { return -1L; } + + @Override + public boolean refreshAllSubscriptions() { + return false; + } }