Skip to content

Commit 132438f

Browse files
committed
remove plugin manager callbacks from bcv check
1 parent a7e8dc2 commit 132438f

5 files changed

Lines changed: 23 additions & 6 deletions

File tree

‎plugin-api/api/plugin-api.api‎

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -108,21 +108,18 @@ public abstract interface class com/itsaky/androidide/plugins/ServiceRegistry {
108108
public abstract fun unregister (Ljava/lang/Class;)V
109109
}
110110

111+
public abstract interface annotation class com/itsaky/androidide/plugins/base/InternalPluginApi : java/lang/annotation/Annotation {
112+
}
113+
111114
public final class com/itsaky/androidide/plugins/base/PluginFragmentHelper {
112115
public static final field INSTANCE Lcom/itsaky/androidide/plugins/base/PluginFragmentHelper;
113-
public static final fun clearAllContexts ()V
114116
public static final fun getCurrentActivityContext (Ljava/lang/String;)Landroid/content/Context;
115117
public static final fun getCurrentActivityTheme (Ljava/lang/String;)Landroid/content/res/Resources$Theme;
116118
public static final fun getOnPluginInflationError ()Lkotlin/jvm/functions/Function2;
117119
public static final fun getPluginContext (Ljava/lang/String;)Landroid/content/Context;
118120
public static final fun getPluginInflater (Ljava/lang/String;Landroid/view/LayoutInflater;)Landroid/view/LayoutInflater;
119121
public static final fun getServiceRegistry (Ljava/lang/String;)Lcom/itsaky/androidide/plugins/ServiceRegistry;
120-
public static final fun registerPluginContext (Ljava/lang/String;Landroid/content/Context;)V
121-
public static final fun registerPluginContext (Ljava/lang/String;Landroid/content/Context;Z)V
122-
public static synthetic fun registerPluginContext$default (Ljava/lang/String;Landroid/content/Context;ZILjava/lang/Object;)V
123-
public static final fun registerServiceRegistry (Ljava/lang/String;Lcom/itsaky/androidide/plugins/ServiceRegistry;)V
124122
public static final fun setOnPluginInflationError (Lkotlin/jvm/functions/Function2;)V
125-
public static final fun unregisterPluginContext (Ljava/lang/String;)V
126123
}
127124

128125
public final class com/itsaky/androidide/plugins/base/SafePluginLayoutInflater : android/view/LayoutInflater {

‎plugin-api/build.gradle.kts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ kotlin {
3030

3131
apiValidation {
3232
ignoredClasses.add("com.itsaky.androidide.plugins.api.BuildConfig")
33+
nonPublicMarkers.add("com.itsaky.androidide.plugins.base.InternalPluginApi")
3334
}
3435

3536
dependencies {
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package com.itsaky.androidide.plugins.base
2+
3+
@RequiresOptIn(
4+
level = RequiresOptIn.Level.ERROR,
5+
message = "Host-internal plugin API: only the IDE host (plugin manager) may call it, not plugins.",
6+
)
7+
@Retention(AnnotationRetention.BINARY)
8+
@Target(AnnotationTarget.FUNCTION)
9+
annotation class InternalPluginApi

‎plugin-api/src/main/kotlin/com/itsaky/androidide/plugins/base/PluginFragment.kt‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ object PluginFragmentHelper {
4141
* Register a plugin's resource context.
4242
* Called by the plugin manager when loading APK-based plugins.
4343
*/
44+
@InternalPluginApi
4445
@JvmStatic
4546
@JvmOverloads
4647
fun registerPluginContext(pluginId: String, context: Context, isLegacy: Boolean = false) {
@@ -52,6 +53,7 @@ object PluginFragmentHelper {
5253
* Unregister a plugin's resource context.
5354
* Called when a plugin is unloaded.
5455
*/
56+
@InternalPluginApi
5557
@JvmStatic
5658
fun unregisterPluginContext(pluginId: String) {
5759
pluginContexts.remove(pluginId)
@@ -71,6 +73,7 @@ object PluginFragmentHelper {
7173
* Register a plugin's service registry.
7274
* Called by the plugin manager when creating plugin context.
7375
*/
76+
@InternalPluginApi
7477
@JvmStatic
7578
fun registerServiceRegistry(pluginId: String, registry: ServiceRegistry) {
7679
serviceRegistries[pluginId] = registry
@@ -87,6 +90,7 @@ object PluginFragmentHelper {
8790
/**
8891
* Clear all registered plugin contexts.
8992
*/
93+
@InternalPluginApi
9094
@JvmStatic
9195
fun clearAllContexts() {
9296
pluginContexts.clear()

‎plugin-manager/build.gradle.kts‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ android {
1313
}
1414
}
1515

16+
kotlin {
17+
compilerOptions {
18+
optIn.add("com.itsaky.androidide.plugins.base.InternalPluginApi")
19+
}
20+
}
21+
1622
dependencies {
1723
api(projects.pluginApi)
1824

0 commit comments

Comments
 (0)