public override byte[] EncodeValue(ScalarValue value_Renamed) { System.DateTime date = ((DateValue)value_Renamed).value_Renamed; int intValue = Util.TimeToInt(ref date); return(UINT.Encode(new IntegerValue(intValue))); }
public override byte[] EncodeValue(ScalarValue value_Renamed) { System.DateTime date = ((DateValue)value_Renamed).value_Renamed; int millisecondsSinceMidnight = Util.MillisecondsSinceMidnight(ref date); return(INTEGER.EncodeValue(new IntegerValue(millisecondsSinceMidnight))); }
public override ScalarValue Decode(System.IO.Stream in_Renamed) { int intValue = ((IntegerValue)UINT.Decode(in_Renamed)).value_Renamed; System.DateTime tempAux = Util.ToTimestamp(intValue); return(new DateValue(ref tempAux)); }
protected internal static ScalarValue CreateValue(long value_Renamed) { if (Util.IsBiggerThanInt(value_Renamed)) { return(new LongValue(value_Renamed)); } return(new IntegerValue((int)value_Renamed)); }
public override ScalarValue Decode(System.IO.Stream in_Renamed) { long longValue = UINT.Decode(in_Renamed).ToLong(); var year = (int)(longValue / 10000); var month = (int)((longValue - (year * 10000)) / 100); var day = (int)(longValue % 100); System.DateTime tempAux = Util.Date(year, month, day); return(new DateValue(ref tempAux)); }
public override ScalarValue DecodeValue(ScalarValue newValue, ScalarValue previousValue, Scalar field) { if ((newValue == null) || newValue.Null) { return(null); } var diffValue = (TwinValue)newValue; ScalarValue base_Renamed = (previousValue.Undefined)?field.BaseValue:previousValue; if (diffValue.first.ToInt() > base_Renamed.ToString().Length) { Global.HandleError(Error.FastConstants.D7_SUBTRCTN_LEN_LONG, "The string diff <" + diffValue + "> cannot be applied to the base value \"" + base_Renamed + "\" because the subtraction length is too long."); } return(Util.ApplyDifference((StringValue)base_Renamed, diffValue)); }
public override ScalarValue GetValueToEncode(ScalarValue value_Renamed, ScalarValue priorValue, Scalar field) { if (value_Renamed == null) { return(ScalarValue.NULL); } if (priorValue == null) { Global.HandleError(Error.FastConstants.D6_MNDTRY_FIELD_NOT_PRESENT, "The field " + field + " must have a priorValue defined."); return(null); } ScalarValue base_Renamed = (priorValue.Undefined)?field.BaseValue:priorValue; return(Util.GetDifference((StringValue)value_Renamed, (StringValue)base_Renamed)); }
public override ScalarValue GetVal(string value_Renamed) { long longValue; try { longValue = Int64.Parse(value_Renamed); } catch (FormatException) { Global.HandleError(Error.FastConstants.S3_INITIAL_VALUE_INCOMP, "The value \"" + value_Renamed + "\" is not compatable with type " + this); return(null); } if (Util.IsBiggerThanInt(longValue)) { return(new LongValue(longValue)); } return(new IntegerValue((int)longValue)); }
public override Field Convert(GroupValue fieldDef, TemplateRegistry templateRegistry, ConversionContext context) { var name = new QName(fieldDef.GetString("Name"), fieldDef.GetString("Ns")); bool optional = fieldDef.GetBool("Optional"); var exponentDef = fieldDef.GetGroup("Exponent"); var exponentOperatorDef = exponentDef.GetGroup("Operator").GetGroup(0); var exponentOperator = GetOperator(exponentOperatorDef.GetGroup()); var exponentDefaultValue = ScalarValue.UNDEFINED; if (exponentDef.IsDefined("InitialValue")) { exponentDefaultValue = new IntegerValue(exponentDef.GetInt("InitialValue")); } var mantissaDef = fieldDef.GetGroup("Mantissa"); var mantissaOperatorDef = mantissaDef.GetGroup("Operator").GetGroup(0); var mantissaOperator = GetOperator(mantissaOperatorDef.GetGroup()); var mantissaDefaultValue = ScalarValue.UNDEFINED; if (mantissaDef.IsDefined("InitialValue")) { mantissaDefaultValue = new LongValue(mantissaDef.GetInt("InitialValue")); } return(Util.ComposedDecimal(name, exponentOperator, exponentDefaultValue, mantissaOperator, mantissaDefaultValue, optional)); }
private static Field createComposedDecimal(System.Xml.XmlElement fieldNode, QName name, bool optional, System.Xml.XmlNode mantissaNode, System.Xml.XmlNode exponentNode, ParsingContext context) { string mantissaOperator = "none"; string exponentOperator = "none"; ScalarValue mantissaDefaultValue = ScalarValue.UNDEFINED; ScalarValue exponentDefaultValue = ScalarValue.UNDEFINED; QName mantissaKey = null; QName exponentKey = null; string mantissaDictionary = context.Dictionary; string exponentDictionary = context.Dictionary; string mantissaNamespace = context.Namespace; string exponentNamespace = context.Namespace; if ((mantissaNode != null) && mantissaNode.HasChildNodes) { System.Xml.XmlElement operatorElement = GetElement((System.Xml.XmlElement)mantissaNode, 1); mantissaOperator = operatorElement.Name; if (operatorElement.HasAttribute("value")) { mantissaDefaultValue = FASTType.I64.GetValue(operatorElement.GetAttribute("value")); } if (operatorElement.HasAttribute("ns")) { mantissaNamespace = operatorElement.GetAttribute("ns"); } if (operatorElement.HasAttribute("key")) { mantissaKey = new QName(operatorElement.GetAttribute("key"), mantissaNamespace); } if (operatorElement.HasAttribute("dictionary")) { mantissaDictionary = operatorElement.GetAttribute("dictionary"); } } if ((exponentNode != null) && exponentNode.HasChildNodes) { System.Xml.XmlElement operatorElement = GetElement((System.Xml.XmlElement)exponentNode, 1); exponentOperator = operatorElement.Name; if (operatorElement.HasAttribute("value")) { exponentDefaultValue = FASTType.I32.GetValue(operatorElement.GetAttribute("value")); } if (operatorElement.HasAttribute("ns")) { exponentNamespace = operatorElement.GetAttribute("ns"); } if (operatorElement.HasAttribute("key")) { exponentKey = new QName(operatorElement.GetAttribute("key"), exponentNamespace); } if (operatorElement.HasAttribute("dictionary")) { exponentDictionary = operatorElement.GetAttribute("dictionary"); } } ComposedScalar scalar = Util.ComposedDecimal(name, Operator.Operator.GetOperator(exponentOperator), exponentDefaultValue, Operator.Operator.GetOperator(mantissaOperator), mantissaDefaultValue, optional); Scalar exponent = scalar.Fields[0]; exponent.Dictionary = exponentDictionary; if (exponentKey != null) { exponent.Key = exponentKey; } Scalar mantissa = scalar.Fields[1]; mantissa.Dictionary = mantissaDictionary; if (mantissaKey != null) { mantissa.Key = mantissaKey; } if (fieldNode.HasAttribute("id")) { scalar.Id = fieldNode.GetAttribute("id"); } return(scalar); }
public static FASTType GetType(string typeName) { if (!TYPE_NAME_MAP.Contains(typeName)) { throw new ArgumentException("The type named " + typeName + " does not exist. Existing types are " + Util.CollectionToString(new SupportClass.HashSetSupport(TYPE_NAME_MAP.Keys))); } return((FASTType)TYPE_NAME_MAP[typeName]); }
protected internal virtual FASTType GetType(System.Xml.XmlElement fieldNode, ParsingContext context) { string typeName = GetTypeName(fieldNode); if (!context.TypeMap.Contains(typeName)) { context.ErrorHandler.Error(XMLMessageTemplateLoader.INVALID_TYPE, "The type " + typeName + " is not defined. Possible types: " + Util.CollectionToString(new SupportClass.HashSetSupport(context.TypeMap.Keys), ", ")); } return((FASTType)context.TypeMap[typeName]); }