public void Apply(SwaggerDocument swaggerDoc, DocumentFilterContext context) { var adapter = new SchemaAdapter(swaggerDoc.Definitions); foreach (var assemblyPath in AssemblyPaths) { if (!string.IsNullOrEmpty(assemblyPath)) { try { var target = Assembly.LoadFile(assemblyPath); foreach (var type in target.GetTypes()) { if (IsAvailable(type)) { try { adapter.Fill(SchemaAdapter.DefaultSchema, type); } catch (Exception) { //ignore exception } } } } catch (Exception) { //ignore exception } } } foreach (var type in TypeList) { if (type != null) { try { if (IsAvailable(type)) { adapter.Fill(SchemaAdapter.DefaultSchema, type); } } catch (Exception) { //ignore exception } } } swaggerDoc.Definitions = swaggerDoc.Definitions.OrderBy(o => o.Key).ToDictionary(c => c.Key, c => c.Value); }
private void connectButton_Click(object sender, EventArgs e) { m_adapter = new SchemaAdapter(m_properites.connectionUrl, new ClientAuth(m_properites.user, m_properites.password)); m_adapter.JsonReceivedEvent += (jObj) => { richTextBox1.Text = jObj.ToString(); }; m_adapter.ActionResultEvent += (objectName, actionName, resultToken) => MessageBox.Show(resultToken != null? resultToken.ToString() : "null", objectName + "." + actionName + "()"); //http://stackoverflow.com/a/10130126/376066 - need to do this manually ( m_adapter.PropertyChanged += (pcSender, pcE) => propertyGrid1.Refresh() ; propertyGrid1.SelectedObject = m_adapter; m_adapter.RefreshSchema(); m_adapter.RefreshPropertyValues(); schemaTimer.Enabled = true; propertiesTimer.Enabled = true; }
public void Apply(Schema model, SchemaFilterContext context) { if (model == null) { throw new ArgumentNullException("model"); } if (context == null) { throw new ArgumentNullException("context"); } if (context.SystemType.IsEnum) { SchemaAdapter.FillEnumExtension(model, context.SystemType); } }