org.freeswitch.esl.client.transport.message
Class EslMessage

java.lang.Object
  extended by org.freeswitch.esl.client.transport.message.EslMessage

public class EslMessage
extends Object

Basic FreeSWITCH Event Socket messages from the server are decoded into this data object.

An ESL message is modelled as text lines. A message always has one or more header lines, and optionally may have some body lines.

Header lines are parsed and cached in a map keyed by the EslHeaders.Name enum. A message is always expected to have a "Content-Type" header

Any Body lines are cached in a list.

Author:
david varnes
See Also:
EslHeaders.Name

Constructor Summary
EslMessage()
           
 
Method Summary
 List<String> getBodyLines()
          Any received message body lines
 Integer getContentLength()
          Convenience method
 String getContentType()
          Convenience method
 Map<EslHeaders.Name,String> getHeaders()
          All the received message headers in a map keyed by EslHeaders.Name.
 String getHeaderValue(EslHeaders.Name headerName)
          Convenience method
 boolean hasContentLength()
          Convenience method
 boolean hasHeader(EslHeaders.Name headerName)
          Convenience method
 String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

EslMessage

public EslMessage()
Method Detail

getHeaders

public Map<EslHeaders.Name,String> getHeaders()
All the received message headers in a map keyed by EslHeaders.Name. The string mapped value is the parsed content of the header line (ie, it does not include the header name).

Returns:
map of header values

hasHeader

public boolean hasHeader(EslHeaders.Name headerName)
Convenience method

Parameters:
headerName - as a EslHeaders.Name
Returns:
true if an only if there is a header entry with the supplied header name

getHeaderValue

public String getHeaderValue(EslHeaders.Name headerName)
Convenience method

Parameters:
headerName - as a EslHeaders.Name
Returns:
same as getHeaders().get( headerName )

hasContentLength

public boolean hasContentLength()
Convenience method

Returns:
true if and only if a header exists with name "Content-Length"

getContentLength

public Integer getContentLength()
Convenience method

Returns:
integer value of header with name "Content-Length"

getContentType

public String getContentType()
Convenience method

Returns:
header value of header with name "Content-Type"

getBodyLines

public List<String> getBodyLines()
Any received message body lines

Returns:
list with a string for each line received, may be an empty list

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2009-2010 david varnes. All Rights Reserved.