public SiusDataMessage Parse(RawMessage rawMessage) { if (!rawMessage.IsResponsible(Identifier, ValueCount)) { return(null); } string[] valueList = rawMessage.Values.ToArray(); SuccessHelper allOverSuccess = new SuccessHelper(); int shooterNumber = ValueAccessHelper.GetInt(valueList, ShooterNumber, allOverSuccess); int laneId = ValueAccessHelper.GetInt(valueList, LaneId, allOverSuccess); int laneNumber = ValueAccessHelper.GetInt(valueList, LaneNumber, allOverSuccess); DateTime timestamp = ValueAccessHelper.GetDateTime(valueList, Timestamp, allOverSuccess); if (!allOverSuccess.Success) { return(null); } return(_messageFactory.MakePrchMessage(shooterNumber, laneId, laneNumber, timestamp)); }
public SiusDataMessage Parse(RawMessage rawMessage) { if (!rawMessage.IsResponsible(Identifier, ValueCount)) { return(null); } string[] valueList = rawMessage.Values.ToArray(); SuccessHelper allOverSuccess = new SuccessHelper(); int laneId = ValueAccessHelper.GetInt(valueList, LaneId, allOverSuccess); int laneNumber = ValueAccessHelper.GetInt(valueList, LaneNumber, allOverSuccess); int shooterId = ValueAccessHelper.GetInt(valueList, ShooterId, allOverSuccess); DateTime timstamp = ValueAccessHelper.GetDateTime(valueList, DateTime, allOverSuccess); int shotType = ValueAccessHelper.GetInt(valueList, ShotType, allOverSuccess); decimal primaryScore = ValueAccessHelper.GetDecimal(valueList, PrimaryScore, allOverSuccess); decimal secondaryScore = ValueAccessHelper.GetDecimal(valueList, SecondaryScore, allOverSuccess); int shotNbr = ValueAccessHelper.GetInt(valueList, ShotNbr, allOverSuccess); //float x = ValueAccessHelper.GetFloat(valueList, X, allOverSuccess); //float y = ValueAccessHelper.GetFloat(valueList, Y, allOverSuccess); int programNumber = ValueAccessHelper.GetInt(valueList, ProgramNumber, allOverSuccess); if (!allOverSuccess.Success) { return(null); } SiusDataMessage message = null; switch (shotType) { case 2: message = _messageFactory.MakeBestShotMessage(shooterId, laneId, laneNumber, timstamp, primaryScore, secondaryScore, shotNbr, programNumber); break; case 3: message = _messageFactory.MakeShotMessage(shooterId, laneId, laneNumber, timstamp, primaryScore, secondaryScore, shotNbr, programNumber); break; } return(message); }
public SiusDataMessage Parse(RawMessage rawMessage) { if (!rawMessage.IsResponsible(Identifier, ValueCount)) { return(null); } string[] valueList = rawMessage.Values.ToArray(); SuccessHelper allOverSuccess = new SuccessHelper(); int laneId = ValueAccessHelper.GetInt(valueList, LaneId, allOverSuccess); int laneNbr = ValueAccessHelper.GetInt(valueList, LaneNbr, allOverSuccess); int shooterId = ValueAccessHelper.GetInt(valueList, ShooterId, allOverSuccess); int primaryScore = ValueAccessHelper.GetInt(valueList, PrimaryScore, allOverSuccess); int secondaryScore = ValueAccessHelper.GetInt(valueList, SecondaryScore, allOverSuccess); DateTime timestamp = ValueAccessHelper.GetDateTime(valueList, Timestamp, allOverSuccess); if (!allOverSuccess.Success) { return(null); } return(_messageFactory.MakeTotalMessage(shooterId, laneId, timestamp, primaryScore, secondaryScore)); }