public void AutoConfig(AttributeAndTypeInfo attributeAndTypeInfo)
        {
            if (!(attributeAndTypeInfo.Attribute is ConfigAttribute))
            {
                return;
            }

            this.configTypeToRegistionMap[attributeAndTypeInfo.Type] = new ScannedConfigRegistion(attributeAndTypeInfo);
        }
        public void Gen()
        {
            DefaultJsonSchemaGenerator g = new DefaultJsonSchemaGenerator();
            var info = new AttributeAndTypeInfo(new ConfigAttribute("S1"), typeof(TestConfig));
            List <IConfigRegistion> registions = new List <IConfigRegistion>();

            registions.Add(new ScannedConfigRegistion(info));
            string json = g.Generate(registions);

            Console.WriteLine(json);
        }
 public void AddTask(AttributeAndTypeInfo info)
 {
     if (!(info.Attribute is TaskAttribute taskatt))
     {
         return;
     }
     if (!typeof(ITaskExecutor).IsAssignableFrom(info.Type))
     {
         return;
     }
     this.taskInfos.Add(new TaskInfo()
     {
         TaskAttribute = taskatt,
         TaskType      = info.Type
     });
 }
 public ScannedConfigRegistion(AttributeAndTypeInfo info)
 {
     this.configAttribute = (ConfigAttribute)info.Attribute;
     this.objectType      = info.Type;
 }
Exemplo n.º 5
0
 /// <summary>
 /// 添加一个自动添加的过滤器
 /// </summary>
 /// <param name="info"></param>
 public void AddFilter(AttributeAndTypeInfo info)
 {
     this.autoFilterInfos.Add(new AutoFilterInfo(info.Type.Assembly, info.Attribute as AutoFilterAttribute, info.Type));
 }
 /// <summary>
 /// 注册一个动态实现类的信息。
 /// </summary>
 /// <param name="info"></param>
 public void RegisterImplementor(AttributeAndTypeInfo info)
 {
     this.attributeAndTypeInfos.Add(info);
 }