Wildfire 3.2.4 Javadoc

org.jivesoftware.wildfire.handler
Class IQPrivateHandler

java.lang.Object
  extended by org.jivesoftware.wildfire.container.BasicModule
      extended by org.jivesoftware.wildfire.handler.IQHandler
          extended by org.jivesoftware.wildfire.handler.IQPrivateHandler
All Implemented Interfaces:
ChannelHandler, Module, ServerFeaturesProvider

public class IQPrivateHandler
extends IQHandler
implements ServerFeaturesProvider

Implements the TYPE_IQ jabber:iq:private protocol. Clients use this protocol to store and retrieve arbitrary application configuration information. Using the server for setting storage allows client configurations to follow users where ever they go.

A 'get' query retrieves any stored data. A 'set' query stores new data.

Currently an empty implementation to allow usage with normal clients. Future implementation needed.

Assumptions

This handler assumes that the request is addressed to the server. An appropriate TYPE_IQ tag matcher should be placed in front of this one to route TYPE_IQ requests not addressed to the server to another channel (probably for direct delivery to the recipient).

Warning

There should be a way of determining whether a session has authorization to access this feature. I'm not sure it is a good idea to do authorization in each handler. It would be nice if the framework could assert authorization policies across channels.

Author:
Iain Shigeoka

Field Summary
 
Fields inherited from class org.jivesoftware.wildfire.handler.IQHandler
deliverer, sessionManager
 
Constructor Summary
IQPrivateHandler()
           
 
Method Summary
 Iterator getFeatures()
          Returns an Iterator (of String) with the supported features by the server.
 IQHandlerInfo getInfo()
          Returns the handler information to help generically handle IQ packets.
 IQ handleIQ(IQ packet)
          Handles the received IQ packet.
 void initialize(XMPPServer server)
          Initializes the basic module.
 
Methods inherited from class org.jivesoftware.wildfire.handler.IQHandler
process
 
Methods inherited from class org.jivesoftware.wildfire.container.BasicModule
destroy, getName, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IQPrivateHandler

public IQPrivateHandler()
Method Detail

handleIQ

public IQ handleIQ(IQ packet)
            throws UnauthorizedException,
                   PacketException
Description copied from class: IQHandler
Handles the received IQ packet.

Specified by:
handleIQ in class IQHandler
Parameters:
packet - the IQ packet to handle.
Returns:
the response to send back.
Throws:
UnauthorizedException - if the user that sent the packet is not authorized to request the given operation.
PacketException

initialize

public void initialize(XMPPServer server)
Description copied from class: BasicModule

Initializes the basic module.

Inheriting classes that choose to override this method MUST call this initialize() method before accessing BasicModule resources.

Specified by:
initialize in interface Module
Overrides:
initialize in class IQHandler
Parameters:
server - the server hosting this module.

getInfo

public IQHandlerInfo getInfo()
Description copied from class: IQHandler
Returns the handler information to help generically handle IQ packets. IQHandlers that aren't local server iq handlers (e.g. chatbots, transports, etc) return null.

Specified by:
getInfo in class IQHandler
Returns:
The IQHandlerInfo for this handler

getFeatures

public Iterator getFeatures()
Description copied from interface: ServerFeaturesProvider
Returns an Iterator (of String) with the supported features by the server. The features to include are the features offered and supported protocols by the SERVER. The idea is that different modules may provide their features that will ultimately be part of the features offered by the server.

Specified by:
getFeatures in interface ServerFeaturesProvider
Returns:
an Iterator (of String) with the supported features by the server.

Wildfire 3.2.4 Javadoc

Copyright © 2003-2007 Jive Software.