public TypeTemplateModel GetTypeTemplateModel()
 {
     if (_typeTemplateModel == null)
     {
         var typeTemplate = new TypeTemplate <TSource>();
         BuildArguments(typeTemplate);
         _typeTemplateModel = typeTemplate.GetModel();
     }
     return(_typeTemplateModel);
 }
 protected abstract void BuildArguments(TypeTemplate <TSource> config);