示例#1
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_EFT_TTimeOut_Response tgt = new FFTgt_H2G_GVA_EFT_TTimeOut_Response();

            tgt.TimeOut = FreeformHelper.GetBytesToNumberInt32(buffer, 0, 1);
            return(tgt);
        }
示例#2
0
        public virtual string ToStringDetail()
        {
            using (ILogMethod method = Log.LogMethod(this.DYN_MODULE_NAME, "ToStringDetail"))
            {
                StringBuilder sb = new StringBuilder();

                try
                {
                    if (this.RawData != null)
                    {
                        string prefix = string.Empty;

                        sb.AppendLine();
                        FreeformHelper.WriteLogStringLine(sb, prefix);
                        sb.AppendLine(prefix + string.Format("Length : {0:D}", this.RawData.Length));
                        sb.AppendLine("Data : ");
                        FreeformHelper.ConvertBytesToHexString(this.RawData, sb, prefix);
                        sb.AppendLine();
                        FreeformHelper.WriteLogStringLine(sb, prefix);

                        if (this.EntityData != null)
                        {
                            this.EntityData.ToStringDetail(sb, "\t");
                        }
                    }
                }
                catch (Exception ex)
                {
                    method.Exception(ex);
                }

                return(sb.ToString());
            }
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_G2H_GMUEvent_NoteAcceptorData tgt = new FFTgt_G2H_GMUEvent_NoteAcceptorData();

            tgt.EventData = FreeformHelper.GetASCIIStringValue(buffer, 0, 32);
            return(tgt);
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_TimeOfDay_Response tgt = new FFTgt_H2G_GVA_TimeOfDay_Response();

            tgt.TimeOfDay = FreeformHelper.GetBytesToBCDTimeSpan(buffer, 0, 3);
            return(tgt);
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_OFFTKT_TxtLine2_Response tgt = new FFTgt_H2G_GVA_OFFTKT_TxtLine2_Response();

            tgt.Line2Text = FreeformHelper.GetASCIIStringValueTrim(buffer, 0, 30);
            return(tgt);
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_G2H_EFT_OfferListRequest tgt = new FFTgt_G2H_EFT_OfferListRequest();

            tgt.PlayerCardNumber = FreeformHelper.GetBCDValueString(buffer, 0, 0, 5);
            return(tgt);
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FF_AppId_SystemToEPI_MessageTypes messageType = (FF_AppId_SystemToEPI_MessageTypes)buffer[0];
            FFTgt_H2G_SystemToEPI_Data        tgt         = null;

            switch (messageType)
            {
            case FF_AppId_SystemToEPI_MessageTypes.TicketPrint:
                tgt = new FFTgt_H2G_SystemToEPI_TicketPrint();
                break;

            case FF_AppId_SystemToEPI_MessageTypes.TicketRedeem:
                tgt = new FFTgt_H2G_SystemToEPI_TicketRedeem();
                break;

            case FF_AppId_SystemToEPI_MessageTypes.TicketError:
                tgt = new FFTgt_H2G_SystemToEPI_TicketError();
                break;

            case FF_AppId_SystemToEPI_MessageTypes.Promo:
                tgt = new FFTgt_H2G_SystemToEPI_Promo();
                break;

            case FF_AppId_SystemToEPI_MessageTypes.Sports:
                tgt = new FFTgt_H2G_SystemToEPI_Sports();
                break;

            case FF_AppId_SystemToEPI_MessageTypes.F5:
                tgt = new FFTgt_H2G_SystemToEPI_F5();
                break;
            }
            tgt.TextLength = buffer[1];
            tgt.Text       = FreeformHelper.GetASCIIStringValue(FreeformHelper.CopyToBuffer(buffer, 2, buffer.Length - 2));
            return(tgt);
        }
示例#8
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_TN_Response tgt = new FFTgt_H2G_GVA_TN_Response();

            tgt.TicketNumber = FreeformHelper.GetBytesToBCDInt32(buffer, 0, 3);
            return(tgt);
        }
示例#9
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_EFT_MaxDeposit_Response tgt = new FFTgt_H2G_GVA_EFT_MaxDeposit_Response();

            tgt.MaxDeposit = FreeformHelper.GetBytesToBCDDouble(buffer, 0, 4);
            return(tgt);
        }
示例#10
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_RTE_Days_Response tgt = new FFTgt_H2G_GVA_RTE_Days_Response();

            tgt.ExipreDays = FreeformHelper.GetBytesToBCDInt16(buffer, 0, 2);
            return(tgt);
        }
示例#11
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_CodeDownload_ChangeBaudRate tgt = new FFTgt_H2G_CodeDownload_ChangeBaudRate();

            tgt.BaudRate = FreeformHelper.GetBytesToNumberInt32(buffer, 0, 4);
            return(tgt);
        }
示例#12
0
        protected override void AddSubParsersInternal()
        {
            base.AddSubParsersInternal();

            // GIM
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.GIM, (int)FF_AppId_TargetIds.GIM,
                                       new FFParser_Tgt_MC300_GIM_G2H());

            // Status Block (GMU Events)
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.StatusBlock, (int)FF_AppId_TargetIds.StatusBlock,
                                       new FFParser_Tgt_MC300_GMUEvent_G2H());

            // Meters
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.MeterBlock, (int)FF_AppId_TargetIds.MeterBlock,
                                       new FFParser_Tgt_MC300_AccountingMeters_G2H());

            // Security
            this.AddBufferEntityParser(FreeformHelper.CreateCombinedId((int)FF_GmuId_SessionIds.Security, true, (int)FF_GmuId_TargetIds.Security, true),
                                       FreeformHelper.CreateCombinedId((int)FF_AppId_SessionIds.Security, true, (int)FF_AppId_TargetIds.Security, true),
                                       new FFParser_Tgt_MC300_Security_G2H());
            this.AddBufferEntityParser(FreeformHelper.CreateCombinedId((int)FF_GmuId_SessionIds.ECash, true, (int)FF_GmuId_TargetIds.Security, true),
                                       FreeformHelper.CreateCombinedId((int)FF_AppId_SessionIds.ECash, true, (int)FF_AppId_TargetIds.Security, true),
                                       new FFParser_Tgt_MC300_Security_G2H());
            this.AddBufferEntityParser(FreeformHelper.CreateCombinedId((int)FF_GmuId_SessionIds.Security, true, (int)FF_GmuId_TargetIds.Security, false),
                                       FreeformHelper.CreateCombinedId((int)FF_AppId_SessionIds.Security, true, (int)FF_AppId_TargetIds.Security, false),
                                       new FFParser_Tgt_MC300_Security_G2H());
            this.AddBufferEntityParser(FreeformHelper.CreateCombinedId((int)FF_GmuId_SessionIds.ECash, true, (int)FF_GmuId_TargetIds.Security, false),
                                       FreeformHelper.CreateCombinedId((int)FF_AppId_SessionIds.ECash, true, (int)FF_AppId_TargetIds.Security, false),
                                       new FFParser_Tgt_MC300_Security_G2H());

            // Tickets
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.Tickets, (int)FF_AppId_TargetIds.Tickets,
                                       new FFParser_Tgt_MC300_TicketInfo_G2H());
            this.AddBufferEntityParser(FreeformHelper.CreateRequestResponseId((int)FF_GmuId_TargetIds.Tickets, true),
                                       FreeformHelper.CreateRequestResponseId((int)FF_AppId_TargetIds.Tickets, true),
                                       new FFParser_Tgt_MC300_TicketInfo_G2H());
            this.AddBufferEntityParser(FreeformHelper.CreateCombinedId((int)FF_GmuId_SessionIds.Tickets, true, (int)FF_GmuId_TargetIds.Security, true),
                                       FreeformHelper.CreateCombinedId((int)FF_AppId_SessionIds.Tickets, true, (int)FF_AppId_TargetIds.Security, true),
                                       new FFParser_Tgt_MC300_Encrypted_G2H());

            // ECash
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.ECash, (int)FF_AppId_TargetIds.ECash,
                                       new FFParser_Tgt_MC300_EFT_G2H());
            this.AddBufferEntityParser(FreeformHelper.CreateCombinedId((int)FF_GmuId_SessionIds.ECash, false, (int)FF_GmuId_TargetIds.Security, true),
                                       FreeformHelper.CreateCombinedId((int)FF_AppId_SessionIds.ECash, false, (int)FF_AppId_TargetIds.Security, true),
                                       new FFParser_Tgt_MC300_Encrypted_G2H());

            // GMU Var Action
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.GMUVariableAction, (int)FF_AppId_TargetIds.GMUVariableAction,
                                       new FFParser_Tgt_MC300_GMUVarAction_G2H());

            // Game Message
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.GameMessage, (int)FF_AppId_TargetIds.GameMessage,
                                       new FFParser_Tgt_MC300_GameMessage_G2H());

            // PID
            this.AddBufferEntityParser((int)FF_GmuId_TargetIds.PID, (int)FF_AppId_TargetIds.PID,
                                       new FFParser_Tgt_MC300_PID_G2H());
        }
示例#13
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_G2H_GMUEvent_TicketData tgt = new FFTgt_G2H_GMUEvent_TicketData();

            tgt.BarcodeNumber = FreeformHelper.GetBytesToBCDDouble(buffer, 0, 9);
            tgt.ErrorCode     = FreeformHelper.GetBytesToNumberUInt8(buffer, 9, 1);
            return(tgt);
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GIM_AuxNetworkEnableDisable tgt = new FFTgt_H2G_GIM_AuxNetworkEnableDisable();

            tgt.EnableDisable = buffer[0].ConvertToBoolean();
            tgt.Display       = FreeformHelper.GetASCIIStringValue(buffer, 1, 0);
            return(tgt);
        }
示例#15
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_G2H_GVA_VV_Data_Request tgt = new FFTgt_G2H_GVA_VV_Data_Request();

            tgt.ValidationRequestID = FreeformHelper.GetValue <int>(buffer, 0, 9);
            tgt.NumValidationID     = FreeformHelper.GetValue <int>(buffer, 9, 1);
            return(tgt);
        }
示例#16
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_CodeDownload_ChangeVersion tgt = new FFTgt_H2G_CodeDownload_ChangeVersion();

            tgt.NewVersion = FreeformHelper.GetASCIIStringValue(buffer, 0, 7);
            tgt.OldVersion = FreeformHelper.GetASCIIStringValue(buffer, 7, 7);
            return(tgt);
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_B2B_Security_Indexed_KeyExchange_End tgt = new FFTgt_B2B_Security_Indexed_KeyExchange_End();

            tgt.KeyIndex = (FF_AppId_KeyExchange)buffer[0];
            tgt.Key      = FreeformHelper.CopyToBuffer(buffer, 1, 9);
            return(tgt);
        }
 public override void ToStringDetail(StringBuilder sb, string prefix)
 {
     sb.Append(string.Format("ID : {0:D}, Length : {1:D}", this.TargetID, this.TargetLength));
     if (this.EntityData != null)
     {
         FreeformHelper.ConvertBytesToHexString(this.EntityData, sb, ", Data : ");
     }
 }
示例#19
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_VP_Response tgt = new FFTgt_H2G_GVA_VP_Response();

            tgt.MaxValidationID      = FreeformHelper.GetValue <int>(buffer, 0, 1);
            tgt.MinLevelValidationID = FreeformHelper.GetValue <int>(buffer, 1, 2);
            return(tgt);
        }
示例#20
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_B2B_Security_BMCAuthentication tgt = new FFTgt_B2B_Security_BMCAuthentication();

            tgt.AuthenticationByte = buffer[0];
            tgt.EntityData         = FreeformHelper.CopyToBuffer(buffer, 1, buffer.Length);//want to decrypt
            return(tgt);
        }
示例#21
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_VV_Data_Response tgt = new FFTgt_H2G_GVA_VV_Data_Response();

            tgt.ValidationRequestID = FreeformHelper.GetValue <int>(buffer, 0, 9);
            tgt.ValidationIDs       = FreeformHelper.CopyToBuffer(buffer, 9, buffer.Length - 9);
            return(tgt);
        }
示例#22
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_GVA_TED_Response tgt = new FFTgt_H2G_GVA_TED_Response();

            tgt.Date       = buffer.GetBytesToBCDDateTimeUSTimeZone(0, 3);
            tgt.ExipreDays = FreeformHelper.GetBytesToBCDInt16(buffer, 3, 2);
            return(tgt);
        }
示例#23
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_B2B_EFT_SC_SerailNumber tgt = new FFTgt_B2B_EFT_SC_SerailNumber();

            tgt.EGMAssetNumber = FreeformHelper.GetBytesToNumberInt32(buffer, 0, 4);
            tgt.CashlessAccountNumberLength = buffer[4];
            tgt.CashlessAccountNumber       = FreeformHelper.GetBCDValueString(buffer, 0, 5, 40);
            return(tgt);
        }
示例#24
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_G2H_EFT_CashlessAccountLookup tgt = new FFTgt_G2H_EFT_CashlessAccountLookup();

            tgt.EGMAssetNumber = FreeformHelper.GetBytesToNumberInt32(buffer, 0, 4);
            tgt.CashlessAccountNumberLength = buffer[4];
            tgt.CashlessAccountNumber       = FreeformHelper.GetASCIIStringValue(buffer, 5, 40);
            return(tgt);
        }
示例#25
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_EPI_Info tgt = new FFTgt_H2G_EPI_Info();

            tgt.DeviceAddress = buffer[0];
            tgt.EPICommand    = buffer[1];
            tgt.EPIMessages   = FreeformHelper.CopyToBuffer(buffer, 2, buffer.Length);
            return(tgt);
        }
示例#26
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_B2B_Security_EncryptAuthentication tgt = new FFTgt_B2B_Security_EncryptAuthentication();

            tgt.EncryptionAlgorithm = buffer[0];
            tgt.KeyIndex            = buffer[1];
            tgt.EntityData          = FreeformHelper.CopyToBuffer(buffer, 2, buffer.Length);
            return(tgt);
        }
示例#27
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_EFT_WithdrawalAcknowledgement tgt = new FFTgt_H2G_EFT_WithdrawalAcknowledgement();

            tgt.PlayerCardNumber       = FreeformHelper.GetBCDValueString(buffer, 0, 0, 5);
            tgt.PlayerFlags.BytesValue = FreeformHelper.GetRange(buffer, 5, 3);
            tgt.DisplayMessageLength   = FreeformHelper.GetBytesToBCDUInt8(buffer, 8, 1);
            tgt.DisplayMessage         = FreeformHelper.GetBCDValueString(buffer, 0, 9, 128);
            return(tgt);
        }
示例#28
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_G2H_EFT_WithdrawalRequest tgt = new FFTgt_G2H_EFT_WithdrawalRequest();

            tgt.AccountType      = buffer[0].GetAppId <FF_GmuId_EFT_AccountTypes, FF_AppId_EFT_AccountTypes>();
            tgt.AmountRequested  = FreeformHelper.GetBytesToBCDDouble(buffer, 1, 4);
            tgt.PlayerCardNumber = FreeformHelper.GetBCDValueString(buffer, 0, 5, 5);
            tgt.Pin = FreeformHelper.GetBCDValueString(buffer, 0, 10, 2);
            return(tgt);
        }
示例#29
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_EFT_PIN_ChangeResponse tgt = new FFTgt_H2G_EFT_PIN_ChangeResponse();

            tgt.ErrorCode            = buffer[0];
            tgt.PlayerCardNumber     = FreeformHelper.GetBCDValueString(buffer, 0, 1, 5);
            tgt.DisplayMessageLength = FreeformHelper.GetBytesToNumberInt32(buffer, 6, 1);
            tgt.DisplayMessage       = FreeformHelper.GetBCDValueString(buffer, 0, 7, 128);
            return(tgt);
        }
示例#30
0
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_G2H_EFT_WithdrawalComplete tgt = new FFTgt_G2H_EFT_WithdrawalComplete();

            tgt.NonCashableAmount = FreeformHelper.GetBytesToBCDDouble(buffer, 0, 4);
            tgt.CashableAmount    = FreeformHelper.GetBytesToBCDDouble(buffer, 4, 4);
            tgt.ErrorCode         = buffer[8];
            tgt.PlayerCardNumber  = FreeformHelper.GetBCDValueString(buffer, 0, 9, 5);
            return(tgt);
        }