public static string Generate(LogChannelsConfig.Logger outputAPI, string nameSpace, string conditionals, string channel, LogChannelsConfig.Severity severity)
    {
        APIFormat       apiFormat          = apiToFormat[outputAPI];
        SeverityStrings severityStrings    = apiFormat.SeverityToStrings[severity];
        string          methodCallTemplate = apiFormat.MethodCallTemplate;

        string formattedTemplate = string.Format(methodCallTemplate, nameSpace, channel, conditionals, severityStrings.CallMethod, severityStrings.LogMethod);

        return(formattedTemplate);
    }
    public static string Generate(LogChannelsConfig.Logger outputAPI, string nameSpace, List <LogChannelsConfig.Configuration> enabledConfigurations, string channel, LogChannelsConfig.Severity severity, bool severityEnabled)
    {
        string conditionals = "";

        if (severityEnabled && (enabledConfigurations.Count > 0))
        {
            conditionals = string.Join(", ", enabledConfigurations.Select(configuration => string.Format("System.Diagnostics.Conditional(\"{0}\")", ConfigurationToString[configuration])).ToArray());
        }
        else
        {
            conditionals = "System.Diagnostics.Conditional(\"NOT_DEFINED\")";
        }

        return(Generate(outputAPI, nameSpace, conditionals, channel, severity));
    }