/// <summary> /// Loads the code generator on demand /// </summary> public static void Initialize() { #if !NETSTANDARD_TODO codeGeneratorInstance = LoadCodeGenerator(); codeGeneratorCacheInstance = codeGeneratorInstance as ICodeGeneratorCache; #endif }
/// <summary> /// Ensures code for all currently loaded assemblies has been generated and loaded. /// </summary> public static void GenerateAndCacheCodeForAllAssemblies() { IRuntimeCodeGenerator codeGen = CodeGeneratorInstance.Value; if (codeGen != null) { codeGen.GenerateAndLoadForAssemblies(AppDomain.CurrentDomain.GetAssemblies()); } }
/// <summary> /// Ensures code for the <paramref name="input"/> assembly has been generated and loaded. /// </summary> /// <param name="input"> /// The input assembly. /// </param> public static void GenerateAndCacheCodeForAssembly(Assembly input) { IRuntimeCodeGenerator codeGen = CodeGeneratorInstance.Value; if (codeGen != null) { codeGen.GenerateAndLoadForAssembly(input); } }
/// <summary> /// Loads the code generator. /// </summary> /// <returns>The code generator.</returns> private static IRuntimeCodeGenerator LoadCodeGenerator() { IRuntimeCodeGenerator result = AssemblyLoader.TryLoadAndCreateInstance<IRuntimeCodeGenerator>(CodeGenAssemblyName, Log); if (result == null) { Log.Warn( ErrorCode.CodeGenDllMissing, "Code generator assembly (" + CodeGenAssemblyName + ".dll) not present."); } return result; }
/// <summary> /// Loads the code generator. /// </summary> /// <returns>The code generator.</returns> private IRuntimeCodeGenerator LoadCodeGenerator() { IRuntimeCodeGenerator result = AssemblyLoader.TryLoadAndCreateInstance <IRuntimeCodeGenerator>(CodeGenAssemblyName, Log, this.serviceProvider); if (result == null) { Log.Info( ErrorCode.CodeGenDllMissing, "Code generator assembly (" + CodeGenAssemblyName + ".dll) not present."); } return(result); }
/// <summary> /// Loads the code generator on demand /// </summary> public void Initialize() { this.codeGeneratorInstance = this.serviceProvider.GetService <IRuntimeCodeGenerator>() ?? this.LoadCodeGenerator(); codeGeneratorCacheInstance = this.codeGeneratorInstance as ICodeGeneratorCache; }
/// <summary> /// Loads the code generator on demand /// </summary> public static void Initialize() { codeGeneratorInstance = LoadCodeGenerator(); codeGeneratorCacheInstance = codeGeneratorInstance as ICodeGeneratorCache; }
/// <summary> /// Loads the code generator on demand /// </summary> public static void Initialize() { CodeGeneratorInstance = LoadCodeGenerator(); CodeGeneratorCacheInstance = CodeGeneratorInstance as ICodeGeneratorCache; }