⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 submitsmresp.java

📁 Logica lastest SMPP API
💻 JAVA
字号:
/*
 * Copyright (c) 1996-2001
 * Logica Mobile Networks Limited
 * All rights reserved.
 *
 * This software is distributed under Logica Open Source License Version 1.0
 * ("Licence Agreement"). You shall use it and distribute only in accordance
 * with the terms of the License Agreement.
 *
 */
package com.logica.smpp.pdu;

import com.logica.smpp.Data;
import com.logica.smpp.util.ByteBuffer;
import com.logica.smpp.util.NotEnoughDataInByteBufferException;
import com.logica.smpp.util.TerminatingZeroNotFoundException;

/**
 * @author Logica Mobile Networks SMPP Open Source Team
 * @version 1.0, 11 Jun 2001
 *
 * paolo@bulksms.com: patched to take into account that no body should be present
 * when command_status is non-zero.
 */

public class SubmitSMResp extends Response
{

	private String messageId = Data.DFLT_MSGID;

	public SubmitSMResp()
	{
		super(Data.SUBMIT_SM_RESP);
	}

	public void setBody(ByteBuffer buffer)
	throws NotEnoughDataInByteBufferException,
		   TerminatingZeroNotFoundException,
		   WrongLengthOfStringException,
		   InvalidPDUException
	{
		if (getCommandStatus() == 0)
		{
			setMessageId(buffer.removeCString());
			return;
		}


		if (buffer.length() > 0)
		{
			debug.enter(this,"setBody");
			debug.write("invalid SubmitSMResp: command_status non-zero, but body was present (ignoring body)");
			debug.exit(this);
			event.write("invalid SubmitSMResp sequenceNumber ["+getSequenceNumber()+"]: command_status non-zero, but body was present (ignoring body)");
			// This is broken in so many implementations that it's not practical
			// to be so pedantic about it, so we now just accept it.
			// throw new InvalidPDUException(this,"command_status non-zero, but body was present");
			buffer.removeBytes(buffer.length()); // discard body
		}
	}

	public ByteBuffer getBody()
	{
		ByteBuffer buffer = new ByteBuffer();
		if (getCommandStatus() == 0) buffer.appendCString(messageId);
		return buffer;
	}

	public void setMessageId(String value)
	throws WrongLengthOfStringException {
		checkString(value, Data.SM_MSGID_LEN);
			messageId = value;
	}

	public String getMessageId() { return messageId; }

	public String debugString()
	{
		String dbgs = "(submit_resp: ";
		dbgs += super.debugString();
		dbgs += getMessageId(); dbgs += " ";
		dbgs += debugStringOptional();
		dbgs += ") ";
		return dbgs;
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -