Beispiel #1
0
        public new void crack(QuickFix.Message message, QuickFix.SessionID sessionID)
        {
            BeginString beginString = new BeginString();

            message.getHeader().getField(beginString);
            String value = beginString.getValue();

            if (value.Equals("FIX.4.0"))
            {
                ((QuickFix40.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.1"))
            {
                ((QuickFix41.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.2"))
            {
                ((QuickFix42.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.3"))
            {
                ((QuickFix43.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.4"))
            {
                ((QuickFix44.MessageCracker) this).crack(message, sessionID);
            }
            else
            {
                onMessage(message, sessionID);
            }
        }
Beispiel #2
0
        public new void crack(QuickFix.Message message, QuickFix.SessionID sessionID)
        {
            BeginString beginString = new BeginString();

            message.getHeader().getField(beginString);
            crack(message, sessionID, beginString);
        }
Beispiel #3
0
            public override bool Equals(object obj)
            {
                var version = obj as Version;

                if (version == null)
                {
                    return(false);
                }
                return(BeginString.Equals(version.BeginString));
            }
Beispiel #4
0
        public void crack(QuickFix.Message message, QuickFix.SessionID sessionID, BeginString beginString)
        {
            String value = beginString.getValue();

            if (value.Equals("FIX.4.0"))
            {
                ((QuickFix40.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.1"))
            {
                ((QuickFix41.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.2"))
            {
                ((QuickFix42.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.3"))
            {
                ((QuickFix43.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.4.4"))
            {
                ((QuickFix44.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIX.5.0"))
            {
                ((QuickFix50.MessageCracker) this).crack(message, sessionID);
            }
            else if (value.Equals("FIXT.1.1"))
            {
                if (message.isAdmin())
                {
                    ((QuickFixT11.MessageCracker) this).crack(message, sessionID);
                }
                else
                {
                    ApplVerID applVerID = new ApplVerID();
                    if (!message.getHeader().isSetField(applVerID))
                    {
                        Session session = Session.lookupSession(sessionID);
                        applVerID.setValue(session.getSenderDefaultApplVerID());
                    }
                    else
                    {
                        message.getHeader().getField(applVerID);
                    }

                    crack(message, sessionID, Message.toBeginString(applVerID));
                }
            }
            else
            {
                onMessage(message, sessionID);
            }
        }
Beispiel #5
0
 // Throws if the protocol can't be recognized.
 IMessageFactory GetFactory(IEnumerator<Field> fields)
 {
     if (!fields.MoveNext()) throw new MissingBeginStringException();
     int tag = Deserialization.ParseInt(fields.Current.Tag);
     BeginString version = new BeginString();
     if (version.AcceptField(tag, fields.Current.Value) != FieldAcceptance.Accepted)
         throw new MissingBeginStringException();
     if (!_protocols.ContainsKey(version.Value))
         throw new UnsupportedProtocolException(String.Format("Unrecognized protocol: {0}", version.Value));
     return _protocols[version.Value];
 }
    public void crack( QuickFix.Message message, QuickFix.SessionID sessionID, BeginString beginString )
    {
      String value = beginString.getValue();
      if (value.Equals("FIX.4.0"))
        ((QuickFix40.MessageCracker)this).crack(message, sessionID);
      else if (value.Equals("FIX.4.1"))
        ((QuickFix41.MessageCracker)this).crack(message, sessionID);
      else if (value.Equals("FIX.4.2"))
        ((QuickFix42.MessageCracker)this).crack(message, sessionID);
      else if (value.Equals("FIX.4.3"))
        ((QuickFix43.MessageCracker)this).crack(message, sessionID);
      else if (value.Equals("FIX.4.4"))
        ((QuickFix44.MessageCracker)this).crack(message, sessionID);
      else if (value.Equals("FIX.5.0"))
        ((QuickFix50.MessageCracker)this).crack(message, sessionID);
      else if (value.Equals("FIX.5.0SP1"))
        ((QuickFix50Sp1.MessageCracker)this).crack(message, sessionID);
      else if (value.Equals("FIX.5.0SP2"))
        ((QuickFix50Sp2.MessageCracker)this).crack(message, sessionID);
      else if( value.Equals("FIXT.1.1") )
      {
        if( message.isAdmin() )
        {
          ((QuickFixT11.MessageCracker)this).crack( message, sessionID );
        }
        else
        {
          ApplVerID applVerID = new ApplVerID();
          if( !message.getHeader().isSetField(applVerID) )
          {
            Session session = Session.lookupSession( sessionID );
            applVerID.setValue(session.getSenderDefaultApplVerID());
          }
          else
          {
            message.getHeader().getField( applVerID );
          }

          crack( message, sessionID, Message.toBeginString( applVerID ));
        }
      }
      else
        onMessage( message, sessionID );
    }
 public new void crack( QuickFix.Message message, QuickFix.SessionID sessionID )
 {
   BeginString beginString = new BeginString();
   message.getHeader().getField( beginString );
   crack( message, sessionID, beginString );
 }
Beispiel #8
0
 public override int GetHashCode() => BeginString.GetHashCode();