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

📄 bind.java

📁 联通短信网关SGIP通用java源代码
💻 JAVA
字号:
package com.zzxy.shortmessage.SGIP;

import java.nio.ByteBuffer;




public class Bind  extends SGIPAbstractStruct{
	/*1B 登录类型。
	  1:SP向SMG建立的连接,用于发送命令
	  2:SMG向SP建立的连接,用于发送命令
	  3:SMG之间建立的连接,用于转发命令
	  4:SMG向GNS建立的连接,用于路由表的检索和维护
	  5:GNS向SMG建立的连接,用于路由表的更新
	  6:主备GNS之间建立的连接,用于主备路由表的一致性
	  11:SP与SMG以及SMG之间建立的测试连接,用于跟踪测试其它:保留*/
	public byte Login_Type=1;
	public String Login_Name;   //16B 服务器端给客户端分配的登录名
	public String Login_Passowrd;  //16B 服务器端和Login Name对应的密码
	public String Reserve;//8B 保留,扩展用
	
	public static final int STRUCT_SIZE=41;
	
	public Bind() {
		Head head = new Head();
		head.Msglen=Head.STRUCT_SIZE+this.STRUCT_SIZE;
		head.Cmd_id=SGIP.SGIP_BIND;
		this.setHead(head);
	}
	
	@Override
	public ByteBuffer getBuffer() {
		ByteBuffer buffer = ByteBuffer.allocate(STRUCT_SIZE);
		buffer.order(byteOrder);
		buffer.put(Login_Type);
		
		buffer.put(Login_Name.getBytes());
		for (int i = Login_Name.getBytes().length; i < 16; i++) {
			buffer.put((byte)0);
		}
		
		buffer.put(Login_Passowrd.getBytes());
		for (int i = Login_Passowrd.getBytes().length; i < 16; i++) {
			buffer.put((byte)0);
		}
		
		for (int i = 0; i < 8; i++) {
			buffer.put((byte)0);
		}
		buffer.flip();
		return buffer;
	}

	@Override
	public void setBuffer(ByteBuffer buffer) throws Exception {
		buffer.order(byteOrder);
		Login_Type = buffer.get();
		byte temp[] = new byte[16];
		buffer.get(temp, 0, 16);
		Login_Name = new String(temp, "GB2312");
		Login_Name = Login_Name.trim();
		buffer.get(temp, 0, 16);
		Login_Passowrd = new String(temp, "GB2312");
		Login_Passowrd = Login_Passowrd.trim();
	}
  }

⌨️ 快捷键说明

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