Skip navigation links

Oracle Communications Service Broker
SAL API Reference Reference
Release 6.0

E26227-01


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

All Superinterfaces:
java.lang.Cloneable, SalMessage

public interface SalResponse
extends SalMessage

Represents SAL responses. Instances of this class are passed to SalApplication when the container receives incoming SAL responses and also, SalApplications acting as UA servers or proxies generates SAL responses of their own by creating SalResponses.

SAL responses has a three-digit status code that indicates the outcome of the corresponding request. Responses with a status code in the range of 100-199 (1xx's) are called provisional or informational and indicate progress in processing of the request. Any response with a status code of 200 or higher is a final response. A UA server may send only one final response per request but this may be preceeded by any number of provisional responses.

2xx responses indicate a successful outcome while 3xx-6xx indicate a variety of non-success conditions.

The summary of status codes is [RFC 3261]:


Field Summary
static int SC_ACCEPTED
          The status code has the same meaning as in JSR 289
static int SC_ADDRESS_INCOMPLETE
          The status code has the same meaning as in JSR 289
static int SC_ALTERNATIVE_SERVICE
          The status code has the same meaning as in JSR 289
static int SC_AMBIGUOUS
          The status code has the same meaning as in JSR 289
static int SC_BAD_EVENT
          The status code has the same meaning as in JSR 289
static int SC_BAD_EXTENSION
          The status code has the same meaning as in JSR 289
static int SC_BAD_GATEWAY
          The status code has the same meaning as in JSR 289
static int SC_BAD_IDENTITY_INFO
          The status code has the same meaning as in JSR 289
static int SC_BAD_REQUEST
          The status code has the same meaning as in JSR 289
static int SC_BUSY_EVERYWHERE
          The status code has the same meaning as in JSR 289
static int SC_BUSY_HERE
          The status code has the same meaning as in JSR 289
static int SC_CALL_BEING_FORWARDED
          The status code has the same meaning as in JSR 289
static int SC_CALL_LEG_DONE
          The status code has the same meaning as in JSR 289
static int SC_CALL_QUEUED
          The status code has the same meaning as in JSR 289
static int SC_CONDITIONAL_REQUEST_FAILED
          The status code has the same meaning as in JSR 289
static int SC_DECLINE
          The status code has the same meaning as in JSR 289
static int SC_DOES_NOT_EXIT_ANYWHERE
          The status code has the same meaning as in JSR 289
static int SC_EXTENSION_REQUIRED
          The status code has the same meaning as in JSR 289
static int SC_FORBIDDEN
          The status code has the same meaning as in JSR 289
static int SC_GONE
          The status code has the same meaning as in JSR 289
static int SC_INTERVAL_TOO_BRIEF
          The status code has the same meaning as in JSR 289
static int SC_INVALID_IDENTITY_HEADER
          The status code has the same meaning as in JSR 289
static int SC_LOOP_DETECTED
          The status code has the same meaning as in JSR 289
static int SC_MESSAGE_TOO_LARGE
          The status code has the same meaning as in JSR 289
static int SC_METHOD_NOT_ALLOWED
          The status code has the same meaning as in JSR 289
static int SC_MOVED_PERMANENTLY
          The status code has the same meaning as in JSR 289
static int SC_MOVED_TEMPORARILY
          The status code has the same meaning as in JSR 289
static int SC_MULTIPLE_CHOICES
          The status code has the same meaning as in JSR 289
static int SC_NOT_ACCEPTABLE
          The status code has the same meaning as in JSR 289
static int SC_NOT_ACCEPTABLE_ANYWHERE
          The status code has the same meaning as in JSR 289
static int SC_NOT_ACCEPTABLE_HERE
          The status code has the same meaning as in JSR 289
static int SC_NOT_FOUND
          The status code has the same meaning as in JSR 289
static int SC_NOT_IMPLEMENTED
          The status code has the same meaning as in JSR 289
static int SC_OK
          The status code has the same meaning as in JSR 289
static int SC_PAYMENT_REQUIRED
          The status code has the same meaning as in JSR 289
static int SC_PRECONDITION_FAILURE
          The status code has the same meaning as in JSR 289
static int SC_PROVIDE_REFERER_IDENTITY
          The status code has the same meaning as in JSR 289
static int SC_PROXY_AUTHENTICATION_REQUIRED
          The status code has the same meaning as in JSR 289
static int SC_REQUEST_ENTITY_TOO_LARGE
          The status code has the same meaning as in JSR 289
static int SC_REQUEST_PENDING
          The status code has the same meaning as in JSR 289
static int SC_REQUEST_TERMINATED
          The status code has the same meaning as in JSR 289
static int SC_REQUEST_TIMEOUT
          The status code has the same meaning as in JSR 289
static int SC_REQUEST_URI_TOO_LONG
          The status code has the same meaning as in JSR 289
static int SC_RINGING
          The status code has the same meaning as in JSR 289
static int SC_SECURITY_AGREEMENT_REQUIRED
          The status code has the same meaning as in JSR 289
static int SC_SERVER_INTERNAL_ERROR
          The status code has the same meaning as in JSR 289
static int SC_SERVER_TIMEOUT
          The status code has the same meaning as in JSR 289
static int SC_SERVICE_UNAVAILABLE
          The status code has the same meaning as in JSR 289
static int SC_SESSION_INTERVAL_TOO_SMALL
          The status code has the same meaning as in JSR 289
static int SC_SESSION_PROGRESS
          The status code has the same meaning as in JSR 289
static int SC_TEMPORARLY_UNAVAILABLE
          The status code has the same meaning as in JSR 289
static int SC_TOO_MANY_HOPS
          The status code has the same meaning as in JSR 289
static int SC_TRYING
          The status code has the same meaning as in JSR 289
static int SC_UNAUTHORIZED
          The status code has the same meaning as in JSR 289
static int SC_UNDECIPHERABLE
          The status code has the same meaning as in JSR 289
static int SC_UNSUPPORTED_CERTIFICATE
          The status code has the same meaning as in JSR 289
static int SC_UNSUPPORTED_MEDIA_TYPE
          The status code has the same meaning as in JSR 289
static int SC_UNSUPPORTED_URI_SCHEME
          The status code has the same meaning as in JSR 289
static int SC_USE_IDENTITY_HEADER
          The status code has the same meaning as in JSR 289
static int SC_USE_PROXY
          The status code has the same meaning as in JSR 289
static int SC_VERSION_NOT_SUPPORTED
          The status code has the same meaning as in JSR 289

 

Method Summary
 SalRequest createAck()
          Returns an ACK request object corresponding to this response.
 SalRequest createPrack()
          Creates a PRACK request object corresponding to this response.
 java.lang.String getReasonPhrase()
          Returns the reason phrase for this response object.
 SalRequest getRequest()
          Returns the request associated with this response.
 int getStatus()
          Returns the status code of this response object.
 void send()
          Causes this response to be sent.
 void setStatus(int responseCode)
          Sets the status code of this response object.
 void setStatus(int responseCode, java.lang.String reasonPhrase)
          Sets the status code and reason phrase of this response object

 

Methods inherited from interface com.convergin.common.sal.ext.api.SalMessage
addAddressHeader, addHeader, getAddressHeader, getAddressHeaders, getApplicationSession, getApplicationSession, getContent, getContentType, getFrom, getHeader, getHeaderNames, getHeaders, getMethod, getSession, getSession, getTo, removeHeader, setAddressHeader, setContent, setContentType, setHeader

 

Field Detail

SC_TRYING

static final int SC_TRYING
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_RINGING

static final int SC_RINGING
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_CALL_BEING_FORWARDED

static final int SC_CALL_BEING_FORWARDED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_CALL_QUEUED

static final int SC_CALL_QUEUED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_SESSION_PROGRESS

static final int SC_SESSION_PROGRESS
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_OK

static final int SC_OK
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_ACCEPTED

static final int SC_ACCEPTED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_MULTIPLE_CHOICES

static final int SC_MULTIPLE_CHOICES
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_MOVED_PERMANENTLY

static final int SC_MOVED_PERMANENTLY
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_MOVED_TEMPORARILY

static final int SC_MOVED_TEMPORARILY
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_USE_PROXY

static final int SC_USE_PROXY
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_ALTERNATIVE_SERVICE

static final int SC_ALTERNATIVE_SERVICE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_BAD_REQUEST

static final int SC_BAD_REQUEST
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_UNAUTHORIZED

static final int SC_UNAUTHORIZED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_PAYMENT_REQUIRED

static final int SC_PAYMENT_REQUIRED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_FORBIDDEN

static final int SC_FORBIDDEN
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_NOT_FOUND

static final int SC_NOT_FOUND
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_METHOD_NOT_ALLOWED

static final int SC_METHOD_NOT_ALLOWED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_NOT_ACCEPTABLE

static final int SC_NOT_ACCEPTABLE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_PROXY_AUTHENTICATION_REQUIRED

static final int SC_PROXY_AUTHENTICATION_REQUIRED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_REQUEST_TIMEOUT

static final int SC_REQUEST_TIMEOUT
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_GONE

static final int SC_GONE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_CONDITIONAL_REQUEST_FAILED

static final int SC_CONDITIONAL_REQUEST_FAILED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_REQUEST_ENTITY_TOO_LARGE

static final int SC_REQUEST_ENTITY_TOO_LARGE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_REQUEST_URI_TOO_LONG

static final int SC_REQUEST_URI_TOO_LONG
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_UNSUPPORTED_MEDIA_TYPE

static final int SC_UNSUPPORTED_MEDIA_TYPE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_UNSUPPORTED_URI_SCHEME

static final int SC_UNSUPPORTED_URI_SCHEME
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_BAD_EXTENSION

static final int SC_BAD_EXTENSION
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_EXTENSION_REQUIRED

static final int SC_EXTENSION_REQUIRED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_SESSION_INTERVAL_TOO_SMALL

static final int SC_SESSION_INTERVAL_TOO_SMALL
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_INTERVAL_TOO_BRIEF

static final int SC_INTERVAL_TOO_BRIEF
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_USE_IDENTITY_HEADER

static final int SC_USE_IDENTITY_HEADER
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_PROVIDE_REFERER_IDENTITY

static final int SC_PROVIDE_REFERER_IDENTITY
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_BAD_IDENTITY_INFO

static final int SC_BAD_IDENTITY_INFO
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_UNSUPPORTED_CERTIFICATE

static final int SC_UNSUPPORTED_CERTIFICATE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_INVALID_IDENTITY_HEADER

static final int SC_INVALID_IDENTITY_HEADER
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_TEMPORARLY_UNAVAILABLE

static final int SC_TEMPORARLY_UNAVAILABLE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_CALL_LEG_DONE

static final int SC_CALL_LEG_DONE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_LOOP_DETECTED

static final int SC_LOOP_DETECTED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_TOO_MANY_HOPS

static final int SC_TOO_MANY_HOPS
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_ADDRESS_INCOMPLETE

static final int SC_ADDRESS_INCOMPLETE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_AMBIGUOUS

static final int SC_AMBIGUOUS
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_BUSY_HERE

static final int SC_BUSY_HERE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_REQUEST_TERMINATED

static final int SC_REQUEST_TERMINATED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_NOT_ACCEPTABLE_HERE

static final int SC_NOT_ACCEPTABLE_HERE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_BAD_EVENT

static final int SC_BAD_EVENT
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_REQUEST_PENDING

static final int SC_REQUEST_PENDING
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_UNDECIPHERABLE

static final int SC_UNDECIPHERABLE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_SECURITY_AGREEMENT_REQUIRED

static final int SC_SECURITY_AGREEMENT_REQUIRED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_SERVER_INTERNAL_ERROR

static final int SC_SERVER_INTERNAL_ERROR
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_NOT_IMPLEMENTED

static final int SC_NOT_IMPLEMENTED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_BAD_GATEWAY

static final int SC_BAD_GATEWAY
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_SERVICE_UNAVAILABLE

static final int SC_SERVICE_UNAVAILABLE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_SERVER_TIMEOUT

static final int SC_SERVER_TIMEOUT
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_VERSION_NOT_SUPPORTED

static final int SC_VERSION_NOT_SUPPORTED
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_MESSAGE_TOO_LARGE

static final int SC_MESSAGE_TOO_LARGE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_PRECONDITION_FAILURE

static final int SC_PRECONDITION_FAILURE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_BUSY_EVERYWHERE

static final int SC_BUSY_EVERYWHERE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_DECLINE

static final int SC_DECLINE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_DOES_NOT_EXIT_ANYWHERE

static final int SC_DOES_NOT_EXIT_ANYWHERE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

SC_NOT_ACCEPTABLE_ANYWHERE

static final int SC_NOT_ACCEPTABLE_ANYWHERE
The status code has the same meaning as in JSR 289
See Also:
Constant Field Values

Method Detail

getRequest

SalRequest getRequest()
Returns the request associated with this response.
Returns:
request for which this response was generated

getStatus

int getStatus()
Returns the status code of this response object.

The Status-Code is a 3-digit integer result code that indicates the outcome of the attempt to understand and satisfy the request.

Returns:
status code of this response

setStatus

void setStatus(int responseCode)
Sets the status code of this response object.
Parameters:
responseCode - status code of this response

setStatus

void setStatus(int responseCode,
               java.lang.String reasonPhrase)
Sets the status code and reason phrase of this response object
Parameters:
responseCode - status code of this response
reasonPhrase - short textual description of the status code

getReasonPhrase

java.lang.String getReasonPhrase()
Returns the reason phrase for this response object.
Returns:
reason phrase for this response

send

void send()
          throws java.io.IOException
Causes this response to be sent. This is used by SalApplications acting as UASs to send provisional and final responses.
Throws:
java.io.IOException - if a transport error occurs when trying to send this response
java.lang.IllegalStateException - if this response was received from downstream or if it has already been sent

createAck

SalRequest createAck()
Returns an ACK request object corresponding to this response. This method is used by SalApplications acting as UACs in order to acknowledge 2xx final responses to INVITE requests. Please note that applications do not generate ACKs for non-2xx responses.
Returns:
an ACK request object corresponding to this response

createPrack

SalRequest createPrack()
Creates a PRACK request object corresponding to this response. This method is used by applications acting as UACs in order to acknowledge reliable provisional responses to INVITE requests with PRACK
Returns:
PRACK request corresponding to this response

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.