public static void RegisterSystemWordReport(Type systemWordTemplate, Func <WordTemplateEntity> defaultTemplateConstructor = null, object queryName = null) { systemWordReports[systemWordTemplate] = new SystemWordTemplateInfo { DefaultTemplateConstructor = defaultTemplateConstructor, QueryName = queryName ?? GetEntityType(systemWordTemplate), }; }
internal static WordTemplateEntity CreateDefaultTemplate(SystemWordTemplateEntity systemWordReport) { SystemWordTemplateInfo info = systemWordReports.GetOrThrow(systemWordReport.ToType()); if (info.DefaultTemplateConstructor == null) { return(null); } WordTemplateEntity template = info.DefaultTemplateConstructor(); if (template.Name == null) { template.Name = systemWordReport.FullClassName; } template.SystemWordTemplate = systemWordReport; template.Query = QueryLogic.GetQueryEntity(info.QueryName); return(template); }
internal static bool HasDefaultTemplateConstructor(SystemWordTemplateEntity systemWordReport) { SystemWordTemplateInfo info = systemWordReports.GetOrThrow(systemWordReport.ToType()); return(info.DefaultTemplateConstructor != null); }