OpenHome.Git.Tree.Write C# (CSharp) Метод

Write() статический приватный Метод

static private Write ( Repository aRepository, IEnumerable aItems ) : ITree
aRepository Repository
aItems IEnumerable
Результат ITree
        internal static ITree Write(Repository aRepository, IEnumerable<TreeItem> aItems)
        {
            int count = 0;

            List<byte[]> list = new List<byte[]>();

            foreach (TreeItem item in aItems)
            {
                byte[] bytes = item.Bytes();
                list.Add(bytes);
                count += bytes.Length;
            }

            byte[] obj = new byte[count];

            int offset = 0;

            foreach (byte[] item in list)
            {
                Array.Copy(item, 0, obj, offset, item.Length);
                offset += item.Length;
            }

            string id = aRepository.WriteObject(obj, EObjectType.Tree);

            // TODO

            return (new Tree(new TreeRef(aRepository, id, obj)));
        }