public abstract class IIOServiceProvider extends Object implements RegisterableService
IIORegistry class.| Modifier and Type | Field and Description | 
|---|---|
| protected String | vendorNameA  Stringto be returned fromgetVendorName, initiallynull. | 
| protected String | versionA  Stringto be returned fromgetVersion, initially null. | 
| Constructor and Description | 
|---|
| IIOServiceProvider()Constructs a blank  IIOServiceProvider. | 
| IIOServiceProvider(String vendorName,
                  String version)Constructs an  IIOServiceProviderwith a given
 vendor name and version identifier. | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract String | getDescription(Locale locale)Returns a brief, human-readable description of this service
 provider and its associated implementation. | 
| String | getVendorName()Returns the name of the vendor responsible for creating this
 service provider and its associated implementation. | 
| String | getVersion()Returns a string describing the version
 number of this service provider and its associated
 implementation. | 
| void | onDeregistration(ServiceRegistry registry,
                Class<?> category)A callback that will be whenever the Spi class has been
 deregistered from a  ServiceRegistry. | 
| void | onRegistration(ServiceRegistry registry,
              Class<?> category)A callback that will be called exactly once after the Spi class
 has been instantiated and registered in a
  ServiceRegistry. | 
protected String vendorName
String to be returned from
 getVendorName, initially null.
 Constructors should set this to a non-null value.protected String version
String to be returned from
 getVersion, initially null.  Constructors should
 set this to a non-null value.public IIOServiceProvider(String vendorName, String version)
IIOServiceProvider with a given
 vendor name and version identifier.vendorName - the vendor name.version - a version identifier.IllegalArgumentException - if vendorName
 is null.IllegalArgumentException - if version
 is null.public IIOServiceProvider()
IIOServiceProvider.  It is up
 to the subclass to initialize instance variables and/or
 override method implementations in order to ensure that the
 getVendorName and getVersion methods
 will return non-null values.public void onRegistration(ServiceRegistry registry, Class<?> category)
ServiceRegistry.  This may be used to verify that
 the environment is suitable for this service, for example that
 native libraries can be loaded.  If the service cannot function
 in the environment where it finds itself, it should deregister
 itself from the registry.
 Only the registry should call this method.
The default implementation does nothing.
onRegistration in interface RegisterableServiceregistry - a ServiceRegistry where this
 object has been registered.category - a Class object indicating the
 registry category under which this object has been registered.ServiceRegistry.registerServiceProvider(Object provider)public void onDeregistration(ServiceRegistry registry, Class<?> category)
ServiceRegistry.
 Only the registry should call this method.
The default implementation does nothing.
onDeregistration in interface RegisterableServiceregistry - a ServiceRegistry from which this
 object is being (wholly or partially) deregistered.category - a Class object indicating the
 registry category from which this object is being deregistered.ServiceRegistry.deregisterServiceProvider(Object provider)public String getVendorName()
 The default implementation returns the value of the
 vendorName instance variable.
null String containing
 the name of the vendor.public String getVersion()
 The default implementation returns the value of the
 version instance variable.
null String containing
 the version of this service provider.public abstract String getDescription(Locale locale)
Locale, if possible.locale - a Locale for which the return value
 should be localized.String containing a description of this
 service provider. Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2015, Oracle and/or its affiliates.  All rights reserved.