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

📄 builder_imreq.java

📁 中移动lbs系统服务器端源码
💻 JAVA
字号:
package cn.netjava.lbs.le;

/**
 * 
 * <p>Title:中国移动手机定位系统(LBS) le接口库</p>
 * <p>Description: 马上返回的定位请求打包</p>
 * <p>Company:蓝杰实训 </p>
 * @author www.NetJava.cn 
 * @version 0.1
 */
class Builder_imReq extends Builder_req {

	/**
	 * 打包同步定位自己
	 */
	void L_SyncSelf() {
		setValue(AttributeDesc.slir_res_type, "SYNC");
		// System.out.println( this.toXMLStr());
		buildHead();
		// System.out.println( this.toXMLStr());
		buildBody();
		// System.out.println( this.toXMLStr());
		addTail();
		// System.out.println( this.toXMLStr()+"\n ***********************end");
	}

	/**
	 * 打包同步定位别人
	 */
	void L_SyncOther() {
		setValue(AttributeDesc.slir_res_type, "SYNC");
		buildHead();
		addReqOther();
		buildBody();
		addTail();
	}

	/**
	 * 打包异步定位自己
	 */
	void L_AsyncSelf() {
		setValue(AttributeDesc.slir_res_type, "ASYNC");
		buildHead();
		buildBody();
		addPushAddr();
		addTail();
	}

	/**
	 * 打包异步定位别人
	 */
	void L_AsyncOther() {
		setValue(AttributeDesc.slir_res_type, "ASYNC");
		buildHead();
		addReqOther();
		buildBody();
		addPushAddr();
		addTail();
	}

	/**
	 * 加入消息头
	 */
	private void buildHead() {
		sb.append("<svc_init ver=\"1.0.0\" >\n");
		sb.append("<hdr ver=\"1.0.0\">\n");
		sb.append("<client> \n");
		sb.append("<id>" + this.getValue(AttributeDesc.client_id) + "</id>\n");
		sb.append("<pwd>" + this.getValue(AttributeDesc.client_pwd)
				+ "</pwd>\n");
		sb.append("<serviceid>" + this.getValue(AttributeDesc.client_serviceid)
				+ "</serviceid>\n");
		sb.append("<requestmode type=\""
				+ this.getValue(AttributeDesc.requestmode_type) + "\"/>\n");
		sb.append("</client>\n");
	}

	/**
	 * 如果有行业用户的话 ???
	 */
	private void addSubClient() {
		sb.append("<subclient>\n");
		sb.append("<id>" + this.getValue(AttributeDesc.subclient_id)
				+ "</id>\n");// <!—如果moto 是行业用户,ABC 就是行业用户下的某公司名à
		sb.append("</subclient>\n");
	}

	/**
	 * 加入共有的消息体 slir_res_type
	 */
	private void buildBody() {

		// 同/异步在此设定
		sb.append("</hdr>\n");
		sb.append("<slir ver=\"1.0.0\" res_type=\""
				+ this.getValue(AttributeDesc.slir_res_type) + "\">\n");
		sb.append("<msids>\n"); // <!—被查号段-->
		sb.append("<msid enc=\"ASC\" type=\"MSISDN\" >"
				+ getValue(AttributeDesc.msids_msid) + "</msid>\n");
		sb.append("</msids>\n");
		sb.append("<eqop>\n");
		sb.append("<resp_req type=\"" + getValue(AttributeDesc.resp_req_type)
				+ "\" />\n");
		sb.append("<hor_acc>" + getValue(AttributeDesc.eqop_hor_acc)
				+ "</hor_acc>\n");
		sb.append("</eqop>\n");
		sb.append("<geo_info>\n");
		sb.append("<CoordinateReferenceSystem>\n");
		sb.append("<Identifier>\n");
		sb.append("<code>4326</code>\n");
		sb.append("<codeSpace>EPSG</codeSpace>\n");
		sb.append("<edition>6.1</edition>\n");
		sb.append("</Identifier>\n");
		sb.append("</CoordinateReferenceSystem>\n");
		sb.append("</geo_info>\n");
		sb.append("<loc_type type=\"" + getValue(AttributeDesc.loc_type_type)
				+ "\" />\n");
		sb.append("<prio type = \"" + getValue(AttributeDesc.prio_type)
				+ "\" />\n");

	}

	/**
	 * 异步请求时,加上回送的URL
	 */
	private void addPushAddr() {
		sb.append("<pushaddr>\n");
		sb.append("<url>" + getValue(AttributeDesc.pushaddr_url) + "</url>\n");
		sb.append("<id>" + getValue(AttributeDesc.pushaddr_id) + "</id>\n");
		sb.append("<pwd>" + getValue(AttributeDesc.pushaddr_pwd) + "</pwd>\n");
		sb.append("</pushaddr>\n");
	}

	/**
	 * 加上公用的尾部XML
	 */
	private void addTail() {
		sb.append("</slir>\n");
		sb.append("</svc_init>\n");
	}

	/**
	 * 发起请求者的号码,当需要确认是发出。
	 */
	private void addReqOther() {
		sb.append("<requestor>\n");
		sb.append("<id>" + this.getValue(AttributeDesc.requestor_id)
				+ "</id>\n");
		sb.append("</requestor>\n");
	}

	Builder_imReq() {
		super();
	}

}

⌨️ 快捷键说明

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