private void ExecuteInternal(GeneratorExecutionContext context)
        {
            try
            {
                var codeGenerator = new Neo4JCodeGenerator();

                foreach (GraphQLConfig config in context.GetConfigurations())
                {
                    if (config.Extensions.Neo4J is { } settings&&
                        context.GetSchemaDocuments(config) is { Count: > 0 } schemaDocuments)
                    {
                        var codeGeneratorContext = new CodeGeneratorContext(
                            settings.Name,
                            settings.DatabaseName,
                            settings.Namespace ?? throw new Exception("Namespace is required"), // TODO: Review in PR!!
                            schemaDocuments);

                        CodeGenerationResult?result = codeGenerator.Generate(codeGeneratorContext);
                        foreach (SourceFile?sourceFile in result.SourceFiles)
                        {
                            context.AddSource(sourceFile.Name, sourceFile.Source);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                context.ReportError(ex);
            }
        }