using System; using System.Collections.Generic; namespace Google.Protobuf.Reflection { // Token: 0x0200006B RID: 107 public sealed class ServiceDescriptor : DescriptorBase { // Token: 0x060005F8 RID: 1528 RVA: 0x00014ED0 File Offset: 0x000130D0 internal ServiceDescriptor(ServiceDescriptorProto proto, FileDescriptor file, int index) : base(file, file.ComputeFullName(null, proto.Name), index) { ServiceDescriptor <>4__this = this; this.proto = proto; this.methods = DescriptorUtil.ConvertAndMakeReadOnly(proto.Method, (MethodDescriptorProto method, int i) => new MethodDescriptor(method, file, <>4__this, i)); file.DescriptorPool.AddSymbol(this); } // Token: 0x170001B1 RID: 433 // (get) Token: 0x060005F9 RID: 1529 RVA: 0x00014F45 File Offset: 0x00013145 public override string Name { get { return this.proto.Name; } } // Token: 0x170001B2 RID: 434 // (get) Token: 0x060005FA RID: 1530 RVA: 0x00014F52 File Offset: 0x00013152 internal ServiceDescriptorProto Proto { get { return this.proto; } } // Token: 0x170001B3 RID: 435 // (get) Token: 0x060005FB RID: 1531 RVA: 0x00014F5A File Offset: 0x0001315A public IList Methods { get { return this.methods; } } // Token: 0x060005FC RID: 1532 RVA: 0x00014F62 File Offset: 0x00013162 public MethodDescriptor FindMethodByName(string name) { return base.File.DescriptorPool.FindSymbol(base.FullName + "." + name); } // Token: 0x060005FD RID: 1533 RVA: 0x00014F88 File Offset: 0x00013188 internal void CrossLink() { foreach (MethodDescriptor methodDescriptor in this.methods) { methodDescriptor.CrossLink(); } } // Token: 0x04000260 RID: 608 private readonly ServiceDescriptorProto proto; // Token: 0x04000261 RID: 609 private readonly IList methods; } }