hessiancsharp.io.CCollectionSerializer.WriteObject C# (CSharp) Method

WriteObject() public method

Writes list objects (That extends from ICollection-Interfaces)
public WriteObject ( object objList, AbstractHessianOutput abstractHessianOutput ) : void
objList object List object
abstractHessianOutput AbstractHessianOutput HessianOutput - Instance
return void
        public override void WriteObject(object objList, AbstractHessianOutput abstractHessianOutput)
        {
            if (abstractHessianOutput.AddRef(objList))
                return ;

            // TODO auch generische Listen schreiben

            ICollection collection = ( ICollection) objList;
            Type type = objList.GetType();
            if (type.Equals(typeof(List<Object>)))
                abstractHessianOutput.WriteListBegin(collection.Count, null);
            else
                abstractHessianOutput.WriteListBegin(collection.Count, objList.GetType().FullName);
            IEnumerator enumerator =  collection.GetEnumerator();
            while (enumerator.MoveNext())
            {
                Object value = enumerator.Current;
                abstractHessianOutput.WriteObject(value);
            }
            abstractHessianOutput.WriteListEnd();
        }
CCollectionSerializer