Skip navigation links

Oracle Communications Service Broker
SAL API Reference Reference
Release 6.0

E26227-01


com.convergin.common.sal.ext.api
Interface SalFactory


public interface SalFactory

Factory interface for a variety of SAL Application API abstractions.


Method Summary
 Address createAddress(java.lang.String sipAddress)
          Returns a Address corresponding to the specified string.
 Address createAddress(URI uri)
          Returns an Address with the specified URI and no display name.
 Address createAddress(URI uri, java.lang.String displayName)
          Returns a new Address with the specified URI and display name.
 SalApplicationSession createApplicationSession()
          Returns a new SalApplicationSession.
 MessageContent createMessageContent()
          Creates a new MessageContent with no bodies.
 SalRequest createRequest(SalApplicationSession salAppSession, java.lang.String method, Address from, Address to)
          Returns a new request object with the specified request method, From, and To headers.
 SalRequest createRequest(SalApplicationSession salAppSession, java.lang.String method, java.lang.String from, java.lang.String to)
          Returns a new request object with the specified request method, From, and To headers.
 SalRequest createRequest(SalApplicationSession salAppSession, java.lang.String method, URI from, URI to)
          Returns a new request object with the specified request method, From, and To headers.
 SipURI createSipURI(java.lang.String user, java.lang.String host)
          Constructs a SipURI with the specified user and host components.
 URI createURI(java.lang.String uri)
          Returns a URI object corresponding to the specified string, which should represent an escaped SIP, SIPS, or tel URI.

 

Method Detail

createURI

URI createURI(java.lang.String uri)
              throws SalApplicationParseException
Returns a URI object corresponding to the specified string, which should represent an escaped SIP, SIPS, or tel URI. The URI may then be used as request URI in SAL requests or as the URI component of Address objects.

This method returns a SipURI object if the specified string is a sip or a sips URI, and a TelURL object if it's a tel URL.

If the specified URI string contains any reserved characters, it will be escaped, in accordance with RFC2396.

Parameters:
uri - the SIP, SIPS, or tel string to parse
Returns:
a parsed URI object
Throws:
SalApplicationParseException

createSipURI

SipURI createSipURI(java.lang.String user,
                    java.lang.String host)
Constructs a SipURI with the specified user and host components. the port number of the new URI is left unspecified but may subsequently be set by calling setPort on the returned SipURI.

If the specified URI string contains any reserved characters, they will be escaped in accordance with RFC2396.

Parameters:
user - user part of the new SipURI
host - host part of the new SipURI
Returns:
new SipURI with the specified user and host parts

createAddress

Address createAddress(java.lang.String sipAddress)
                      throws SalApplicationParseException
Returns a Address corresponding to the specified string. The resulting object can be used, for example, as the value of From or To headers of locally initiated SAL requests.

The specified address string must be UTF-8 encoded. Furthermore, if the URI component of the address string contains any reserved characters then they will be escaped in accordance with RFC2396 as indicated for createURI(String)

Parameters:
sipAddress - valid value of SIP From or To header
Returns:
a parsed Address
Throws:
SalApplicationParseException

createAddress

Address createAddress(URI uri)
Returns an Address with the specified URI and no display name.
Parameters:
uri - the URI of the returned Address
Returns:
an Address whose URI component is the argument

createAddress

Address createAddress(URI uri,
                      java.lang.String displayName)
Returns a new Address with the specified URI and display name.
Parameters:
uri - URI of the new Address
displayName - display name of the new Address
Returns:
a new Address with the specified URI and display name

createRequest

SalRequest createRequest(SalApplicationSession salAppSession,
                         java.lang.String method,
                         Address from,
                         Address to)
Returns a new request object with the specified request method, From, and To headers. The returned request object exists in a new SalSession which belongs to the specified SalApplicationSession.

This method is used by SalApplications acting as SAL clients in order to send a request in a new call leg. The container is responsible for assigning the request appropriate Call-ID and CSeq headers, as well as Contact header if the method is not REGISTER.

This method makes a copy of the from and to arguments and associates them with the new SalSession. Any component of the from and to URIs not allowed in the context of SAL From and To headers are removed from the copies [refer Table 1, Section 19.1.1, RFC3261]. This includes, headers and various parameters. Also, a "tag" parameter in either of the copied from or to is also removed, as it is illegal in an initial To header and the container will choose it's own tag for the From header. The copied from and to addresses can be obtained from the SipSession but must not be modified by applications.

Parameters:
salAppSession - the application session to which the new SalSession and SalRequest belongs
method - the method of the new request, e.g. "INVITE"
from - value of the From header
to - value of the To header
Returns:
the request object with method, request URI, and From, To, Call-ID, CSeq, Route headers filled in.

createRequest

SalRequest createRequest(SalApplicationSession salAppSession,
                         java.lang.String method,
                         URI from,
                         URI to)
Returns a new request object with the specified request method, From, and To headers. The returned request object exists in a new SalSession which belongs to the specified SalApplicationSession.

This method is used by SalApplications acting as SAL clients in order to send a request in a new call leg. The container is responsible for assigning the request appropriate Call-ID and CSeq headers, as well as Contact header if the method is not REGISTER.

This method makes a copy of the from and to arguments and associates them with the new SalSession. Any component of the from and to URIs not allowed in the context of SAL From and To headers are removed from the copies [refer Table 1, Section 19.1.1, RFC3261]. This includes, headers and various parameters. Also, a "tag" parameter in either of the copied from or to is also removed, as it is illegal in an initial To header and the container will choose it's own tag for the From header. The copied from and to addresses can be obtained from the SipSession but must not be modified by applications.

Parameters:
salAppSession - the application session to which the new SipSession and SalRequest belongs
method - the method of the new request, e.g. "INVITE"
from - value of the From header
to - value of the To header
Returns:
the request object with method, request URI, and From, To, Call-ID, CSeq, Route headers filled in.

createRequest

SalRequest createRequest(SalApplicationSession salAppSession,
                         java.lang.String method,
                         java.lang.String from,
                         java.lang.String to)
                         throws SalApplicationParseException
Returns a new request object with the specified request method, From, and To headers. The returned request object exists in a new SalSession which belongs to the specified SalApplicationSession.

This method is used by SalApplications acting as SAL clients in order to send a request in a new call leg. The container is responsible for assigning the request appropriate Call-ID and CSeq headers, as well as Contact header if the method is not REGISTER.

Parameters:
salAppSession - the application session to which the new SalSession and SalRequest belongs
method - the method of the new request, e.g. "INVITE"
from - value of the From header -- this must be a valid Address
to - value of the To header -- this must be a valid Address
Returns:
the request object with method, request URI, and From, To, Call-ID, CSeq, Route headers filled in.
Throws:
SalApplicationParseException

createApplicationSession

SalApplicationSession createApplicationSession()
Returns a new SalApplicationSession. This is useful, for example, when an application is being initialized and wishes to perform some signaling action.
Returns:
a new SalApplicationSession object

createMessageContent

MessageContent createMessageContent()
Creates a new MessageContent with no bodies.

Skip navigation links

Oracle Communications Service Broker
SAL API Reference Reference
Release 6.0

E26227-01


Copyright © 2011, Oracle and/or its affiliates. All rights reserved.