public SessionRecord(byte[] serialized) { StorageProtos.RecordStructure record = StorageProtos.RecordStructure.ParseFrom(serialized); _sessionState = new SessionState(record.CurrentSession); _fresh = false; foreach (StorageProtos.SessionStructure previousStructure in record.PreviousSessionsList) { _previousStates.AddLast(new SessionState(previousStructure)); // add -> AddLast (java) } }
/** * @return a serialized version of the current SessionRecord. */ public byte[] Serialize() { List <StorageProtos.SessionStructure> previousStructures = new List <StorageProtos.SessionStructure>(); foreach (SessionState previousState in _previousStates) { previousStructures.Add(previousState.GetStructure()); } StorageProtos.RecordStructure record = StorageProtos.RecordStructure.CreateBuilder() .SetCurrentSession(_sessionState.GetStructure()) .AddRangePreviousSessions(previousStructures) /*.AddAllPreviousSessions(previousStructures)*/ .Build(); return(record.ToByteArray()); }