Service provider interface (SPI) is an
API intended to be implemented or extended by a third party. It can be used to enable framework extension and replaceable components.
Details
From Java documentation:
The concept can be extended to other platforms using the corresponding tools. In the
Java Runtime Environment
Java is a set of computer software and specifications developed by James Gosling at Sun Microsystems, which was later acquired by the Oracle Corporation, that provides a system for developing application software and deploying it in a c ...
, SPIs are used in:
[
*]Java Database Connectivity
Java Database Connectivity (JDBC) is an application programming interface (API) for the programming language Java, which defines how a client may access a database. It is a Java-based data access technology used for Java database connectivity. ...
* Java Cryptography Extension
* Java Naming and Directory Interface
*Java API for XML Processing
In computing, the Java API for XML Processing, or JAXP ( ), one of the Java XML Application programming interfaces, provides the capability of validating and parsing XML documents. It has three basic parsing interfaces:
* the Document Obje ...
* Java Business Integration
*Java Sound
*Java Image I/O
*Java File Systems
See also
*Plug-in (computing)
In computing, a plug-in (or plugin, add-in, addin, add-on, or addon) is a software component that adds a specific feature to an existing computer program. When a program supports plug-ins, it enables customization.
A theme or skin is a prese ...
*Java (programming language)
Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let programmers ''write once, run an ...
*Java (software platform)
Java is a set of computer software and specifications developed by James Gosling at Sun Microsystems, which was later acquired by the Oracle Corporation, that provides a system for developing application software and deploying it in a c ...
References
External links
Replaceable Components and the Service Provider Interface
(.pdf at The Software Engineering Institute
The Software Engineering Institute (SEI) is an American research and development center headquartered in Pittsburgh, Pennsylvania. Its activities cover cybersecurity, software assurance, software engineering and acquisition, and component capab ...
CMU)
*Official Java API documentation
java.util.ServiceLoader
class an
package
Technical communication
Application programming interfaces
{{prog-lang-stub