public void ProcessType(TypeDefinition typeDefinition)
{
if (!typeDefinition.CustomAttributes.ContainsValidationAttribute())
{
//TODO:log
return;
}
if (dataErrorInfoFinder.Found)
{
var injector = new DataErrorInfoInjector
{
TypeDefinition = typeDefinition,
TypeSystem = ModuleDefinition.TypeSystem,
ValidationTemplateFinder = templateFinder,
DataErrorInfoFinder = dataErrorInfoFinder,
ModuleWeaver = this,
};
injector.Execute();
}
if (notifyDataErrorInfoFinder.Found)
{
var injector = new NotifyDataErrorInfoInjector
{
TypeDefinition = typeDefinition,
NotifyDataErrorInfoFinder = notifyDataErrorInfoFinder,
ValidationTemplateFinder = templateFinder,
TypeSystem = ModuleDefinition.TypeSystem,
ModuleWeaver = this,
};
injector.Execute();
}
}