您的位置:首页 > 其它

fix协议介绍3-登出消息

2013-12-12 14:53 295 查看


FIX.5.0SP2_EP168 Message

Logout [type '5']

The logout message initiates or confirms the termination of a FIX session. Disconnection without the exchange of logout messages should be interpreted as an abnormal condition.

Added FIX.2.7

Expand Components | Collapse Components
Field or ComponentField NameFIXML nameReq'dCommentsDepr.

ComponentStandardHeaderBaseHeader
MsgType = 5

1409SessionStatus@SessStatSession status at time of logout.

58Text@Txt

354EncodedTextLen@EncTxtLenMust be set if EncodedText field is specified and must immediately precede it.

355EncodedText@EncTxtEncoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field.

ComponentStandardTrailer
封装例子:

package cs.mina.codec.msg;

import java.util.HashSet;
import java.util.List;
import java.util.Set;

/*
*@author(huangxiaoping)
*@date 2013-11-25
*/
public class LogoutMsg extends BaseMsg {
private Tag text=new Tag("58","String",false);
private Tag encodedTextLen=new Tag("354","Length",false);
private Tag encodedText=new Tag("355","data",false);
private Set<String> tagIdsSet=new HashSet<String>();

public LogoutMsg(){
tagIdsSet.add("58");
tagIdsSet.add("354");
tagIdsSet.add("355");
this.bodyEntity.getBodyTagList().add(text);
this.bodyEntity.getBodyTagList().add(encodedTextLen);
this.bodyEntity.getBodyTagList().add(encodedText);
}
@Override
public void decodeBody() {

}

@Override
public void validate() {
if(encodedText.getTagValue()!=null){
encodedTextLen.setMust(true);
}
this.headEntity.validate();
List<Tag> bodyTagList=this.bodyEntity.getBodyTagList();
for(int i=0;i<bodyTagList.size();i++){
bodyTagList.get(i).validate();
}
this.tailerEntity.validate();
}

public Tag getText() {
return text;
}

public void setText(Tag text) {
this.text = text;
}

public Tag getEncodedTextLen() {
return encodedTextLen;
}

public void setEncodedTextLen(Tag encodedTextLen) {
this.encodedTextLen = encodedTextLen;
}

public Tag getEncodedText() {
return encodedText;
}

public void setEncodedText(Tag encodedText) {
this.encodedText = encodedText;
}

public Set<String> getTagIdsSet() {
return tagIdsSet;
}

public void setTagIdsSet(Set<String> tagIdsSet) {
this.tagIdsSet = tagIdsSet;
}

}


处理逻辑:略
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: