Oracle Corp.

Oracle WebLogic Communications Server 10.1 API Reference


com.bea.wcp.sip
Interface WlssSipFactory

All Superinterfaces:
SipFactory

public interface WlssSipFactory
extends SipFactory

This interface is an extension of the standard SipFactory interface.

See Also:
SipFactory
Copyright © 2008 Oracle Corp. All Rights Reserved.

Method Summary
 SipServletRequest createRequest(SipServletRequest origRequest, java.util.Map headerMap, boolean sameCallId)
          Creates a new request object belonging to a new SipSession.
 
Methods inherited from interface javax.servlet.sip.SipFactory
createAddress, createAddress, createAddress, createApplicationSession, createApplicationSessionByKey, createAuthInfo, createParameterable, createRequest, createRequest, createRequest, createRequest, createSipURI, createURI
 

Method Detail

createRequest

public SipServletRequest createRequest(SipServletRequest origRequest,
                                       java.util.Map headerMap,
                                       boolean sameCallId)
Creates a new request object belonging to a new SipSession. The new request is similar to the specified origRequest in that the method and the majority of header fields are copied from origRequest to the new request.

The headerMap parameter can contain "From" and "To" headers and any non system header. The entries in the map are used to overwrite the headers in the newly created request. The values in the headerMap are expected to be java.lang.String or java.util.Set of java.lang.Strings for multi-valued headers. Note that since the new values will replace the existing values, if you wish to append to the existing set, include the old values in the new set as well. If you wish to remove an existing non system header simply pass the value as null or an empty set.

The SipSession created for the new request also shares the same SipApplicationSession associated with the original request.

This method satisfies the following rules:

This method provides a convenient and efficient way of constructing the second "leg" of a B2BUA application, giving the additional flexibility of changing the headers including To and From. It is used only for the initial request. Subsequent requests in either leg must be created using SipSession.createRequest(java.lang.String) as usual.

Parameters:
origRequest - request to be "copied"
headerMap - a simple map containing header names and their values to be overridden in the new request. The values are expected to be java.lang.String or java.util.Set of java.lang.Strings for multi-valued headers.
sameCallId - whether or not to use same Call-ID for the new dialog
Returns:
the "copied" request object
Throws:
java.lang.IllegalArgumentException - if the headerMap contains a system header other than From/To.

Documentation is available at
http://e-docs.bea.com/wlcp/wlss40/
Copyright 2008 Oracle Corp.