io.flutter.embedding.engine.plugins

## Interface PluginRegistry

-     public interface PluginRegistry

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(FlutterPlugin plugin)` Attaches the given `plugin` to the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `add(Set<FlutterPlugin> plugins)` Attaches the given `plugins` to the `FlutterEngine` associated with this `PluginRegistry`.
    `FlutterPlugin` | `get(Class<? extends FlutterPlugin> pluginClass)` Returns the instance of a plugin that is currently attached to the `FlutterEngine` associated with this `PluginRegistry`, which matches the given `pluginClass`.
    `boolean` | `has(Class<? extends FlutterPlugin> pluginClass)` Returns true if a plugin of the given type is currently attached to the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `remove(Class<? extends FlutterPlugin> pluginClass)` Detaches the plugin of the given type from the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `remove(Set<Class<? extends FlutterPlugin>> plugins)` Detaches the plugins of the given types from the `FlutterEngine` associated with this `PluginRegistry`.
    `void` | `removeAll()` Detaches all plugins that are currently attached to the `FlutterEngine` associated with this `PluginRegistry`.

- - ### Method Detail

    - #### add

          void add(@NonNull
                   FlutterPlugin plugin)

      Attaches the given `plugin` to the `FlutterEngine` associated with this `PluginRegistry`.

    - #### add

          void add(@NonNull
                   Set<FlutterPlugin> plugins)

      Attaches the given `plugins` to the `FlutterEngine` associated with this `PluginRegistry`.

    - #### has

          boolean has(@NonNull
                      Class<? extends FlutterPlugin> pluginClass)

      Returns true if a plugin of the given type is currently attached to the `FlutterEngine` associated with this `PluginRegistry`.

    - #### get

          @Nullable
          FlutterPlugin get(@NonNull
                                      Class<? extends FlutterPlugin> pluginClass)

      Returns the instance of a plugin that is currently attached to the `FlutterEngine` associated with this `PluginRegistry`, which matches the given `pluginClass`.

      If no matching plugin is found, `null` is returned.

    - #### remove

          void remove(@NonNull
                      Class<? extends FlutterPlugin> pluginClass)

      Detaches the plugin of the given type from the `FlutterEngine` associated with this `PluginRegistry`.

      If no such plugin exists, this method does nothing.

    - #### remove

          void remove(@NonNull
                      Set<Class<? extends FlutterPlugin>> plugins)

      Detaches the plugins of the given types from the `FlutterEngine` associated with this `PluginRegistry`.

      If no such plugins exist, this method does nothing.

    - #### removeAll

          void removeAll()

      Detaches all plugins that are currently attached to the `FlutterEngine` associated with this `PluginRegistry`.

      If no plugins are currently attached, this method does nothing.