当前位置: 首页>>代码示例>>Java>>正文


Java MQMessage类代码示例

本文整理汇总了Java中com.ibm.mq.MQMessage的典型用法代码示例。如果您正苦于以下问题:Java MQMessage类的具体用法?Java MQMessage怎么用?Java MQMessage使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MQMessage类属于com.ibm.mq包,在下文中一共展示了MQMessage类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getGroupMessages

import com.ibm.mq.MQMessage; //导入依赖的package包/类
private void getGroupMessages() throws Exception {
	// Set the get message options(设置获取消息选项)
	gmo = new MQGetMessageOptions();
	gmo.options = MQC.MQGMO_FAIL_IF_QUIESCING;
	gmo.options = gmo.options + MQC.MQGMO_SYNCPOINT;
	gmo.options = gmo.options + MQC.MQGMO_WAIT;
	// Wait for messages(等待消息)
	gmo.waitInterval = 5000;
	// Set wait time limit in ms(在ms 里设置等待时间限制)
	gmo.options = gmo.options + MQC.MQGMO_ALL_MSGS_AVAILABLE; // Getmessages
	// only when all(只获取消息) messages of the group are available(当提供所有组消息时)
	gmo.options = gmo.options + MQC.MQGMO_LOGICAL_ORDER;
	// Get messages in the logical order.(以逻辑顺序获取消息)
	gmo.matchOptions = MQC.MQMO_MATCH_GROUP_ID;
	// Create the message buffer.(创建消息缓冲区)
	inMsg = new MQMessage();
	String msgData = null;
	// Process the messages of the group(处理组消息)
	while (true) {
		inQueue.get(inMsg, gmo);
		int msgLength = inMsg.getMessageLength();
		msgData = inMsg.readString(msgLength);
		System.out.println("The message is \n " + msgData);
		char x = gmo.groupStatus;
		// Check for the last message flag(检查看是否是最后消息标记)
		if (x == MQC.MQGS_LAST_MSG_IN_GROUP) {
			System.out.println("B Last Msg in Group");
			break;
		}
		inMsg.clearMessage();
	}
}
 
开发者ID:dreajay,项目名称:jcode,代码行数:33,代码来源:GroupReceiver.java

示例2: setRequestMQMD

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * Sets the request mqmd.
 *
 * @param message the message
 * @return the MQ message
 * @throws MQException the MQ exception
 */
protected MQMessage setRequestMQMD(MQMessage message) throws MQException {
	if (qmanager_level < 500){
		message.setVersion(1);
	}
	message.messageType = 1;
	message.expiry = expiryTime;
	message.report = 64;
	message.feedback = 0;
	message.format = "MQADMIN ";
	message.encoding = encoding;
	message.characterSet = 0;
	message.replyToQueueName = replyQueue.name;
	message.replyToQueueManagerName = "";
	message.persistence = 0;
	return message;
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:24,代码来源:Agent.java

示例3: write

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * Write.
 *
 * @param message the message
 * @param parameter the parameter
 * @param string the string
 * @return the int
 * @throws IOException Signals that an I/O exception has occurred.
 */
public static int write(MQMessage message, int parameter, String string) throws IOException {
	int stringLength = Parameter.getStringLength(string, message.characterSet);
	int padLength = stringLength % 4;

	if (padLength != 0) {
		padLength = 4 - padLength;
	}

	int totalLength = 20 + stringLength + padLength;

	message.writeString("");
	message.writeInt(4);
	message.writeInt(totalLength);
	message.writeInt(parameter);
	message.writeInt(message.characterSet);
	message.writeInt(stringLength);
	message.writeString(string);

	if (padLength != 0) {
		message.writeString(pads[padLength]);
	}

	return totalLength;
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:34,代码来源:ParameterString.java

示例4: initialize

import com.ibm.mq.MQMessage; //导入依赖的package包/类
public void initialize(MQMessage message) throws MQException, IOException {
	int type = message.readInt();

	if (type != 4) {
		throw new MQException(2, 3013, message);
	}

	this.strucLength = message.readInt();
	this.parameter = message.readInt();
	this.codedCharSetId = message.readInt();
	this.stringLength = message.readInt();
	this.string = ParameterHeader.readString(message, this.stringLength);

	if (this.stringLength < 0) {
		throw new MQException(2, 3011, message);
	}

	if (this.strucLength < 20 + this.stringLength) {
		throw new MQException(2, 3010, message);
	}

	int padLength = this.strucLength - 20 - this.stringLength;

	while (padLength-- > 0)
		message.readByte();
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:27,代码来源:ParameterString.java

示例5: initialize

import com.ibm.mq.MQMessage; //导入依赖的package包/类
public void initialize(MQMessage message) throws MQException, IOException {
	if (message.readInt() != 5) {
		throw new MQException(2, 3013, message);
	}

	this.strucLength = message.readInt();
	this.parameter = message.readInt();
	this.count = message.readInt();

	if (this.count < 0) {
		throw new MQException(2, 3027, message);
	}

	if (this.strucLength != 16 + this.count * 4) {
		throw new MQException(2, 3028, message);
	}

	this.values = new int[this.count];

	for (int i = 0; i < this.count; i++)
		this.values[i] = message.readInt();
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:23,代码来源:ParameterIntArray.java

示例6: oneIteration

import com.ibm.mq.MQMessage; //导入依赖的package包/类
public boolean oneIteration() throws Exception {
	
	inMessage = new MQMessage();
	
	inqueue.get( inMessage,gmo );
	
	if ( copyReplyFromRequest ) {
		outMessage = inMessage;
	} // else see default above
	
	if ( correlIDFromMsgID ) {
		System.arraycopy(inMessage.messageId, 0, outMessage.correlationId, 0, CMQC.MQ_CORREL_ID_LENGTH);
		pmo.options &= ~CMQC.MQPMO_NEW_MSG_ID;
	} else if ( !copyReplyFromRequest ) {
		// only need to copy if we created a new message
		System.arraycopy(inMessage.correlationId, 0, outMessage.correlationId, 0, CMQC.MQ_CORREL_ID_LENGTH);
		pmo.options &= ~CMQC.MQPMO_NEW_CORREL_ID;
	}
	startResponseTimePeriod();
	
	outqueue.put( outMessage,pmo );
	
	if (transacted)
		qm.commit();
	
	incIterations();
	
	return true;
}
 
开发者ID:ot4i,项目名称:perf-harness,代码行数:30,代码来源:Responder.java

示例7: sendGroupMessages

import com.ibm.mq.MQMessage; //导入依赖的package包/类
private void sendGroupMessages() throws Exception {
	/* 设置放置消息选项 */
	pmo = new MQPutMessageOptions();
	pmo.options = pmo.options + MQC.MQPMO_LOGICAL_ORDER;
	pmo.options = pmo.options + MQC.MQPMRF_GROUP_ID;
	outMsg = new MQMessage();
	/* 设置消息标记,表示该消息属于组 */
	outMsg.messageFlags = MQC.MQMF_MSG_IN_GROUP;

	/* 把消息格式设置成串 */
	outMsg.format = MQC.MQFMT_STRING;
	String msgData = null;

	/* 把10 个简单消息作为一组发送 */
	int i = 10;
	while (i > 0) {
		msgData = "This is the " + i + "th message in the group ";
		outMsg.writeString(msgData);
		if (i == 1)
			outMsg.messageFlags = MQC.MQMF_LAST_MSG_IN_GROUP;
		i--;
		/* 每次放置一个消息到队列) */
		outQueue.put(outMsg, pmo);

		/* 清理缓冲区,以便重用 */
		outMsg.clearMessage();
	}
}
 
开发者ID:dreajay,项目名称:jcode,代码行数:29,代码来源:GroupSender.java

示例8: ptpSender

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * 点到点客户机程序将创建一个简单的消息并发送它到WebSphere MQ 队列
 * 
 * 步骤如下: 调入WebSphere MQ Java API package; 为客户机连接设置环境属性; 连接到队列管理器;
 * 为打开WebSphere MQ 队列设置选项; 为发送消息打开应用程序队列; 设置选项, 放置消息到应用程序队列上; 创建消息缓冲区;
 * 使用用户数据和任何消息描述器字段准备消息; 放置消息到队列上。
 * 
 * @param args
 */
public static void ptpSender() {
	try {

		/* 设置MQEnvironment 属性以便客户机连接 */
		MQEnvironment.hostname = hostName;
		MQEnvironment.channel = channel;
		MQEnvironment.port = port;
		MQEnvironment.CCSID = CCSID;
		// MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
		// MQC.TRANSPORT_MQJD);

		/* 连接到队列管理器 */
		MQQueueManager qMgr = new MQQueueManager(qManager);

		/* 设置打开选项以便打开用于输出的队列,如果队列管理器正在停止,我们也已设置了选项去应对不成功情况。 */
		int openOptions = MQC.MQOO_OUTPUT | MQC.MQOO_FAIL_IF_QUIESCING;

		/* 打开队列 */
		MQQueue queue = qMgr.accessQueue(qName, openOptions, null, null, null);

		/* 设置放置消息选项,我们将使用默认设置 */
		MQPutMessageOptions pmo = new MQPutMessageOptions();

		/* 创建消息缓冲区,MQMessage 类包含实际消息数据的数据缓冲区,和描述消息的所有MQMD 参数 */
		MQMessage outMsg = new MQMessage();
		/* 设置MQMD 格式字段 */
		outMsg.format = MQC.MQFMT_STRING;
		/* 准备用户数据消息 */
		String msgString = "Test Message from PtpSender program ";
		outMsg.writeString(msgString);

		/* 在队列上放置消息 */
		queue.put(outMsg, pmo);

		/* 提交事务处理 */
		qMgr.commit();
		System.out.println(" The message has been Successfully put!\n");

		/* 关闭队列和队列管理器对象 */
		queue.close();
		qMgr.disconnect();
	} catch (MQException ex) {
		System.out.println("An MQ Error Occurred: Completion Code is :\t" + ex.completionCode + "\n\n The Reason Code is :\t" + ex.reasonCode);
		ex.printStackTrace();
	} catch (Exception e) {
		e.printStackTrace();
	}
}
 
开发者ID:dreajay,项目名称:jcode,代码行数:58,代码来源:Ptp.java

示例9: isLast

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * Checks if is last.
 *
 * @param response the response
 * @return true, if is last
 * @throws MQException the MQ exception
 * @throws IOException Signals that an I/O exception has occurred.
 */
boolean isLast(MQMessage response) throws MQException, IOException {
	cfh.initialize(response);
	boolean result = false;
	if(TYPE_390 == type){
		String current = null;
		int count = cfh.parameterCount;
		while (count-- > 0) {
			Parameter p = Parameter.nextParameter(response);
			int id = p.getParameter();
			if (id == 7003) {
				set.add(p.getStringValue());
			} else if (id == 7004) {
				set.add(current = p.getStringValue());
			}
		}
		response.seek(0);
		if ((cfh.control == 1) && (current != null)) {
			set.remove(current);
		}
		result = set.size() == 0;
	}else{
	    response.seek(0);
	    result= cfh.control == 1;
	}
	return result;
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:35,代码来源:AgentResponseTracker.java

示例10: nextParameter

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * Next parameter.
 *
 * @param message the message
 * @return the parameter
 * @throws MQException the MQ exception
 * @throws IOException Signals that an I/O exception has occurred.
 */
public static Parameter nextParameter(MQMessage message) throws MQException, IOException {
	message.writeBytes("");
	int pos = message.getDataOffset();
	int type = message.readInt();
	message.seek(pos);

	switch (type) {
	case 3:
		return new ParameterInt(message);
	case 5:
		return new ParameterIntArray(message);
	case 4:
		return new ParameterString(message);
	case 6:
	case 9:
	case 23:
	case 25:
	case 20:
	case 13:
	case 14:
	case 15:
	case 7:
	case 8:
	case 10:
	case 11:
	case 12:
	case 16:
	case 17:
	case 18:
	case 19:
	case 21:
	case 22:
	case 24:
	}
	throw new MQException(2, 3013, message);
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:45,代码来源:Parameter.java

示例11: writeString

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * Write string.
 *
 * @param message the message
 * @param string the string
 * @return the int
 * @throws IOException Signals that an I/O exception has occurred.
 */
protected static int writeString(MQMessage message, String string) throws IOException {
	if (string == null) {
		return 0;
	}
	int pos = message.getDataOffset();
	message.writeString(string);
	return message.getDataOffset() - pos;
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:17,代码来源:Parameter.java

示例12: initialize

import com.ibm.mq.MQMessage; //导入依赖的package包/类
public void initialize(MQMessage message) throws MQException, IOException {
	if (message.readInt() != 3) {
		throw new MQException(2, 3013, message);
	}

	if (message.readInt() != 16) {
		throw new MQException(2, 3009, message);
	}

	this.parameter = message.readInt();
	this.value = message.readInt();
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:13,代码来源:ParameterInt.java

示例13: write

import com.ibm.mq.MQMessage; //导入依赖的package包/类
public int write(MQMessage message) throws IOException {
	message.writeInt(3);
	message.writeInt(16);
	message.writeInt(this.parameter);
	message.writeInt(this.value);
	return 16;
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:8,代码来源:ParameterInt.java

示例14: write

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * Write.
 *
 * @param message the message
 * @param command the command
 * @param parameterCount the parameter count
 * @param type the type
 * @param version the version
 * @return the int
 * @throws IOException Signals that an I/O exception has occurred.
 */
public static int write(MQMessage message, int command, int parameterCount, int type, int version) throws IOException {
	message.writeInt(type);
	message.writeInt(36);
	message.writeInt(version);
	message.writeInt(command);
	message.writeInt(1);
	message.writeInt(1);
	message.writeInt(0);
	message.writeInt(0);
	message.writeInt(parameterCount);
	return 36;
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:24,代码来源:ParameterMessage.java

示例15: write

import com.ibm.mq.MQMessage; //导入依赖的package包/类
/**
 * Write.
 *
 * @param message the message
 * @param parameter the parameter
 * @param values the values
 * @return the int
 * @throws IOException Signals that an I/O exception has occurred.
 */
public static int write(MQMessage message, int parameter, int[] values) throws IOException {
	int count = values == null ? 0 : values.length;
	message.writeInt(5);
	message.writeInt(16 + count * 4);
	message.writeInt(parameter);
	message.writeInt(count);
	for (int i = 0; i < count; i++) {
		message.writeInt(values[i]);
	}
	return 16 + count * 4;
}
 
开发者ID:dubasdey,项目名称:MQQueueMonitor,代码行数:21,代码来源:ParameterIntArray.java


注:本文中的com.ibm.mq.MQMessage类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。