Can i make plugin

Submitted by Anonymous on Tue, 2007-04-10 16:25.

Hi!!

Can i make plugin for this server ?
(for example to work for a new database)

Thanks for helping

Trackback URL for this post:

http://www.tigase.org/en/trackback/867
kobit's picture
Submitted by kobit on Tue, 2007-04-10 21:18.

Tigase is open source code under GPL2 license so you are free to use the code and add more features if you like.

I am now working on developers documentation to make adding plugins and other stuff easier. In mean time however I am happy to assist you with creating new plugins and components.

Just a few basic terms definitions in Tigase world to make our further discussion easier:

  1. plugin - small piece of code. Plugins in Tigase are responsible for handling particular stanzas. They don't have own address and they usually act on behalf of the user. For example authentication plugin can process all SASL related stanzas, vCard plugin can process, store retrieve vCard user data and so on.....
  2. components - bigger piece of code. Usually has own address so you can send stanza to this module. Sample components are: external component, session manager, s2s connection manager, MUC and so on....
  3. connector - module responsible for connecting to data source like database, LDAP, or any data storage. There are 2 kinds of connectors: authentication connector (implementing tigase.db.UserAuthRepository interface) and user data connector (implementing tigase.db.UserRepository interface). They can access data from different independent repositories.

So as I understand you want to implement connector. What kind of connector you want to implement? In theory you just need to implement one (or both) of mentioned earlier interfaces and that's it. You can set your implementation to load in Tigase configuration file.

In tigase.db.jdbc or tigase.db.xml package you can find a few existing implementations as a sample code.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.