Package com.io7m.smfj.probe.api

## Class SMFVersionProbeControllerOSGi

- java.lang.Object
- - com.io7m.smfj.probe.api.SMFVersionProbeControllerOSGi

- All Implemented Interfaces:
    `SMFVersionProbeControllerType`

      public final class SMFVersionProbeControllerOSGi
      extends java.lang.Object
      implements SMFVersionProbeControllerType

  An OSGi probe controller component.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SMFVersionProbeControllerOSGi()` | Construct an OSGi probe controller component.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `onProbeProviderAdd​(SMFVersionProbeProviderType provider)` | Register a version probe provider.
    `void` | `onProbeProviderRemove​(SMFVersionProbeProviderType provider)` | Unregister a version probe provider.
    `SMFPartialLogged<SMFVersionProbed>` | `probe​(java.util.function.Supplier<java.io.InputStream> streams)` | Probe the given file.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SMFVersionProbeControllerOSGi

          public SMFVersionProbeControllerOSGi()

      Construct an OSGi probe controller component.

  - ### Method Detail

    - #### onProbeProviderAdd

          public void onProbeProviderAdd​(SMFVersionProbeProviderType provider)

      Register a version probe provider.
      Parameters:
        `provider` - The provider

    - #### onProbeProviderRemove

          public void onProbeProviderRemove​(SMFVersionProbeProviderType provider)

      Unregister a version probe provider.
      Parameters:
        `provider` - The provider

    - #### probe

          public SMFPartialLogged<SMFVersionProbed> probe​(java.util.function.Supplier<java.io.InputStream> streams)

      Description copied from interface: `SMFVersionProbeControllerType`
      Probe the given file.
      Specified by:
        `probe` in interface `SMFVersionProbeControllerType`
      Parameters:
        `streams` - A supplier that is capable of repeatedly re-opening a file
      Returns:
        A probed version or a set of errors