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() 
