/// <summary> /// Parse the DataElementIDsFilter structure. /// </summary> /// <param name="s">An stream containing DataElementIDsFilter structure.</param> public override void Parse(Stream s) { base.Parse(s); this.QueryChangesFilterDataElementIDs = new bit32StreamObjectHeaderStart(); this.QueryChangesFilterDataElementIDs.Parse(s); this.DataElementIDs = new ExtendedGUIDArray(); this.DataElementIDs.Parse(s); }
/// <summary> /// Parse the AllocateExtendedGUIDRange structure. /// </summary> /// <param name="s">An stream containing AllocateExtendedGUIDRange structure.</param> public override void Parse(Stream s) { base.Parse(s); this.AllocateExtendedGUIDRangeResponse = new bit32StreamObjectHeaderStart(); this.AllocateExtendedGUIDRangeResponse.Parse(s); this.GUIDComponent = ReadGuid(); this.IntegerRangeMin = new CompactUnsigned64bitInteger(); this.IntegerRangeMin = this.IntegerRangeMin.TryParse(s); this.IntegerRangeMax = new CompactUnsigned64bitInteger(); this.IntegerRangeMax = this.IntegerRangeMax.TryParse(s); }
/// <summary> /// Parse the CellError structure. /// </summary> /// <param name="s">An stream containing CellError structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ErrorCell = new bit32StreamObjectHeaderStart(); this.ErrorCell.Parse(s); this.ErrorCode = (CellErrorCode)ReadUint(); }
/// <summary> /// Parse the StreamObjectHeader structure. /// </summary> /// <param name="s">An stream containing StreamObjectHeader structure.</param> public StreamObjectHeader TryParse(Stream s) { base.Parse(s); byte temp = ReadByte(); s.Position -= 1; StreamObjectHeader streamObjectHeader = new StreamObjectHeader(); if ((temp & 0x03) == 0x0) { streamObjectHeader = new bit16StreamObjectHeaderStart(); streamObjectHeader.Parse(s); } else if ((temp & 0x03) == 0x02) { streamObjectHeader = new bit32StreamObjectHeaderStart(); streamObjectHeader.Parse(s); } else if ((temp & 0x03) == 0x01) { streamObjectHeader = new bit8StreamObjectHeaderEnd(); streamObjectHeader.Parse(s); } else if ((temp & 0x03) == 0x03) { streamObjectHeader = new bit16StreamObjectHeaderEnd(); streamObjectHeader.Parse(s); } return streamObjectHeader; }
/// <summary> /// Parse the Win32Error structure. /// </summary> /// <param name="s">An stream containing Win32Error structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ErrorWin32 = new bit32StreamObjectHeaderStart(); this.ErrorWin32.Parse(s); this.ErrorCode = ReadUint(); }
/// <summary> /// Parse the Filter structure. /// </summary> /// <param name="s">An stream containing Filter structure.</param> public override void Parse(Stream s) { base.Parse(s); this.queryChangesRequest = new bit32StreamObjectHeaderStart(); this.queryChangesRequest.Parse(s); byte tempByte = ReadByte(); this.A = GetBits(tempByte, 0, 1); this.B = GetBits(tempByte, 1, 1); this.C = GetBits(tempByte, 2, 1); this.D = GetBits(tempByte, 3, 1); this.E = GetBits(tempByte, 4, 1); this.F = GetBits(tempByte, 5, 1); this.G = GetBits(tempByte, 6, 2); this.queryChangesRequestArguments = new bit32StreamObjectHeaderStart(); this.queryChangesRequestArguments.Parse(s); byte tempByte2 = ReadByte(); this.F2 = GetBits(tempByte2, 0, 1); this.G2 = GetBits(tempByte2, 1, 1); this.H = GetBits(tempByte2, 2, 6); this.CellID = new CellID(); this.CellID.Parse(s); if (ContainsStreamObjectHeader(0x059)) { this.QueryChangesDataConstraints = new bit32StreamObjectHeaderStart(); this.QueryChangesDataConstraints.Parse(s); } if (this.QueryChangesDataConstraints != null) { this.MaxDataElements = new CompactUnsigned64bitInteger(); this.MaxDataElements = this.MaxDataElements.TryParse(s); } //TODO£ºThe below two fields are newly add in TD, but they have not conatined in the capture data for sharepoint 2013 server //this.MajorVersionNumber = new CompactUnsigned64bitInteger(); //this.MajorVersionNumber = this.MajorVersionNumber.TryParse(s); //this.MinorVersionNumber = new CompactUnsigned64bitInteger(); //this.MinorVersionNumber = this.MinorVersionNumber.TryParse(s); List<Filter> FilterList = new List<Filter>(); while (ContainsStreamObjectHeader(0x47)) { Filter tempFilter = new Filter(); FilterList.Add(tempFilter); } this.QueryChangesFilters = FilterList.ToArray(); if (ContainsStreamObjectHeader(0x10)) { this.Knowledge = new Knowledge(); this.Knowledge.Parse(s); } }
/// <summary> /// Parse the ResponseError structure. /// </summary> /// <param name="s">An stream containing ResponseError structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ErrorStart = new bit32StreamObjectHeaderStart(); this.ErrorStart.Parse(s); this.ErrorTypeGUID = ReadGuid(); if (this.ErrorTypeGUID.ToString().ToUpper() == "5A66A756-87CE-4290-A38B-C61C5BA05A67") { this.ErrorData = new CellError(); ((CellError)this.ErrorData).Parse(s); } else if (this.ErrorTypeGUID.ToString().ToUpper() == "7AFEAEBF-033D-4828-9C31-3977AFE58249") { this.ErrorData = new ProtocolError(); ((ProtocolError)this.ErrorData).Parse(s); } else if (this.ErrorTypeGUID.ToString().ToUpper() == "32C39011-6E39-46C4-AB78-DB41929D679E") { this.ErrorData = new Win32Error(); ((Win32Error)this.ErrorData).Parse(s); } else if (this.ErrorTypeGUID.ToString().ToUpper() == "8454C8F2-E401-405A-A198-A10B6991B56E") { this.ErrorData = new HRESULTError(); ((HRESULTError)this.ErrorData).Parse(s); } if (ContainsStreamObjectHeader(0x04E)) { this.ErrorStringSupplementalInfoStart = new bit32StreamObjectHeaderStart(); this.ErrorStringSupplementalInfoStart.Parse(s); this.ErrorStringSupplementalInfo = new StringItem(); this.ErrorStringSupplementalInfo.Parse(s); } if (ContainsStreamObjectStart32BitHeader(0x04D)) { this.ChainedError = new ResponseError(); this.ChainedError.Parse(s); } this.ErrorEnd = new bit16StreamObjectHeaderEnd(); this.ErrorEnd.Parse(s); }
/// <summary> /// Parse the FsshttpbRequest structure. /// </summary> /// <param name="s">An stream containing FsshttpbRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ProtocolVersion = ReadUshort(); this.MinimumVersion = ReadUshort(); this.Signature = ReadUlong(); this.RequestStart = new bit32StreamObjectHeaderStart(); this.RequestStart.Parse(s); this.UserAgentStart = new bit32StreamObjectHeaderStart(); this.UserAgentStart.Parse(s); if (ContainsStreamObjectHeader(0x055)) { this.UserAgentGUID = new bit32StreamObjectHeaderStart(); this.UserAgentGUID.Parse(s); } if (this.UserAgentGUID != null) { this.GUID = ReadGuid(); } if (ContainsStreamObjectHeader(0x8B)) { this.UserAgentClientAndPlatform = new bit32StreamObjectHeaderStart(); this.UserAgentClientAndPlatform.Parse(s); } if (this.UserAgentClientAndPlatform != null) { this.ClientCount = new CompactUnsigned64bitInteger(); this.ClientCount = this.ClientCount.TryParse(s); this.ClientByteArray = ReadBytes((int)this.ClientCount.GetUint(this.ClientCount)); this.PlatformCount = new CompactUnsigned64bitInteger(); this.PlatformCount = this.PlatformCount.TryParse(s); this.PlatformByteArray = ReadBytes((int)this.PlatformCount.GetUint(this.PlatformCount)); } this.UserAgentVersion = new bit32StreamObjectHeaderStart(); this.UserAgentVersion.Parse(s); this.Version = ReadUint(); this.UserAgentEnd = new bit16StreamObjectHeaderEnd(); this.UserAgentEnd.Parse(s); if (ContainsStreamObjectHeader(0x8D))//TODO: This should be 0x88 accroding to TD, but in the capture files of sharepoint server 2013, it is 0x8D. { this.RequestHashingOptionsDeclaration = new bit32StreamObjectHeaderStart(); this.RequestHashingOptionsDeclaration.Parse(s); } if (this.RequestHashingOptionsDeclaration != null) { // TODO: Missing fields (A B C D E) here, because it's seems these is not containd in capture files of sharepoint server 13. this.RequestHasingSchema = new CompactUnsigned64bitInteger(); this.RequestHasingSchema = this.RequestHasingSchema.TryParse(s); } if (ContainsStreamObjectHeader(0x042)) { List<FsshttpbSubRequest> tempRequest = new List<FsshttpbSubRequest>(); do { FsshttpbSubRequest subRequest = new FsshttpbSubRequest(); subRequest.Parse(s); tempRequest.Add(subRequest); this.SubRequest = tempRequest.ToArray(); } while (ContainsStreamObjectHeader(0x042)); } if (ContainsStreamObjectHeader(0x15)) { this.DataElementPackage = new DataElementPackage(); this.DataElementPackage.Parse(s); } this.RequestEnd = new bit16StreamObjectHeaderEnd(); this.RequestEnd.Parse(s); }
/// <summary> /// Parse the FsshttpbResponse structure. /// </summary> /// <param name="s">An stream containing FsshttpbResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ProtocolVersion = ReadUshort(); this.MinimumVersion = ReadUshort(); this.Signature = ReadUlong(); this.ResponseStart = new bit32StreamObjectHeaderStart(); this.ResponseStart.Parse(s); byte tempByte = ReadByte(); this.Status = GetBits(tempByte, 0, 1); this.Reserved = GetBits(tempByte, 1, 7); if (this.Status == 0x1) { this.ResponseError = new ResponseError(); this.ResponseError.Parse(s); } else { if (ContainsStreamObjectHeader(0x15)) { this.DataElementPackage = new DataElementPackage(); this.DataElementPackage.Parse(s); } if (ContainsStreamObjectHeader(0x041)) { List<FsshttpbSubResponse> tempResponses = new List<FsshttpbSubResponse>(); do { FsshttpbSubResponse subResponse = new FsshttpbSubResponse(); subResponse.Parse(s); tempResponses.Add(subResponse); this.SubResponses = tempResponses.ToArray(); } while (ContainsStreamObjectHeader(0x041)); } } this.ResponseEnd = new bit16StreamObjectHeaderEnd(); this.ResponseEnd.Parse(s); }
/// <summary> /// Parse the FragmentKnowledge structure. /// </summary> /// <param name="s">An stream containing FragmentKnowledge structure.</param> public override void Parse(Stream s) { base.Parse(s); this.FragmentKnowledgeStart = new bit32StreamObjectHeaderStart(); this.FragmentKnowledgeStart.Parse(s); List<FragmentKnowledgeEntry> tempFragment = new List<FragmentKnowledgeEntry>(); do { FragmentKnowledgeEntry Fragmentknowledge = new FragmentKnowledgeEntry(); Fragmentknowledge.Parse(s); tempFragment.Add(Fragmentknowledge); } while (ContainsStreamObjectHeader(0x06C)); this.FragmentKnowledgeEntries = tempFragment.ToArray(); this.FragmentKnowledgeEnd = new bit16StreamObjectHeaderEnd(); this.FragmentKnowledgeEnd.Parse(s); }
/// <summary> /// Parse the FragmentKnowledgeEntry structure. /// </summary> /// <param name="s">An stream containing FragmentKnowledgeEntry structure.</param> public override void Parse(Stream s) { base.Parse(s); this.FragmentDescriptor = new bit32StreamObjectHeaderStart(); this.FragmentDescriptor.Parse(s); this.ExtendedGUID = new ExtendedGUID(); this.ExtendedGUID = this.ExtendedGUID.TryParse(s); this.DataElementSize = new CompactUnsigned64bitInteger(); this.DataElementSize = this.DataElementSize.TryParse(s); this.DataElementChunkReference = new FileChunkReference(); this.DataElementChunkReference.Parse(s); }
/// <summary> /// Parse the Filter structure. /// </summary> /// <param name="s">An stream containing Filter structure.</param> public override void Parse(Stream s) { base.Parse(s); this.QueryChangesFilterStart = new bit32StreamObjectHeaderStart(); this.QueryChangesFilterStart.Parse(s); this.FilterType = (FilterType)ReadByte(); this.FilterOperation = ReadByte(); switch (this.FilterType) { case Parsers.FilterType.AllFilter: case Parsers.FilterType.StorageIndexReferencedDataElementsFilter: break; case Parsers.FilterType.DataElementIDsFilter: this.QueryChangesFilterData = new DataElementIDsFilter(); ((DataElementIDsFilter)this.QueryChangesFilterData).Parse(s); break; case Parsers.FilterType.DataElementTypeFilter: this.QueryChangesFilterData = new DataElementTypeFilter(); ((DataElementTypeFilter)this.QueryChangesFilterData).Parse(s); break; case Parsers.FilterType.CellIDFilter: this.QueryChangesFilterData = new CellIDFilter(); ((CellIDFilter)this.QueryChangesFilterData).Parse(s); break; case Parsers.FilterType.CustomFilter: this.QueryChangesFilterData = new CustomFilter(); ((CustomFilter)this.QueryChangesFilterData).Parse(s); break; case Parsers.FilterType.HierarchyFilter: this.QueryChangesFilterData = new HierarchyFilter(); ((HierarchyFilter)this.QueryChangesFilterData).Parse(s); break; default: throw new Exception("The FilterType is not right."); } this.QueryChangesFilterEnd = new bit16StreamObjectHeaderEnd(); this.QueryChangesFilterEnd.Parse(s); if (ContainsStreamObjectStart32BitHeader(0x87)) { this.QueryChangesFilterFlags = new bit32StreamObjectHeaderStart(); this.QueryChangesFilterFlags.Parse(s); } if (this.QueryChangesFilterFlags != null) { byte tempByte = ReadByte(); this.F = GetBits(tempByte, 0, 1); this.Reserved = GetBits(tempByte, 1, 7); } }
/// <summary> /// Parse the DiagnosticRequestOptionInput structure. /// </summary> /// <param name="s">An stream containing DiagnosticRequestOptionInput structure.</param> public override void Parse(Stream s) { base.Parse(s); this.DiagnosticRequestOptionInputHeader = new bit32StreamObjectHeaderStart(); this.DiagnosticRequestOptionInputHeader.Parse(s); byte tempByte = ReadByte(); this.A = GetBits(tempByte, 0, 1); this.Reserved = GetBits(tempByte, 1, 7); }
/// <summary> /// Parse the DataElementTypeFilter structure. /// </summary> /// <param name="s">An stream containing DataElementTypeFilter structure.</param> public override void Parse(Stream s) { base.Parse(s); this.QueryChangesFilterDataElementType = new bit32StreamObjectHeaderStart(); this.QueryChangesFilterDataElementType.Parse(s); this.DataElementType = new CompactUnsigned64bitInteger(); this.DataElementType = this.DataElementType.TryParse(s); }
/// <summary> /// Parse the PutChangesResponse structure. /// </summary> /// <param name="s">An stream containing PutChangesResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); this.putChangesResponse = new bit32StreamObjectHeaderStart(); this.putChangesResponse.Parse(s); this.AppliedStorageIndexId = new ExtendedGUID(); this.AppliedStorageIndexId = this.AppliedStorageIndexId.TryParse(s); this.DataElementsAdded = new ExtendedGUIDArray(); this.DataElementsAdded.Parse(s); this.ResultantKnowledge = new Knowledge(); this.ResultantKnowledge.Parse(s); this.DiagnosticRequestOptionOutput = new DiagnosticRequesOptionOutput(); this.DiagnosticRequestOptionOutput.Parse(s); }
/// <summary> /// Parse the FsshttpbSubRequests structure. /// </summary> /// <param name="s">An stream containing FsshttpbSubRequests structure.</param> public override void Parse(Stream s) { base.Parse(s); this.SubRequestStart = new bit32StreamObjectHeaderStart(); this.SubRequestStart.Parse(s); this.RequestID = new CompactUnsigned64bitInteger(); this.RequestID = this.RequestID.TryParse(s); this.RequestType = new CompactUnsigned64bitInteger(); this.RequestType = this.RequestType.TryParse(s); this.Priority = new CompactUnsigned64bitInteger(); this.Priority = this.Priority.TryParse(s); if (ContainsStreamObjectHeader(0x83)) { this.TargetPartitionId = new TargetPartitionId(); this.TargetPartitionId.Parse(s); } switch (RequestType.GetUint(RequestType)) { case 0x01: this.SubRequestData = new QueryAccessRequest(); break; case 0x02: this.SubRequestData = new QueryChangesRequest(); ((QueryChangesRequest)this.SubRequestData).Parse(s); break; case 0x05: this.SubRequestData = new PutChangesRequest(); ((PutChangesRequest)this.SubRequestData).Parse(s); break; case 0x0B: this.SubRequestData = new AllocateExtendedGUIDRangeRequest(); ((AllocateExtendedGUIDRangeRequest)this.SubRequestData).Parse(s); break; default: throw new Exception("The RequestType is not right."); } this.SubRequestEnd = new bit16StreamObjectHeaderEnd(); this.SubRequestEnd.Parse(s); }
/// <summary> /// Parse the QueryAccessResponse structure. /// </summary> /// <param name="s">An stream containing QueryAccessResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ReadAccessResponseStart = new bit32StreamObjectHeaderStart(); this.ReadAccessResponseStart.Parse(s); this.ReadAccessResponseError = new ResponseError(); this.ReadAccessResponseError.Parse(s); this.ReadAccessResponseEnd = new bit16StreamObjectHeaderEnd(); this.ReadAccessResponseEnd.Parse(s); this.WriteAccessResponseStart = new bit32StreamObjectHeaderStart(); this.WriteAccessResponseStart.Parse(s); this.WriteAccessResponseError = new ResponseError(); this.WriteAccessResponseError.Parse(s); this.WriteAccessResponseEnd = new bit16StreamObjectHeaderEnd(); this.WriteAccessResponseEnd.Parse(s); }
/// <summary> /// Parse the FsshttpbSubResponse structure. /// </summary> /// <param name="s">An stream containing FsshttpbSubResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); this.SubResponseStart = new bit32StreamObjectHeaderStart(); this.SubResponseStart.Parse(s); this.RequestID = new CompactUnsigned64bitInteger(); this.RequestID = RequestID.TryParse(s); this.RequestType = new CompactUnsigned64bitInteger(); this.RequestType = RequestType.TryParse(s); byte tempByte = ReadByte(); this.Status = GetBits(tempByte, 0, 1); this.Reserved = GetBits(tempByte, 1, 7); if (this.Status == 0x1) { this.ResponseError = new ResponseError(); this.ResponseError.Parse(s); } else { if (this.RequestType.GetUint(RequestType) == 0x01) { this.SubResponseData = new QueryAccessResponse(); ((QueryAccessResponse)this.SubResponseData).Parse(s); } else if (this.RequestType.GetUint(RequestType) == 0x02) { this.SubResponseData = new QueryChangesResponse(); ((QueryChangesResponse)this.SubResponseData).Parse(s); } else if (this.RequestType.GetUint(RequestType) == 0x05) { this.SubResponseData = new PutChangesResponse(); ((PutChangesResponse)this.SubResponseData).Parse(s); } else if (this.RequestType.GetUint(RequestType) == 0x0B) { this.SubResponseData = new AllocateExtendedGUIDRange(); ((AllocateExtendedGUIDRange)this.SubResponseData).Parse(s); } } this.SubResponseEnd = new bit16StreamObjectHeaderEnd(); this.SubResponseEnd.Parse(s); }
/// <summary> /// Parse the QueryChangesResponse structure. /// </summary> /// <param name="s">An stream containing QueryChangesResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); this.queryChangesResponse = new bit32StreamObjectHeaderStart(); this.queryChangesResponse.Parse(s); this.StorageIndexExtendedGUID = new ExtendedGUID(); this.StorageIndexExtendedGUID = this.StorageIndexExtendedGUID.TryParse(s); byte tempbyte = ReadByte(); this.P = GetBits(tempbyte, 0, 1); this.Reserved = GetBits(tempbyte, 1, 7); this.Knowledge = new Knowledge(); this.Knowledge.Parse(s); }
/// <summary> /// Parse the HierarchyFilter structure. /// </summary> /// <param name="s">An stream containing HierarchyFilter structure.</param> public override void Parse(Stream s) { base.Parse(s); this.QueryChangesFilterHierarchy = new bit32StreamObjectHeaderStart(); this.QueryChangesFilterHierarchy.Parse(s); this.Depth = (HierarchyFilterDepth)ReadByte(); this.Count = new CompactUnsigned64bitInteger(); this.Count = this.Count.TryParse(s); this.RootIndexKeyByteArray = ReadBytes((int)this.Count.GetUint(this.Count)); }
/// <summary> /// Parse the SpecializedKnowledge structure. /// </summary> /// <param name="s">An stream containing SpecializedKnowledge structure.</param> public override void Parse(Stream s) { base.Parse(s); this.SpecializedKnowledgeStart = new bit32StreamObjectHeaderStart(); this.SpecializedKnowledgeStart.Parse(s); this.GUID = ReadGuid(); switch (this.GUID.ToString().ToUpper()) { case "327A35F6-0761-4414-9686-51E900667A4D": this.SpecializedKnowledgeData = new CellKnowLedge(); ((CellKnowLedge)this.SpecializedKnowledgeData).Parse(s); break; case "3A76E90E-8032-4D0C-B9DD-F3C65029433E": this.SpecializedKnowledgeData = new WaterlineKnowledge(); ((WaterlineKnowledge)this.SpecializedKnowledgeData).Parse(s); break; case "0ABE4F35-01DF-4134-A24A-7C79F0859844": this.SpecializedKnowledgeData = new FragmentKnowledge(); ((FragmentKnowledge)this.SpecializedKnowledgeData).Parse(s); break; case "10091F13-C882-40FB-9886-6533F934C21D": this.SpecializedKnowledgeData = new ContentTagKnowledge(); ((ContentTagKnowledge)this.SpecializedKnowledgeData).Parse(s); break; default: throw new Exception("The GUID is not right."); } this.SpecializedKnowledgeEnd = new bit16StreamObjectHeaderEnd(); this.SpecializedKnowledgeEnd.Parse(s); }
/// <summary> /// Parse the LockId structure. /// </summary> /// <param name="s">An stream containing LockId structure.</param> public override void Parse(Stream s) { base.Parse(s); this.LockIdHeader = new bit32StreamObjectHeaderStart(); this.LockIdHeader.Parse(s); this.LockIdGuid = ReadGuid(); }
/// <summary> /// Parse the TargetPartitionId structure. /// </summary> /// <param name="s">An stream containing TargetPartitionId structure.</param> public override void Parse(Stream s) { base.Parse(s); this.TargetPartitionIdStart = new bit32StreamObjectHeaderStart(); this.TargetPartitionIdStart.Parse(s); this.PartitionIdGUID = ReadGuid(); this.TargetPartitionIdEnd = new bit16StreamObjectHeaderEnd(); this.TargetPartitionIdEnd.Parse(s); }
/// <summary> /// Parse the ObjectMetadata structure. /// </summary> /// <param name="s">An stream containing ObjectMetadata structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ObjectGroupMetadata = new bit32StreamObjectHeaderStart(); this.ObjectGroupMetadata.Parse(s); this.ObjectChangeFrequency = new CompactUnsigned64bitInteger(); this.ObjectChangeFrequency = this.ObjectChangeFrequency.TryParse(s); }
/// <summary> /// Parse the AdditionalFlags structure. /// </summary> /// <param name="s">An stream containing AdditionalFlags structure.</param> public override void Parse(Stream s) { base.Parse(s); this.AdditionalFlagsHeader = new bit32StreamObjectHeaderStart(); this.AdditionalFlagsHeader.Parse(s); short tempUshort = ReadINT16(); this.A = (byte)GetBits(tempUshort, 0, 1); this.B = (byte)GetBits(tempUshort, 1, 1); this.C = (byte)GetBits(tempUshort, 2, 1); this.D = (byte)GetBits(tempUshort, 3, 1); this.E = (byte)GetBits(tempUshort, 4, 1); this.F = (byte)GetBits(tempUshort, 5, 1); this.Reserved = (byte)GetBits(tempUshort, 6, 16); }
/// <summary> /// Parse the ObjectMetadataDeclaration structure. /// </summary> /// <param name="s">An stream containing ObjectMetadataDeclaration structure.</param> public override void Parse(Stream s) { base.Parse(s); this.ObjectGroupMetadataDeclarations = new bit32StreamObjectHeaderStart(); this.ObjectGroupMetadataDeclarations.Parse(s); List<ObjectMetadata> ObjectMetadataList = new List<ObjectMetadata>(); while (ContainsStreamObjectHeader(0x78)) { ObjectMetadata tempObjectMetadata = new ObjectMetadata(); tempObjectMetadata.Parse(s); ObjectMetadataList.Add(tempObjectMetadata); } this.ObjectMetadata = ObjectMetadataList.ToArray(); this.ObjectGroupMetadataDeclarationsEnd = new bit16StreamObjectHeaderEnd(); this.ObjectGroupMetadataDeclarationsEnd.Parse(s); }
/// <summary> /// Parse the AllocateExtendedGUIDRangeRequest structure. /// </summary> /// <param name="s">An stream containing AllocateExtendedGUIDRangeRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.allocateExtendedGUIDRangeRequest = new bit32StreamObjectHeaderStart(); this.allocateExtendedGUIDRangeRequest.Parse(s); this.RequestIdCount = new CompactUnsigned64bitInteger(); this.RequestIdCount = this.RequestIdCount.TryParse(s); this.Reserved = ReadByte(); }
/// <summary> /// Parse the PutChangesRequest structure. /// </summary> /// <param name="s">An stream containing PutChangesRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.putChangesRequest = new bit32StreamObjectHeaderStart(); this.putChangesRequest.Parse(s); this.StorageIndexExtendedGUID = new ExtendedGUID(); this.StorageIndexExtendedGUID = this.StorageIndexExtendedGUID.TryParse(s); this.ExpectedStorageIndexExtendedGUID = new ExtendedGUID(); this.ExpectedStorageIndexExtendedGUID = this.ExpectedStorageIndexExtendedGUID.TryParse(s); byte tempByte = ReadByte(); this.A = (byte)GetBits(tempByte, 0, 1); this.B = (byte)GetBits(tempByte, 1, 1); this.C = (byte)GetBits(tempByte, 2, 1); this.D = (byte)GetBits(tempByte, 3, 1); this.E = (byte)GetBits(tempByte, 4, 1); this.F = (byte)GetBits(tempByte, 5, 1); this.G = (byte)GetBits(tempByte, 6, 1); this.H = (byte)GetBits(tempByte, 7, 1); if (ContainsStreamObjectHeader(0x86)) { this.AdditionalFlags = new AdditionalFlags(); this.AdditionalFlags.Parse(s); } if (ContainsStreamObjectHeader(0x85)) { this.LockId = new LockId(); this.LockId.Parse(s); } if (ContainsStreamObjectHeader(0x10)) { this.ClientKnowledge = new Knowledge(); this.ClientKnowledge.Parse(s); } if (ContainsStreamObjectHeader(0x8A)) { this.DiagnosticRequestOptionInput = new DiagnosticRequestOptionInput(); this.DiagnosticRequestOptionInput.Parse(s); } }
/// <summary> /// Parse the CellIDFilter structure. /// </summary> /// <param name="s">An stream containing CellIDFilter structure.</param> public override void Parse(Stream s) { base.Parse(s); this.QueryChangesFilterCellID = new bit32StreamObjectHeaderStart(); this.QueryChangesFilterCellID.Parse(s); this.CellID = new CellID(); this.CellID.Parse(s); }
/// <summary> /// Parse the DataElementFragmentDataElement structure. /// </summary> /// <param name="s">An stream containing DataElementFragmentDataElement structure.</param> public override void Parse(Stream s) { base.Parse(s); this.DataElementStart = new bit16StreamObjectHeaderStart(); this.DataElementStart.Parse(s); this.DataElementExtendedGUID = new ExtendedGUID(); this.DataElementExtendedGUID = this.DataElementExtendedGUID.TryParse(s); this.SerialNumber = new SerialNumber(); this.SerialNumber = this.SerialNumber.TryParse(s); this.DataElementType = new CompactUnsigned64bitInteger(); this.DataElementType = this.DataElementType.TryParse(s); this.DataElementFragment = new bit32StreamObjectHeaderStart(); this.DataElementFragment.Parse(s); this.FragmentExtendedGUID = new ExtendedGUID(); this.FragmentExtendedGUID = this.FragmentExtendedGUID.TryParse(s); this.FragmentDataElementSize = new CompactUnsigned64bitInteger(); this.FragmentDataElementSize = this.FragmentDataElementSize.TryParse(s); this.FragmentFileChunkReference = new FileChunkReference(); this.FragmentFileChunkReference.Parse(s); this.FragmentData = new BinaryItem(); this.FragmentData.Parse(s); this.DataElementEnd = new bit8StreamObjectHeaderEnd(); this.DataElementEnd.Parse(s); }