internal override IFreeformEntity CreateEntityInternal(FFCreateEntityRequest request)
        {
            if (!(request is FFCreateEntityRequest_H2G)) return null;

            // create the entity and parse
            FFCreateEntityRequest_H2G request2 = request as FFCreateEntityRequest_H2G;
            int iPollCode = (int)request2.PollCode;
            FFMsg_H2G msg = this.GetParserFromAppId(iPollCode).CreateEntity() as FFMsg_H2G;
            msg.IsSecured = request2.IsSecured;
            msg.IsResponseRequired = request2.IsResponseRequired;
            msg.IpAddress = request.IPAddress;
            msg.PollCode = (FF_AppId_H2G_PollCodes)iPollCode;
            msg.SessionID = request2.SessionID;
            msg.TransactionID = request2.TransactionID;
            return msg;
        }
        internal override IFreeformEntity CreateEntityInternal(FFCreateEntityRequest request)
        {
            if (!(request is FFCreateEntityRequest_G2H)) return null;

            // create the entity and parse
            FFCreateEntityRequest_G2H request2 = request as FFCreateEntityRequest_G2H;
            int iCommand = (int)request2.Command;
            FFMsg_G2H msg = this.GetParserFromAppId(iCommand).CreateEntity() as FFMsg_G2H;
            msg.IsSecured = request2.IsSecured;
            msg.IsResponseRequired = request2.IsResponseRequired;
            msg.IpAddress = request2.IPAddress;
            msg.Command = (FF_AppId_G2H_Commands)iCommand;
            msg.MessageType = request2.MessageType;
            msg.SessionID = request2.SessionID;
            msg.TransactionID = request2.TransactionID;
            return msg;
        }
 internal override IFreeformEntity CreateEntityInternal(FFCreateEntityRequest request)
 {
     return _messageParser.CreateEntity(request);
 }
        public IFreeformEntity_Msg CopyTo(FF_FlowDirection direction, FFCreateEntityRequest request)
        {
            using (ILogMethod method = Log.LogMethod(this.DYN_MODULE_NAME, "CopyTo"))
            {
                IFreeformEntity_Msg result = null;

                try
                {
                    result = FreeformEntityFactory.CreateEntity<IFreeformEntity_Msg>(direction, request);
                    result.IpAddress = this.IpAddress;
                    result.DeviceType = this.DeviceType;
                    result.SessionID = this.SessionID;
                    if (!request.SkipTransactionId)
                        result.TransactionID = this.TransactionID;
                    result.IsSecured = this.IsSecured;
                }
                catch (Exception ex)
                {
                    method.Exception(ex);
                }

                return result;
            }
        }