/// <summary> /// Write Open API server variable object. /// </summary> /// <param name="writer">The Open API Writer.</param> public virtual void Write(IOpenApiWriter writer) { if (writer == null) { throw Error.ArgumentNull("writer"); } // { for JSON, empty for YAML writer.WriteStartObject(); // default writer.WriteRequiredProperty(OpenApiConstants.OpenApiDocDefault, Default); // description writer.WriteOptionalProperty(OpenApiConstants.OpenApiDocDescription, Description); // enums if (Enums != null && Enums.Any()) { writer.WritePropertyName(OpenApiConstants.OpenApiDocEnum); writer.WriteStartArray(); foreach (string item in Enums) { writer.WriteValue(item); } writer.WriteEndArray(); } // specification extensions writer.WriteDictionary(Extensions); // } for JSON, empty for YAML writer.WriteEndObject(); }
// ReSharper disable once UnusedMember.Local private void ConnectionStringMustExist(ValidationContext context) { if (!Classes.Any() && !Enums.Any()) { return; } if (string.IsNullOrEmpty(ConnectionString) && string.IsNullOrEmpty(ConnectionStringName)) { context.LogWarning("Model: Default connection string missing", "MRWConnectionString", this); } if (string.IsNullOrEmpty(EntityContainerName)) { context.LogError("Model: Entity container needs a name", "MREContainerNameEmpty", this); } }
internal string GetDotNetType(string typeName, bool required = true) { if (typeMappings.ContainsKey(typeName)) { var type = typeMappings[typeName]; return(type + (!required && Nullables.Contains(type, StringComparer.OrdinalIgnoreCase) ? "?" : "")); } if (Types.ContainsKey(typeName)) { return(Types[typeName].Name); } if (Enums.Any(e => e.Name == typeName)) { return(typeName + (required ? "" : "?")); } return(Inputs[typeName].Name); }
protected string FormatEnums() { if (Enums == null || !Enums.Any()) { return(String.Empty); } string output = String.Empty; foreach (var scriptEnum in Enums) { try { // And add a empty line between all enums! output += "\r\n" + scriptEnum.Decompile() + "\r\n"; } catch { output += String.Format("\r\nFailed at decompiling enum: {0}", scriptEnum.Name); } } return(output); }
internal bool HasDotNetType(string typeName) { return(typeMappings.ContainsKey(typeName) || Types.ContainsKey(typeName) || Inputs.ContainsKey(typeName) || Enums.Any(e => e.Name == typeName)); }