Versions in this module Expand all Collapse all v1 v1.0.2 Feb 7, 2025 v1.0.1 Jan 20, 2025 Changes in this version + const ApplVerIDFIX27 + const ApplVerIDFIX30 + const ApplVerIDFIX40 + const ApplVerIDFIX41 + const ApplVerIDFIX42 + const ApplVerIDFIX43 + const ApplVerIDFIX44 + const ApplVerIDFIX50 + const ApplVerIDFIX50SP1 + const ApplVerIDFIX50SP2 + const BeginStringFIX40 + const BeginStringFIX41 + const BeginStringFIX42 + const BeginStringFIX43 + const BeginStringFIX44 + const BeginStringFIXT11 + const UserDefinedTagMin + var ErrDoNotSend = errors.New("Do Not Send") + func GetExpectedSenderNum(sessionID SessionID) (int, error) + func GetExpectedTargetNum(sessionID SessionID) (int, error) + func ParseMessage(msg *Message, rawMessage *bytes.Buffer) (err error) + func ParseMessageWithDataDictionary(msg *Message, rawMessage *bytes.Buffer, ...) (err error) + func ResetSession(sessionID SessionID) error + func Send(m Messagable) (err error) + func SendToTarget(m Messagable, sessionID SessionID) error + func SetNextSenderMsgSeqNum(sessionID SessionID, seqNum int) error + func SetNextTargetMsgSeqNum(sessionID SessionID, seqNum int) error + func UnregisterSession(sessionID SessionID) error + type Acceptor struct + func NewAcceptor(app Application, storeFactory MessageStoreFactory, settings *Settings, ...) (a *Acceptor, err error) + func (a *Acceptor) RemoteAddr(sessionID SessionID) (net.Addr, bool) + func (a *Acceptor) SetConnectionValidator(validator ConnectionValidator) + func (a *Acceptor) SetTLSConfig(tlsConfig *tls.Config) + func (a *Acceptor) Start() (err error) + func (a *Acceptor) Stop() + type Application interface + FromAdmin func(message *Message, sessionID SessionID) MessageRejectError + FromApp func(message *Message, sessionID SessionID) MessageRejectError + OnCreate func(sessionID SessionID) + OnLogon func(sessionID SessionID) + OnLogout func(sessionID SessionID) + ToAdmin func(message *Message, sessionID SessionID) + ToApp func(message *Message, sessionID SessionID) error + type Body struct + func (b *Body) Init() + func (t Body) Len() int + func (t Body) Less(i, j int) bool + func (t Body) Swap(i, j int) + type ConditionallyRequiredSetting struct + Setting string + func (e ConditionallyRequiredSetting) Error() string + type ConnectionValidator interface + Validate func(netConn net.Conn, session SessionID) error + type FIXBoolean bool + func (f *FIXBoolean) Read(bytes []byte) error + func (f FIXBoolean) Bool() bool + func (f FIXBoolean) Write() []byte + type FIXBytes []byte + func (f *FIXBytes) Read(bytes []byte) (err error) + func (f FIXBytes) Write() []byte + type FIXDecimal struct + Scale int32 + func (d *FIXDecimal) Read(bytes []byte) (err error) + func (d FIXDecimal) Write() []byte + type FIXFloat float64 + func (f *FIXFloat) Read(bytes []byte) error + func (f FIXFloat) Float64() float64 + func (f FIXFloat) Write() []byte + type FIXInt int + func (f *FIXInt) Read(bytes []byte) error + func (f FIXInt) Int() int + func (f FIXInt) Write() []byte + type FIXString string + func (f *FIXString) Read(bytes []byte) (err error) + func (f FIXString) String() string + func (f FIXString) Write() []byte + type FIXUTCTimestamp struct + Precision TimestampPrecision + func (f *FIXUTCTimestamp) Read(bytes []byte) (err error) + func (f FIXUTCTimestamp) Write() []byte + type Field interface + type FieldGroup interface + Read func([]TagValue) ([]TagValue, error) + Tag func() Tag + Write func() []TagValue + type FieldGroupReader interface + Read func([]TagValue) ([]TagValue, error) + Tag func() Tag + type FieldGroupWriter interface + Tag func() Tag + Write func() []TagValue + type FieldMap struct + func (m *FieldMap) Clear() + func (m *FieldMap) CopyInto(to *FieldMap) + func (m *FieldMap) Remove(tag Tag) + func (m *FieldMap) Set(field FieldWriter) *FieldMap + func (m *FieldMap) SetBool(tag Tag, value bool) *FieldMap + func (m *FieldMap) SetBytes(tag Tag, value []byte) *FieldMap + func (m *FieldMap) SetField(tag Tag, field FieldValueWriter) *FieldMap + func (m *FieldMap) SetGroup(field FieldGroupWriter) *FieldMap + func (m *FieldMap) SetInt(tag Tag, value int) *FieldMap + func (m *FieldMap) SetString(tag Tag, value string) *FieldMap + func (m FieldMap) Get(parser Field) MessageRejectError + func (m FieldMap) GetBool(tag Tag) (bool, MessageRejectError) + func (m FieldMap) GetBytes(tag Tag) ([]byte, MessageRejectError) + func (m FieldMap) GetField(tag Tag, parser FieldValueReader) MessageRejectError + func (m FieldMap) GetGroup(parser FieldGroupReader) MessageRejectError + func (m FieldMap) GetInt(tag Tag) (int, MessageRejectError) + func (m FieldMap) GetString(tag Tag) (string, MessageRejectError) + func (m FieldMap) GetTime(tag Tag) (t time.Time, err MessageRejectError) + func (m FieldMap) Has(tag Tag) bool + func (m FieldMap) Tags() []Tag + func (t FieldMap) Len() int + func (t FieldMap) Less(i, j int) bool + func (t FieldMap) Swap(i, j int) + type FieldValue interface + type FieldValueReader interface + Read func([]byte) error + type FieldValueWriter interface + Write func() []byte + type FieldWriter interface + Tag func() Tag + type Group struct + func (t Group) Len() int + func (t Group) Less(i, j int) bool + func (t Group) Swap(i, j int) + type GroupItem interface + Clone func() GroupItem + Read func([]TagValue) ([]TagValue, error) + Tag func() Tag + func GroupElement(tag Tag) GroupItem + type GroupTemplate []GroupItem + func (gt GroupTemplate) Clone() GroupTemplate + type Header struct + func (h *Header) Init() + func (t Header) Len() int + func (t Header) Less(i, j int) bool + func (t Header) Swap(i, j int) + type IncorrectFormatForSetting struct + Err error + Setting string + Value []byte + func (e IncorrectFormatForSetting) Error() string + type Initiator struct + func NewInitiator(app Application, storeFactory MessageStoreFactory, appSettings *Settings, ...) (*Initiator, error) + func (i *Initiator) Start() (err error) + func (i *Initiator) Stop() + type Log interface + OnEvent func(string) + OnEventf func(string, ...interface{}) + OnIncoming func([]byte) + OnOutgoing func([]byte) + func GetLog(sessionID SessionID) (Log, error) + type LogFactory interface + Create func() (Log, error) + CreateSessionLog func(sessionID SessionID) (Log, error) + func NewNullLogFactory() LogFactory + type Messagable interface + ToMessage func() *Message + type Message struct + Body Body + Header Header + ReceiveTime time.Time + Trailer Trailer + func NewMessage() *Message + func (m *Message) Bytes() []byte + func (m *Message) CopyInto(to *Message) + func (m *Message) IsMsgTypeOf(msgType string) bool + func (m *Message) MsgType() (string, MessageRejectError) + func (m *Message) String() string + func (m *Message) ToMessage() *Message + type MessageRejectError interface + BusinessRejectRefID func() string + IsBusinessReject func() bool + RefTagID func() *Tag + RejectReason func() int + func ConditionallyRequiredFieldMissing(tag Tag) MessageRejectError + func IncorrectDataFormatForValue(tag Tag) MessageRejectError + func InvalidMessageType() MessageRejectError + func InvalidTagNumber(tag Tag) MessageRejectError + func NewBusinessMessageRejectError(err string, rejectReason int, refTagID *Tag) MessageRejectError + func NewBusinessMessageRejectErrorWithRefID(err string, rejectReason int, businessRejectRefID string, refTagID *Tag) MessageRejectError + func NewMessageRejectError(err string, rejectReason int, refTagID *Tag) MessageRejectError + func RequiredTagMissing(tag Tag) MessageRejectError + func TagNotDefinedForThisMessageType(tag Tag) MessageRejectError + func TagSpecifiedWithoutAValue(tag Tag) MessageRejectError + func UnsupportedMessageType() MessageRejectError + func ValueIsIncorrect(tag Tag) MessageRejectError + type MessageRoute func(msg *Message, sessionID SessionID) MessageRejectError + type MessageRouter struct + func NewMessageRouter() *MessageRouter + func (c MessageRouter) AddRoute(beginString string, msgType string, router MessageRoute) + func (c MessageRouter) Route(msg *Message, sessionID SessionID) MessageRejectError + type MessageStore interface + Close func() error + CreationTime func() time.Time + GetMessages func(beginSeqNum, endSeqNum int) ([][]byte, error) + IncrNextSenderMsgSeqNum func() error + IncrNextTargetMsgSeqNum func() error + IterateMessages func(beginSeqNum, endSeqNum int, cb func([]byte) error) error + NextSenderMsgSeqNum func() int + NextTargetMsgSeqNum func() int + Refresh func() error + Reset func() error + SaveMessage func(seqNum int, msg []byte) error + SaveMessageAndIncrNextSenderMsgSeqNum func(seqNum int, msg []byte) error + SetCreationTime func(time.Time) + SetNextSenderMsgSeqNum func(next int) error + SetNextTargetMsgSeqNum func(next int) error + func GetMessageStore(sessionID SessionID) (MessageStore, error) + type MessageStoreFactory interface + Create func(sessionID SessionID) (MessageStore, error) + func NewMemoryStoreFactory() MessageStoreFactory + type RejectLogon struct + Text string + func (RejectLogon) BusinessRejectRefID() string + func (RejectLogon) IsBusinessReject() bool + func (RejectLogon) RefTagID() *Tag + func (RejectLogon) RejectReason() int + func (e RejectLogon) Error() string + type RepeatingGroup struct + func NewRepeatingGroup(tag Tag, template GroupTemplate) *RepeatingGroup + func (f *RepeatingGroup) Add() *Group + func (f *RepeatingGroup) Read(tv []TagValue) ([]TagValue, error) + func (f RepeatingGroup) Clone() GroupItem + func (f RepeatingGroup) Get(i int) *Group + func (f RepeatingGroup) Len() int + func (f RepeatingGroup) Tag() Tag + func (f RepeatingGroup) Write() []TagValue + type SessionID struct + BeginString string + Qualifier string + SenderCompID string + SenderLocationID string + SenderSubID string + TargetCompID string + TargetLocationID string + TargetSubID string + func (s SessionID) IsFIXT() bool + func (s SessionID) String() string + type SessionSettings struct + func NewSessionSettings() *SessionSettings + func (s *SessionSettings) DurationSetting(setting string) (time.Duration, error) + func (s *SessionSettings) HasSetting(setting string) bool + func (s *SessionSettings) Init() + func (s *SessionSettings) IntSetting(setting string) (int, error) + func (s *SessionSettings) RawSetting(setting string) ([]byte, error) + func (s *SessionSettings) Set(setting string, val string) + func (s *SessionSettings) SetRaw(setting string, val []byte) + func (s *SessionSettings) Setting(setting string) (string, error) + func (s SessionSettings) BoolSetting(setting string) (bool, error) + type Settings struct + func NewSettings() *Settings + func ParseSettings(reader io.Reader) (*Settings, error) + func (s *Settings) AddSession(sessionSettings *SessionSettings) (SessionID, error) + func (s *Settings) GlobalSettings() *SessionSettings + func (s *Settings) Init() + func (s *Settings) SessionSettings() map[SessionID]*SessionSettings + type Tag int + func (t Tag) IsHeader() bool + func (t Tag) IsTrailer() bool + type TagValue struct + func (tv TagValue) String() string + type TimestampPrecision int + const Micros + const Millis + const Nanos + const Seconds + type Trailer struct + func (t *Trailer) Init() + func (t Trailer) Len() int + func (t Trailer) Less(i, j int) bool + func (t Trailer) Swap(i, j int) + type Validator interface + Validate func(*Message) MessageRejectError + func NewValidator(settings ValidatorSettings, ...) Validator + type ValidatorSettings struct + AllowUnknownMessageFields bool + CheckFieldsOutOfOrder bool + CheckUserDefinedFields bool + RejectInvalidMessage bool