Separation of extension's API and SPI
Issue #22
closed
Due to Java's language specification, a in interface's method has to be public when implemented by a class. Extensions have to implement two interfaces: The API, used by the application vendor and typically small (for example only "getAvatar" and "publishAvatar" for AvatarManager), and the SPI, used by the Babbler kernel to invoke extensions (for example sessionStatusChanged, handleMessage and handlePresence). As a consequence, it is sometimes not easy for the begginer to understand what methods of an extensions are part of the API and which are part of the SPI. It would be good if this could be more clear, and to prevent applications from calling SPI methods (so applications do not "see" those messages).
Comments (5)
-
repo owner -
reporter Cool :-)
-
repo owner - changed status to resolved
-
repo owner - changed status to closed
-
repo owner - changed version to 0.5.0
- Log in to comment
Should be fixed with dc35e150f61836ad73b1459eae5b277d6c7a8036 and fc57de06af524ec42446c969a97a0bf2b3569110