Java Doc for JMS.java in  » Net » JGroups-2.4.1-sp3 » org » jgroups » protocols » 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 » Net » JGroups 2.4.1 sp3 » org.jgroups.protocols 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   java.lang.Thread
      org.jgroups.stack.UpHandler
         org.jgroups.protocols.JMS

JMS
public class JMS extends Protocol implements javax.jms.MessageListener(Code)
Implementation of the transport protocol using the Java Message Service (JMS). This implementation depends on the JMS server that will distribute messages published to the specific topic to all topic subscribers.

Protocol parameters are:

  • topicName - (required), full JNDI name of the topic to be used for message publishing;
  • cf - (optional), full JNDI name of the topic connection factory that will create topic connection, default value is "ConnectionFactory";
  • jndiCtx - (optional), value of the javax.naming.Context.INITIAL_CONTEXT_FACTORY property; you can specify it as the JVM system property -Djava.naming.factory.initial=factory.class.Name;
  • providerURL - (optional), value of the javax.naming.Context.PROVIDER_URL property; you can specify it as the JVM system property -Djava.naming.provider.url=some_url
  • ttl - (required), time to live in milliseconds. Default value is 0, that means that messages will never expire and will be accumulated by a JMS server.

Note, when you are using the JMS protocol, try to avoid using protocols that open server socket connections, like FD_SOCK. I belive that FD is more appropriate failure detector for JMS case.
author:
   Roman Rokytskyy (rrokytskyy@acm.org)


Inner Class :public static class JMSAddress implements Address

Field Summary
final public static  StringDEFAULT_CONNECTION_FACTORY
    
final public static  StringDEST_PROPERTY
    
final public static  StringGROUP_NAME_PROPERTY
    
final public static  StringINIT_CONNECTION_FACTORY
    
final public static  StringINIT_JNDI_CONTEXT
    
final public static  StringINIT_PROVIDER_URL
    
final public static  StringINIT_TOPIC_NAME
    
final public static  StringSRC_PROPERTY
    
final public static  StringTIME_TO_LIVE
    

Constructor Summary
public  JMS()
     Empty constructor.

Method Summary
public  voiddown(Event evt)
     Called by the protocol above this.
protected  StringgenerateLocalAddress()
     Generate random local address.
public  StringgetName()
     Get the name of the protocol.
protected  voidhandleDownEvent(Event evt)
     Handle down event, if it is not a Event.MSG type.
public  voidonMessage(javax.jms.Message jmsMessage)
     Implementation of the javax.jms.MessageListener interface. This method receives the JMS message, checks the destination group name. If the group name is the same as the group name of this channel, it checks the destination address.
protected  voidsendMessage(Message msg)
     Publish message in the JMS topic.
public  booleansetProperties(Properties props)
     Set protocol properties.
public  voidstart()
     Start the JMS protocol.
public  voidstop()
     Stops the work of the JMS protocol.
public  StringtoString()
     Get the string representation of the protocol.

Field Detail
DEFAULT_CONNECTION_FACTORY
final public static String DEFAULT_CONNECTION_FACTORY(Code)



DEST_PROPERTY
final public static String DEST_PROPERTY(Code)



GROUP_NAME_PROPERTY
final public static String GROUP_NAME_PROPERTY(Code)



INIT_CONNECTION_FACTORY
final public static String INIT_CONNECTION_FACTORY(Code)



INIT_JNDI_CONTEXT
final public static String INIT_JNDI_CONTEXT(Code)



INIT_PROVIDER_URL
final public static String INIT_PROVIDER_URL(Code)



INIT_TOPIC_NAME
final public static String INIT_TOPIC_NAME(Code)



SRC_PROPERTY
final public static String SRC_PROPERTY(Code)



TIME_TO_LIVE
final public static String TIME_TO_LIVE(Code)




Constructor Detail
JMS
public JMS()(Code)
Empty constructor.




Method Detail
down
public void down(Event evt)(Code)
Called by the protocol above this. We check the event type, and if it is message, we publish it in the topic, otherwise we let the JMS.handleDownEvent(Event) take care of it.
Parameters:
  evt - event to process.



generateLocalAddress
protected String generateLocalAddress() throws java.net.UnknownHostException(Code)
Generate random local address. This method takes host name and appends it with randomly generated integer. randomly generated local address.



getName
public String getName()(Code)
Get the name of the protocol. always returns the "JMS" string.



handleDownEvent
protected void handleDownEvent(Event evt)(Code)
Handle down event, if it is not a Event.MSG type.
Parameters:
  evt - event to handle.



onMessage
public void onMessage(javax.jms.Message jmsMessage)(Code)
Implementation of the javax.jms.MessageListener interface. This method receives the JMS message, checks the destination group name. If the group name is the same as the group name of this channel, it checks the destination address. If destination address is either multicast or is the same as local address then message is unwrapped and passed up the protocol stack. Otherwise it is ignored.
Parameters:
  jmsMessage - instance of javax.jms.Message.



sendMessage
protected void sendMessage(Message msg)(Code)
Publish message in the JMS topic. We set the message source and destination addresses if they were null.
Parameters:
  msg - message to publish.



setProperties
public boolean setProperties(Properties props)(Code)
Set protocol properties. Properties are:
  • topicName - (required), full JNDI name of the topic to be used for message publishing;
  • cf - (optional), full JNDI name of the topic connection factory that will create topic connection, default value is "ConnectionFactory";
  • jndiCtx - (optional), value of the javax.naming.Context.INITIAL_CONTEXT_FACTORY property; you can specify it as the JVM system property -Djava.naming.factory.initial=factory.class.Name;
  • providerURL - (optional), value of the javax.naming.Context.PROVIDER_URL property; you can specify it as the JVM system property -Djava.naming.provider.url=some_url



start
public void start() throws Exception(Code)
Start the JMS protocol. This method instantiates the JNDI initial context and looks up the topic connection factory and topic itself. If this step is successful, it creates a connection to JMS server, opens a session and obtains publisher and subscriber instances.
throws:
  javax.jms.JMSException - if something goes wrong with JMS.
throws:
  javax.naming.NamingException - if something goes wrong with JNDI.
throws:
  IllegalArgumentException - if the connection factory or topiccannot be found under specified names.



stop
public void stop()(Code)
Stops the work of the JMS protocol. This method closes JMS session and connection and deregisters itself from the message notification.



toString
public String toString()(Code)
Get the string representation of the protocol. string representation of the protocol (not very useful though).



Fields inherited from org.jgroups.stack.UpHandler
final protected Log log(Code)(Java Doc)

Methods inherited from org.jgroups.stack.UpHandler
public void run()(Code)(Java Doc)
public void setObserver(ProtocolObserver observer)(Code)(Java Doc)

Fields inherited from java.lang.Thread
final public static int MAX_PRIORITY(Code)(Java Doc)
final public static int MIN_PRIORITY(Code)(Java Doc)
final public static int NORM_PRIORITY(Code)(Java Doc)

Methods inherited from java.lang.Thread
public static int activeCount()(Code)(Java Doc)
final public void checkAccess()(Code)(Java Doc)
native public int countStackFrames()(Code)(Java Doc)
native public static Thread currentThread()(Code)(Java Doc)
public void destroy()(Code)(Java Doc)
public static void dumpStack()(Code)(Java Doc)
public static int enumerate(Thread tarray)(Code)(Java Doc)
public static Map<Thread, StackTraceElement[]> getAllStackTraces()(Code)(Java Doc)
public ClassLoader getContextClassLoader()(Code)(Java Doc)
public static UncaughtExceptionHandler getDefaultUncaughtExceptionHandler()(Code)(Java Doc)
public long getId()(Code)(Java Doc)
final public String getName()(Code)(Java Doc)
final public int getPriority()(Code)(Java Doc)
public StackTraceElement[] getStackTrace()(Code)(Java Doc)
public State getState()(Code)(Java Doc)
final public ThreadGroup getThreadGroup()(Code)(Java Doc)
public UncaughtExceptionHandler getUncaughtExceptionHandler()(Code)(Java Doc)
native public static boolean holdsLock(Object obj)(Code)(Java Doc)
public void interrupt()(Code)(Java Doc)
public static boolean interrupted()(Code)(Java Doc)
final native public boolean isAlive()(Code)(Java Doc)
final public boolean isDaemon()(Code)(Java Doc)
public boolean isInterrupted()(Code)(Java Doc)
final public synchronized void join(long millis) throws InterruptedException(Code)(Java Doc)
final public synchronized void join(long millis, int nanos) throws InterruptedException(Code)(Java Doc)
final public void join() throws InterruptedException(Code)(Java Doc)
final public void resume()(Code)(Java Doc)
public void run()(Code)(Java Doc)
public void setContextClassLoader(ClassLoader cl)(Code)(Java Doc)
final public void setDaemon(boolean on)(Code)(Java Doc)
public static void setDefaultUncaughtExceptionHandler(UncaughtExceptionHandler eh)(Code)(Java Doc)
final public void setName(String name)(Code)(Java Doc)
final public void setPriority(int newPriority)(Code)(Java Doc)
public void setUncaughtExceptionHandler(UncaughtExceptionHandler eh)(Code)(Java Doc)
native public static void sleep(long millis) throws InterruptedException(Code)(Java Doc)
public static void sleep(long millis, int nanos) throws InterruptedException(Code)(Java Doc)
public synchronized void start()(Code)(Java Doc)
final public void stop()(Code)(Java Doc)
final public synchronized void stop(Throwable obj)(Code)(Java Doc)
final public void suspend()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
native public static void yield()(Code)(Java Doc)

Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(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.