Deveel.Data.Sql.IndexInfo.DeserializeFrom C# (CSharp) Method

DeserializeFrom() static private method

static private DeserializeFrom ( Stream stream ) : IndexInfo
stream Stream
return IndexInfo
        internal static IndexInfo DeserializeFrom(Stream stream)
        {
            var reader = new BinaryReader(stream, Encoding.Unicode);

            var version = reader.ReadInt32();
            if (version != 2)
                throw new FormatException("Invalid version number for Index-Info");

            var indexType = reader.ReadString();
            var indexName = reader.ReadString();
            var unique = reader.ReadByte() == 1;
            var offset = reader.ReadInt32();

            var colCount = reader.ReadInt32();

            var columnNames = new string[colCount];
            for (int i = 0; i < colCount; i++) {
                var columnName = reader.ReadString();
                columnNames[i] = columnName;
            }

            return new IndexInfo(indexName, indexType, columnNames, unique, offset);
        }