示例#1
0
 // Token: 0x06004FA2 RID: 20386 RVA: 0x0012610C File Offset: 0x0012430C
 public static ExchangeTopologyDiscovery.Simple Deserialize(byte[][] data)
 {
     ArgumentValidator.ThrowIfNull("data", data);
     if (data.Length != 3 || data[0] == null || data[1] == null || data[2] == null)
     {
         throw new ArgumentException("data");
     }
     ExchangeTopologyDiscovery.Simple simple = new ExchangeTopologyDiscovery.Simple();
     using (MemoryStream memoryStream = new MemoryStream(data[0]))
     {
         using (BinaryReader binaryReader = new BinaryReader(memoryStream))
         {
             simple.DiscoveryStarted = DateTime.FromBinary(binaryReader.ReadInt64());
             simple.TopologyScope    = (ExchangeTopologyScope)binaryReader.ReadInt32();
             simple.LocalServerFqdn  = binaryReader.ReadString();
             simple.Sites            = SimpleADObject.ReadList(binaryReader);
             simple.SiteLinks        = SimpleADObject.ReadList(binaryReader);
             simple.Servers          = SimpleADObject.ReadList(binaryReader);
         }
     }
     using (MemoryStream memoryStream2 = new MemoryStream(data[1]))
     {
         using (BinaryReader binaryReader2 = new BinaryReader(memoryStream2))
         {
             simple.VirtualDirectories    = SimpleADObject.ReadList(binaryReader2);
             simple.EmailTransports       = SimpleADObject.ReadList(binaryReader2);
             simple.SmtpReceiveConnectors = SimpleADObject.ReadList(binaryReader2);
         }
     }
     using (MemoryStream memoryStream3 = new MemoryStream(data[2]))
     {
         using (BinaryReader binaryReader3 = new BinaryReader(memoryStream3))
         {
             simple.ADServers = SimpleADObject.ReadList(binaryReader3);
         }
     }
     return(simple);
 }