Overview | Package | Class | Tree | Deprecated | Index | Help
| Openfire 3.4.3 Javadoc
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jivesoftware.openfire.mediaproxy
Class MediaProxyService

    java.lang.Object
      org.jivesoftware.openfire.container.BasicModule
          org.jivesoftware.openfire.mediaproxy.MediaProxyService

All Implemented Interfaces:
  ChannelHandler, Module, DiscoInfoProvider, DiscoItemsProvider, ServerItemsProvider, RoutableChannelHandler

    public class MediaProxyService

extends BasicModule
implements ServerItemsProvider, RoutableChannelHandler, DiscoInfoProvider, DiscoItemsProvider

A proxy service for UDP traffic such as RTP. It provides Jingle transport candidates to be used for media transmission. The media proxy is especially useful for users behind NAT devices or firewalls that prevent peer to peer communication..

Author:
  Thiago Camargo

Field Summary
`static String` | `NAMESPACE`

Constructor Summary
`MediaProxyService()` Constructs a new MediaProxyService.

Method Summary
`JID` | `getAddress()` Returns the XMPP address.
`Collection<MediaProxySession>` | `getAgents()` Return the list of active Agents
`int` | `getEchoPort()` Get the Port used to the UDP Echo Test
`XDataFormImpl` | `getExtendedInfo(String name, String node, JID senderJID)` Returns an XDataForm with the extended information about the entity or null if none.
`Iterator<String>` | `getFeatures(String name, String node, JID senderJID)` Returns an Iterator (of String) with the supported features.
`Iterator<org.dom4j.Element>` | `getIdentities(String name, String node, JID senderJID)` Returns an Iterator (of Element) with the target entity's identities.
`long` | `getIdleTime()` Returns the maximum amount of time (in milleseconds) that a session can be idle before it's closed.
`Iterator<DiscoServerItem>` | `getItems()` Returns an Iterator (of DiscoServerItem) with the items associated with the server or null if none.
`Iterator<DiscoItem>` | `getItems(String name, String node, JID senderJID)` Returns an Iterator (of DiscoItem) with the target entity's items or null if none.
`long` | `getLifetime()` Get the Life Time of Sessions
`int` | `getMaxPort()` Get Maximum port value to listen from incoming packets.
`int` | `getMinPort()` Get Minimal port value to listen from incoming packets.
`String` | `getName()` Obtain the name of the module.
`String` | `getServiceDomain()` Returns the fully-qualifed domain name of this chat service.
`boolean` | `hasInfo(String name, String node, JID senderJID)` Returns true if we can provide information related to the requested name and node.
`void` | `initialize(XMPPServer server)` Initializes the basic module.
`boolean` | `isEnabled()` Get if the service is enabled.
`void` | `process(Packet packet)` Process an XMPP packet.
`void` | `setEchoPort(int echoPort)` Set the Port used to the UDP Echo Test
`void` | `setEnabled(boolean enabled)` Set the service enable status.
`void` | `setKeepAliveDelay(long delay)` Set the keep alive delay of the mediaproxy agents.
`void` | `setLifetime(long lifetime)` Set the Life time of Sessions
`void` | `setMaxPort(int maxPort)` Set Maximum port value to listen for incoming packets.
`void` | `setMinPort(int minPort)` Set Minimal port value to listen for incoming packets.
`void` | `start()` Starts the basic module.
`void` | `stop()` Stops the basic module.
`void` | `stopAgents()` Stops every running agents

Methods inherited from class org.jivesoftware.openfire.container.BasicModule
`destroy`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### NAMESPACE

    public static final String NAMESPACE

See Also:
  Constant Field Values

Constructor Detail

### MediaProxyService

    public MediaProxyService()

  Constructs a new MediaProxyService.

Method Detail

### 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 `BasicModule`
  Parameters:
    `server` - the server hosting this module.

### start

    public void start()

  Description copied from class: `BasicModule`

  Starts the basic module.

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

  Specified by:
    `start` in interface `Module`
  Overrides:
    `start` in class `BasicModule`

### stop

    public void stop()

  Description copied from class: `BasicModule`

  Stops the basic module.

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

  Specified by:
    `stop` in interface `Module`
  Overrides:
    `stop` in class `BasicModule`

### getName

    public String getName()

  Description copied from class: `BasicModule`

  Obtain the name of the module.

  Specified by:
    `getName` in interface `Module`
  Overrides:
    `getName` in class `BasicModule`
  Returns:
    The name of the module

### getItems

    public Iterator<DiscoItem> getItems(String name,
                                        String node,
                                        JID senderJID)

  Description copied from interface: `DiscoItemsProvider`
  Returns an Iterator (of DiscoItem) with the target entity's items or null if none. Each DiscoItem must include a JID attribute and may include the name and node attributes of the entity. In case that the sender of the disco request is not authorized to discover items an UnauthorizedException will be thrown.

  Specified by:
    `getItems` in interface `DiscoItemsProvider`
  Parameters:
    `name` - the recipient JID's name.
    `node` - the requested disco node.
    `senderJID` - the XMPPAddress of user that sent the disco items request.
  Returns:
    an Iterator (of DiscoItem) with the target entity's items or null if none.

### process

    public void process(Packet packet)
                 throws UnauthorizedException,
                        PacketException

  Description copied from interface: `ChannelHandler`
  Process an XMPP packet.

  Specified by:
    `process` in interface `ChannelHandler`
  Parameters:
    `packet` - a packet to process.
  Throws:
    `UnauthorizedException` - if not allowed to process the packet.
    `PacketException` - thrown if the packet is malformed (results in the sender's session being shutdown).

### getServiceDomain

    public String getServiceDomain()

  Returns the fully-qualifed domain name of this chat service. The domain is composed by the service name and the name of the XMPP server where the service is running.

  Returns:
    the file transfer server domain (service name + host name).

### getAddress

    public JID getAddress()

  Description copied from interface: `RoutableChannelHandler`
  Returns the XMPP address. The address is used by services like the core server packet router to determine if a packet should be sent to the handler. Handlers that are working on behalf of the server should use the generic server hostname address (e.g. server.com).

  Specified by:
    `getAddress` in interface `RoutableChannelHandler`
  Returns:
    the XMPP address.

### getItems

    public Iterator<DiscoServerItem> getItems()

  Description copied from interface: `ServerItemsProvider`
  Returns an Iterator (of DiscoServerItem) with the items associated with the server or null if none.

  Specified by:
    `getItems` in interface `ServerItemsProvider`
  Returns:
    an Iterator (of DiscoServerItem) with the items associated with the server or null if none.

### getIdentities

    public Iterator<org.dom4j.Element> getIdentities(String name,
                                                     String node,
                                                     JID senderJID)

  Description copied from interface: `DiscoInfoProvider`
  Returns an Iterator (of Element) with the target entity's identities. Each Element must include the categoty, type and name attributes of the entity.

  Specified by:
    `getIdentities` in interface `DiscoInfoProvider`
  Parameters:
    `name` - the recipient JID's name.
    `node` - the requested disco node.
    `senderJID` - the XMPPAddress of user that sent the disco info request.
  Returns:
    an Iterator (of Element) with the target entity's identities.

### getFeatures

    public Iterator<String> getFeatures(String name,
                                        String node,
                                        JID senderJID)

  Description copied from interface: `DiscoInfoProvider`
  Returns an Iterator (of String) with the supported features. The features to include are the features offered and supported protocols by the target entity identified by the requested name and node.

  Specified by:
    `getFeatures` in interface `DiscoInfoProvider`
  Parameters:
    `name` - the recipient JID's name.
    `node` - the requested disco node.
    `senderJID` - the XMPPAddress of user that sent the disco info request.
  Returns:
    an Iterator (of String) with the supported features.

### getExtendedInfo

    public XDataFormImpl getExtendedInfo(String name,
                                         String node,
                                         JID senderJID)

  Description copied from interface: `DiscoInfoProvider`
  Returns an XDataForm with the extended information about the entity or null if none. Each bit of information about the entity must be included as a value of a field of the form.

  Specified by:
    `getExtendedInfo` in interface `DiscoInfoProvider`
  Parameters:
    `name` - the recipient JID's name.
    `node` - the requested disco node.
    `senderJID` - the XMPPAddress of user that sent the disco info request.
  Returns:
    an XDataForm with the extended information about the entity or null if none.

### hasInfo

    public boolean hasInfo(String name,
                           String node,
                           JID senderJID)

  Description copied from interface: `DiscoInfoProvider`
  Returns true if we can provide information related to the requested name and node. For example, if the requested name refers to a non-existant MUC room then the answer will be false. In case that the sender of the disco request is not authorized to discover this information an UnauthorizedException will be thrown.

  Specified by:
    `hasInfo` in interface `DiscoInfoProvider`
  Parameters:
    `name` - the recipient JID's name.
    `node` - the requested disco node.
    `senderJID` - the XMPPAddress of user that sent the disco info request.
  Returns:
    true if we can provide information related to the requested name and node.

### getAgents

    public Collection<MediaProxySession> getAgents()

  Return the list of active Agents

  Returns:
    list of active agents

### setKeepAliveDelay

    public void setKeepAliveDelay(long delay)

  Set the keep alive delay of the mediaproxy agents. When an agent stay more then this delay, the agent is destroyed.

  Parameters:
    `delay` - time in millis

### getIdleTime

    public long getIdleTime()

  Returns the maximum amount of time (in milleseconds) that a session can be idle before it's closed.

  Returns:
    the max idle time in millis.

### setMinPort

    public void setMinPort(int minPort)

  Set Minimal port value to listen for incoming packets.

  Parameters:
    `minPort` - port value to listen for incoming packets

### setMaxPort

    public void setMaxPort(int maxPort)

  Set Maximum port value to listen for incoming packets.

  Parameters:
    `maxPort` - port value to listen for incoming packets

### getMinPort

    public int getMinPort()

  Get Minimal port value to listen from incoming packets.

  Returns:
    minPort

### getMaxPort

    public int getMaxPort()

  Get Maximum port value to listen from incoming packets.

  Returns:
    maxPort

### isEnabled

    public boolean isEnabled()

  Get if the service is enabled.

  Returns:
    enabled

### setEnabled

    public void setEnabled(boolean enabled)

  Set the service enable status.

  Parameters:
    `enabled` - boolean value setting enabled or disabled

### stopAgents

    public void stopAgents()

  Stops every running agents

### getLifetime

    public long getLifetime()

  Get the Life Time of Sessions

  Returns:
    lifetime in seconds

### setLifetime

    public void setLifetime(long lifetime)

  Set the Life time of Sessions

  Parameters:
    `lifetime` - lifetime in seconds

### getEchoPort

    public int getEchoPort()

  Get the Port used to the UDP Echo Test

  Returns:
    port number

### setEchoPort

    public void setEchoPort(int echoPort)

  Set the Port used to the UDP Echo Test

  Parameters:
    `echoPort` - port number

Overview | Package | Class | Tree | Deprecated | Index | Help
| Openfire 3.4.3 Javadoc
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2003-2007 Jive Software.