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 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 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); }
/// <summary>Get the value of a column identifier from a valuelist. </summary> /// <typeparam name="T">The type of the value.</typeparam> /// <param name="valueList">The valuelist.</param> /// <param name="index">The index</param> /// <param name="successHelper"><c>true</c> if the returned value is valid.</param> /// <returns>The value.</returns> private static T GetValue <T>(IEnumerable <string> valueList, int index, SuccessHelper successHelper) { string[] myValueList = valueList.ToArray(); T value = default(T); bool success = false; if (myValueList.Length > index) { string stringValue = myValueList[index]; TypeConverter tc = TypeDescriptor.GetConverter(value); value = (T)tc.ConvertFromString(stringValue); success = true; } successHelper.Success &= success; return(value); }
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)); }
public static string GetString(IEnumerable <string> valueList, int index, SuccessHelper success) { return(GetValue <string>(valueList, index, success)); }
public static DateTime GetDateTime(IEnumerable <string> valueList, int index, SuccessHelper success) { return(GetValue <DateTime>(valueList, index, success)); }
public static double GetDouble(IEnumerable <string> valueList, int index, SuccessHelper success) { return(GetValue <double>(valueList, index, success)); }
public static float GetFloat(IEnumerable <string> valueList, int index, SuccessHelper success) { return(GetValue <float>(valueList, index, success)); }
public static decimal GetDecimal(IEnumerable <string> valueList, int index, SuccessHelper success) { return(GetValue <decimal>(valueList, index, success)); }