-
Notifications
You must be signed in to change notification settings - Fork 5
An SPI (Service Provider Interface) is an API addressed to third-party libraries. This particular API allows to extends the features provided by the framework without having to modify its source code. A business developer will then benefit from additional features by adding libraries which extends the framework SPI.
An example often quote is JDBC (Java Data Base Connectivity), the Oracle framework used to access databases. Sun, the JDBC creator didn't develop implementations for all the databases in the market. It would have been to much work. Instead they develop a unique API to work in the same way, regardless the relational database. The users use JDBC to write the code to access their database, but they choose a library using the JDBC SPI according their database. For instance, the PostgreSQL editor provides on its website the driver to access its database through JDBC.
- Introduction
- ... Motivation
- ... Features
- ... Manifesto
- User manual
- ... Kernel
- ...... Kernel Life Cycle
- ...... Kernel Configuration
- ... Plugin
- ...... Plugin Life cycle
- ...... Request API
- ...... Native Module
- ...... Dependencies
- ... Tests
- ...... Integration Tests
- Advanced topics
- ... Design Best Practices
- ... Multi-Round Plugin
- ... Kernel param aliases
- ... SPI
- ...... DI Provider
- ...... Concern
- ...... Extension
- Definitions
- ... Framework
- ... Entreprise Stack
- ... API
- ... SPI
- ... Library
- ... Inversion of Control
- ... Dependency Injection
- Concepts
- ... UnitModule
- ... GlobalModule
- ... ObjectGraph