Java Doc for Timeout.java in  » 6.0-JDK-Modules » j2me » gov » nist » siplite » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » 6.0 JDK Modules » j2me » gov.nist.siplite 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   gov.nist.siplite.Timeout

Timeout
final public class Timeout (Code)
This class contains the enumerations that define whether a timeout has occured in the underlying implementation. The application gets informed on whether a retransmission or transaction timer has expired. There are two types of Timeout, namely:
  • Timeout.RETRANSMIT - This type is used to alert an application that the underlying retransmit timer has expired so an application can resend the message specific to a transaction. This timer is defaulted to 500ms and is doubled each time it is fired until the transaction expires Timeout.TRANSACTION . The default retransmission value can be changed per transaction using Transaction.enableRetransmissionTimer(int) . The RETRANSMIT type is exposed to the following applications as follows:
    • User Agent - Retransmissions on Invite transactions are the responsibility of the application. This is due to the three way handshake for an INVITE Request. All other retransmissions are handled by the underlying implementation. Therefore the application will only receive this Timeout type specific to Invite transactions.
    • User Agent with No Retransmission - an application can configure an implementation to handle all retransmissions using property characteristics of the SipStack . Therefore a Timeout of this type will not be passed to the application. The application will only get notified when the Timeout.TRANSACTION occurs.
    • Stateful Proxy - a stateful proxy remembers transaction state about each incoming request and any requests it sends as a result of processing the incoming request. The underlying implementation will handle the retransmissions of all messages it sends and the application will not receive Timeout.RETRANSMIT events, however the application will get notified of Timeout.TRANSACTION events. As an Invite transaction is end to end a stateful proxy will not handle the retransmissions of messages on an Invite transaction, unless it decides to respond to the Invite transaction, in essence becoming an User Agent Server and as such should behave as described by the User Agent semantics above bearing in mind the retranmission property of the underlying implementation.
    • Stateless Proxy - as a stateless proxy acts as a simple forwarding agent, i.e. it simply forwards every message it receives upstream, it keeps no transaction state for messages. The implementation does not retransmit messages, therefore an application will not receive Timeout.RETRANSMIT events on a message handled statelessly. If retransmission semantics are required by an application using a stateless method, it is the responsibility of the application to provide this feature, not the underlying implementation.
  • Timeout.TRANSACTION - This type is used to alert an application that the underlying transaction has expired. A transaction timeout typically occurs at a time 64*T1 were T1 is the initial value of the Timeout.RETRANSMIT , usually defaulted to 500ms. The TRANSACTION type is exposed to the following applications as follows:
    • User Agent - All retransmissions except retransmissions on Invite transactions are the responsibility of the underlying implementation, i.e. Invite transactions are the responsibility of the application. Therefore the application will only recieve TRANSACTION Timeout events on transactions that are not Invite transactions.
    • User Agent with No Retransmission - an application can configure an implementation to handle all retransmissions using property characteristics of the SipStack . Therefore a TRANSACTION Timeout will be fired to the application on any transaction that expires including an Invite transaction.
    • Stateful Proxy - a stateful proxy remembers transaction state about each incoming request and any requests it sends as a result of processing the incoming request. The underlying implementation handles the retransmissions of all messages it sends and will notify the application of Timeout.TRANSACTION events on any of its transactions. As an Invite transaction is end to end a stateful proxy will not handle transaction timeouts on an Invite transaction, unless it decides to respond to the Invite transaction, in essence becoming an User Agent Server and as such should behave as described by the User Agent semantics above bearing in mind the retransmission property of the underlying implementation.
    • Stateless Proxy - as a stateless proxy acts as a simple forwarding agent, i.e. it simply forwards every message it receives upstream, it keeps no transaction state of the messages. The implementation does not maintain transaction state, therefore an application will not receive Timeout.TRANSACTION events on a message handled statelessly. If transaction timeout semantics are required by an application using a stateless method, it the responsibility of the application to provide this feature, not the underlying implementation.

since:
   1.1


Field Summary
final public static  TimeoutRETRANSMIT
     This constant value indicates the "Retransmit" timeout.
final public static  TimeoutTRANSACTION
     This constant value indicates the "Transaction" timeout.
final public static  int_RETRANSMIT
     This constant value indicates the internal value of the Retransmit timeout.
final public static  int_TRANSACTION
     This constant value indicates the internal value of the Transaction timeout.


Method Summary
public  TimeoutgetObject(int timeout)
     This method returns the object value of the Timeout.
public  intgetValue()
     This method returns the integer value of the Timeout.
public  StringtoString()
     This method returns a string version of this class.

Field Detail
RETRANSMIT
final public static Timeout RETRANSMIT(Code)
This constant value indicates the "Retransmit" timeout.



TRANSACTION
final public static Timeout TRANSACTION(Code)
This constant value indicates the "Transaction" timeout.



_RETRANSMIT
final public static int _RETRANSMIT(Code)
This constant value indicates the internal value of the Retransmit timeout.
This constant has an integer value of 0.



_TRANSACTION
final public static int _TRANSACTION(Code)
This constant value indicates the internal value of the Transaction timeout.
This constant has an integer value of 1.





Method Detail
getObject
public Timeout getObject(int timeout) throws IllegalArgumentException(Code)
This method returns the object value of the Timeout.
Parameters:
  timeout - The integer value of the Timeout The Timeout Object



getValue
public int getValue()(Code)
This method returns the integer value of the Timeout. The integer value of the Timeout



toString
public String toString()(Code)
This method returns a string version of this class. The string version of the Timeout



Methods inherited from java.lang.Object
public boolean equals(Object obj)(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.