Development
DevelopmentSince i've started this wiki way when most things were already done .. this is by far not complete ;)
1. Overview of plugins
GOIM2 consists of various plugins/projects where most of them are designed to be exchangeable.
1.1. Core
Project required for the core functionality (message & presence)
- net.sphene.goim - The base project which contains no source code, only the product and feature definition.
- net.sphene.goim.core - Contains the basic interfaces which are required for Instant Messenging as well as simple implementations which can be used by implementors as a base.
- net.sphene.goim.core.ui - Contains the basic interfaces for the GUI of the Instant Messenger as well as abstract implementations which can be used by implementors as a starting point.
- net.sphene.goim.internal - Implementations of a couple of net.sphene.goim.core interfaces - like event handling, chat manager & co.
- net.sphene.goim.internal.ui - Basic GUI implementations which is at the core of GOIM2 - like preferences, wizards (account management, adding contacts, ..)
- net.sphene.goim.rcp2 - Contains the implementations required for a RCP application.
- net.sphene.goim.rcpreqs - Simple feature which references the required features and plugins for GOIM2 RCP application.
1.2. Implementations
- net.sphene.goim.protocol.jabber
- net.sphene.goim.protocol.jabber.ui
- net.sphene.goim.protocol.oscar
- net.sphene.goim.protocol.oscar.ui
- net.sphene.goim.ui.chatuihandler
- net.sphene.goim.ui.chatwindow
- net.sphene.goim.ui.contactlist
1.3. Extensions
- net.sphene.goim.gameprovider
- net.sphene.goim.gameprovider.simple
- net.sphene.goim.netstat
- net.sphene.goim.protocol.jabber.gameprovider
- net.sphene.goim.ui.tray
2. How packet extensions should work
Every IPacket can have unlimited number of packet extensions -> IPacketExtension. These IPacketExtension are Adaptable and therefore don't need to expose any additional specific API.
3. Various
- Development/Todo - Small todo list
- Development/Improvements - Things waiting to get improved
- Development/SetUpIDE - How you can set up eclipse to compile GOIM 2.
- Development/CreatingProtocolExtensions - Short explanation on how to create a new protocol extension for GOIM 2 and therefore adding support for a new protocol
Last Modified: 2008-03-08 13:28:07 by Herbert Poul - [ Snip Changes ] [ Wiki History ]
Comments
No comments yet.