File: testJpypePublisher.py

package info (click to toggle)
python-jpype 1.5.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 3,984 kB
  • sloc: python: 18,767; cpp: 17,931; java: 8,448; xml: 1,305; makefile: 154; sh: 35
file content (37 lines) | stat: -rw-r--r-- 1,185 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
from jpype import *
import time

NUMMSGS = 10


def pyPublisher(javaNamingFactory="weblogic.jndi.WLInitialContextFactory",
                javaNamingProvider="t3://158.188.40.21:7001",
                connectionFactory="weblogic.jms.ConnectionFactory",
                topicName="defaultTopic"):
    return messaging.JpypePublisher(javaNamingFactory, javaNamingProvider,
                                    connectionFactory, topicName)


# Startup Jpype and import the messaging java package
startJVM("C:\\program files\\Java\\j2re1.4.2_02\\bin\\client\\jvm.dll",
         "-Djava.class.path=D:/jIRAD/JpypeJMS/src;D:/jIRAD/JpypeJMS/classes;C:/bea/weblogic81/server/lib/weblogic.jar")
messaging = JPackage('messaging')

# Get a publisher
publisher = pyPublisher()

# Timing test
# The "Start" message signals the subscriber to start timing message receipts
publisher.publish("Start")

t0 = time.time()
for i in range(NUMMSGS):
    publisher.publish("Hello World! %s" % i)
print("MessageRate =", float(NUMMSGS) / (time.time() - t0))

# The "Stop" message signals the subscriber to stop timing message receipts
publisher.publish("Stop")

# Close and quit
publisher.close()
shutdownJVM()