public void ReadData(IObjectDataInput input) { if (input == null) { throw new ArgumentNullException(nameof(input)); } _attributeName = input.ReadString(); _value = input.ReadObject <object>(); _equal = input.ReadBool(); _less = input.ReadBool(); }
public void ReadData(IObjectDataInput input) { Bool = input.ReadBool(); BoolArray = input.ReadBoolArray(); Byte = input.ReadByte(); ByteArray = input.ReadByteArray(); Char = input.ReadChar(); CharArray = input.ReadCharArray(); Short = input.ReadShort(); ShortArray = input.ReadShortArray(); Int = input.ReadInt(); IntArray = input.ReadIntArray(); Long = input.ReadLong(); LongArray = input.ReadLongArray(); Float = input.ReadFloat(); FloatArray = input.ReadFloatArray(); Double = input.ReadDouble(); DoubleArray = input.ReadDoubleArray(); Serializable = input.ReadObject <IIdentifiedDataSerializable>(); //input.ReadObject(SerializableArray); //Portable = input.ReadObject<IPortable>(); //input.ReadObject(PortableArray); Chars = new string(input.ReadCharArray()); String = input.ReadString(); StringArray = input.ReadStringArray(); DateTime = input.ReadObject <DateTime>(); }
/// <exception cref="System.IO.IOException"></exception> public IIdentifiedDataSerializable Read(IObjectDataInput input) { var factoryId = 0; var id = 0; try { var identified = input.ReadBool(); if (!identified) { throw new SerializationException("Non-identified DataSerializable is not supported by .NET client. " + "Please use IIdentifiedDataSerializable instead."); } factoryId = input.ReadInt(); if (!_factories.TryGetValue(factoryId, out var factory)) { throw new SerializationException($"No DataSerializerFactory registered with id: {factoryId}."); } id = input.ReadInt(); var serializable = factory.Create(id); if (serializable == null) { throw new SerializationException($"{factory} (factoryId: {factoryId}) failed to create an instance for id: {id}."); } serializable.ReadData(input); return(serializable); } catch (IOException) { throw; } catch (SerializationException) { throw; } catch (Exception e) { throw new SerializationException($"Failed to read DataSerializable with factoryId: {factoryId}, id: {id} ({e.GetType()}: {e.Message}).", e); } }