public void Run(ServiceDefinition definition) { var context = new GeneratorContext(); context.Definition = definition; context.Root = definition.Root; this.WriteEverything(context); text.Flush(); }
private void Sanitize() { this.isDirty = false; this.warnings = new List<string>(); this.infos = new List<string>(); this.definition = this.definition ?? (this.definition = new ServiceDefinition(this.root)); this.VerifyFieldNames(); { foreach (var apiGroup in this.root.ApiGroups) { // generate implicit return types foreach (var returnType in apiGroup.ReturnTypes.ToArray()) { foreach (var item in returnType.Fields.ToArray()) { var parts = item.Name.Split(new char[] { ':', '/', }, 2); var mainPart = parts.Length == 1 ? parts[0] : parts[0]; var subPart = parts.Length == 2 ? parts[1] : null; if (parts.Length > 1) { var subReturnType = definition.FindReturnType(mainPart, apiGroup.Name, subPart: subPart, typeName: item.Type); } } } } } this.VerifyFieldNames(); }
public void AppendServiceDefinition(ServiceDefinition serviceDefinition) { this.AppendRoot(serviceDefinition.Root); }