Exemplo n.º 1
0
 def get_h_admin_queue(self,qmgr=None,queue=b'SYSTEM.ADMIN.COMMAND.QUEUE'):
     admin = pymqi.OD()
     #   print("getAdminQueue",type(qmgr),type(queue))
     if not isinstance(queue,bytes):
         queue = queue.encode()
     if qmgr is None:
         raise ValueError("QMGR name must be specified")
     admin.ObjectName = queue
     hAdmin = pymqi.Queue(qmgr, admin, pymqi.CMQC.MQOO_OUTPUT)
     return hAdmin
Exemplo n.º 2
0
def getQueue():
    logger.info('Connecting to Queue')
    try:
        # Can do this in one line, but with an Object Descriptor
        # can or in more options.
        # q = pymqi.Queue(qmgr, MQDetails[EnvStore.QUEUE_NAME])
        q = pymqi.Queue(qmgr)

        od = pymqi.OD()
        od.ObjectName = MQDetails[EnvStore.QUEUE_NAME]
        q.open(od, pymqi.CMQC.MQOO_OUTPUT)

        return q
    except pymqi.MQMIError as e:
        logger.error("Error getting queue")
        logger.error(e)
        return None
Exemplo n.º 3
0
def getQueue():
    logger.info('Connecting to Queue')
    try:
        # Works with single call, but object Descriptor
        # provides other options
        # q = pymqi.Queue(qmgr, MQDetails[EnvStore.QUEUE_NAME])
        q = pymqi.Queue(qmgr)

        od = pymqi.OD()
        od.ObjectName = MQDetails[EnvStore.QUEUE_NAME]

        odOptions = pymqi.CMQC.MQOO_INPUT_AS_Q_DEF
        q.open(od, odOptions)

        return q
    except pymqi.MQMIError as e:
        logger.error("Error getting queue")
        logger.error(e)
        return None
Exemplo n.º 4
0
def getDynamicQueue():
    logger.info('Connecting to Dynmic Queue')
    try:
        # Dynamic queue's object descriptor.
        dyn_od = pymqi.OD()
        dyn_od.ObjectName = MQDetails[EnvStore.MODEL_QUEUE_NAME]
        dyn_od.DynamicQName = MQDetails[EnvStore.DYNAMIC_QUEUE_PREFIX]

        # Open the dynamic queue.
        dyn_input_open_options = pymqi.CMQC.MQOO_INPUT_EXCLUSIVE
        dyn_queue = pymqi.Queue(qmgr, dyn_od, dyn_input_open_options)

        dynamicQueueName = dyn_od.ObjectName.strip()
        logger.info('Dynamic Queue Details are')
        logger.info(dynamicQueueName)

        return dyn_queue, dynamicQueueName

    except pymqi.MQMIError as e:
        logger.error("Error getting queue")
        logger.error(e)
        return None
Exemplo n.º 5
0
def getQueue(queueName, forInput):
    logger.info('Connecting to Queue')
    try:
        # Works with single call, but object Descriptor
        # provides other options
        # q = pymqi.Queue(qmgr, MQDetails['QUEUE_NAME'])
        q = pymqi.Queue(qmgr)

        od = pymqi.OD()
        od.ObjectName = queueName

        if (forInput):
            odOptions = pymqi.CMQC.MQOO_INPUT_AS_Q_DEF
        else:
            od.ObjectType = pymqi.CMQC.MQOT_Q
            odOptions = pymqi.CMQC.MQOO_OUTPUT

        q.open(od, odOptions)

        return q
    except pymqi.MQMIError as e:
        logger.error("Error getting queue")
        logger.error(e)
        return None
Exemplo n.º 6
0
# See discussion and more examples at http://packages.python.org/pymqi/examples.html
# or in doc/sphinx/examples.rst in the source distribution.

import pymqi
import CMQC

queue_manager = "QM01"
channel = "SVRCONN.1"
host = "192.168.1.135"
port = "1434"
queue_name = "TEST.1"
message = "Hello from Python!"
alternate_user_id = "myuser"
conn_info = "%s(%s)" % (host, port)

qmgr = pymqi.connect(queue_manager, channel, conn_info)

od = pymqi.OD()
od.ObjectName = queue_name
od.AlternateUserId = alternate_user_id

queue = pymqi.Queue(qmgr)
queue.open(od, CMQC.MQOO_OUTPUT | CMQC.MQOO_ALTERNATE_USER_AUTHORITY)
queue.put(message)

queue.close()
qmgr.disconnect()
Exemplo n.º 7
0
import pymqi

queue_manager = "QM01"
channel = "SVRCONN.1"
host = "192.168.1.135"
port = "1434"
conn_info = "%s(%s)" % (host, port)
message = "Please reply to a dynamic queue, thanks."
dynamic_queue_prefix = "MY.REPLIES.*"
request_queue = "TEST.1"

qmgr = pymqi.connect(queue_manager, channel, conn_info)

# Dynamic queue's object descriptor.
dyn_od = pymqi.OD()
dyn_od.ObjectName = "SYSTEM.DEFAULT.MODEL.QUEUE"
dyn_od.DynamicQName = dynamic_queue_prefix

# Open the dynamic queue.
dyn_input_open_options = pymqi.CMQC.MQOO_INPUT_EXCLUSIVE
dyn_queue = pymqi.Queue(qmgr, dyn_od, dyn_input_open_options)
dyn_queue_name = dyn_od.ObjectName.strip()

# Prepare a Message Descriptor for the request message.
md = pymqi.MD()
md.ReplyToQ = dyn_queue_name

# Send the message.
queue = pymqi.Queue(qmgr, request_queue)
queue.put(message, md)