public FunctionCompiler(Assembly configurationSourceAssembly, string outputBinaryFolder, bool outputProxiesJson, TargetEnum target, IAssemblyCompiler assemblyCompiler = null, ITriggerReferenceProvider triggerReferenceProvider = null) { _configurationSourceAssembly = configurationSourceAssembly; _outputBinaryFolder = outputBinaryFolder; _outputProxiesJson = outputProxiesJson; _target = target; _serviceCollection = new ServiceCollection(); CommandingDependencyResolverAdapter adapter = new CommandingDependencyResolverAdapter( (fromType, toInstance) => _serviceCollection.AddSingleton(fromType, toInstance), (fromType, toType) => _serviceCollection.AddTransient(fromType, toType), (resolveType) => null // we never resolve during compilation ); _commandRegistry = adapter.AddCommanding(); _assemblyCompiler = assemblyCompiler ?? new AssemblyCompiler(); _triggerReferenceProvider = triggerReferenceProvider ?? new TriggerReferenceProvider(); _jsonCompiler = new JsonCompiler(); _proxiesJsonCompiler = new ProxiesJsonCompiler(); _openApiCompiler = new OpenApiCompiler(); }
public Compiler(Assembly configurationSourceAssembly, string outputBinaryFolder, ICompilerLog compilerLog) { _configurationSourceAssembly = configurationSourceAssembly; _outputBinaryFolder = outputBinaryFolder; _compilerLog = compilerLog; _serviceCollection = new ServiceCollection(); CommandingDependencyResolverAdapter adapter = new CommandingDependencyResolverAdapter( (fromType, toInstance) => _serviceCollection.AddSingleton(fromType, toInstance), (fromType, toType) => _serviceCollection.AddTransient(fromType, toType), (resolveType) => null // we never resolve during compilation ); _commandRegistry = adapter.AddCommanding(); _triggerReferenceProvider = new TriggerReferenceProvider(); }