Skip to content

Commit 7a3312d

Browse files
author
Stewart Miles
committed
Synchronized Version Handler log level at load time.
This changes the VersionHandlerImpl class to set the Logger level when the class is constructed rather than when the first message is logged. This also ensures that all changes in log level are propagated to the underlying Logger instance when the VersionHandlerImpl.Log() method isn't used. Change-Id: I889a76485536dd85b152c5bc45359e181e428769
1 parent 0a4fecc commit 7a3312d

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

source/VersionHandlerImpl/src/VersionHandlerImpl.cs

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1504,14 +1504,23 @@ private string LibraryPrefix {
15041504
// Settings used by this module.
15051505
internal static ProjectSettings settings = new ProjectSettings("Google.VersionHandler.");
15061506

1507+
/// <summary>
1508+
/// Logger for this module.
1509+
/// </summary>
1510+
private static Logger logger = new Logger();
1511+
15071512
/// <summary>
15081513
/// Enables / disables assets imported at multiple revisions / versions.
15091514
/// In addition, this module will read text files matching _manifest_
15101515
/// and remove files from older manifest files.
15111516
/// </summary>
15121517
static VersionHandlerImpl() {
15131518
Log("Loaded VersionHandlerImpl", verbose: true);
1514-
RunOnMainThread.Run(() => { UpdateVersionedAssetsOnUpdate(); }, runNow: false);
1519+
RunOnMainThread.Run(() => {
1520+
// Load log preferences.
1521+
VerboseLoggingEnabled = VerboseLoggingEnabled;
1522+
UpdateVersionedAssetsOnUpdate();
1523+
}, runNow: false);
15151524
}
15161525

15171526
static void UpdateVersionedAssetsOnUpdate() {
@@ -1658,7 +1667,10 @@ public static bool VerboseLoggingEnabled {
16581667
get { return System.Environment.CommandLine.Contains("-batchmode") ||
16591668
settings.GetBool(PREFERENCE_VERBOSE_LOGGING_ENABLED,
16601669
defaultValue: false); }
1661-
set { settings.SetBool(PREFERENCE_VERBOSE_LOGGING_ENABLED, value); }
1670+
set {
1671+
settings.SetBool(PREFERENCE_VERBOSE_LOGGING_ENABLED, value);
1672+
logger.Level = value ? LogLevel.Verbose : LogLevel.Info;
1673+
}
16621674
}
16631675

16641676
/// <summary>
@@ -1701,11 +1713,6 @@ public static IEnumerable<string> UpdateCompleteMethods {
17011713
}
17021714
}
17031715

1704-
/// <summary>
1705-
/// Logger for this module.
1706-
/// </summary>
1707-
private static Logger logger = new Logger();
1708-
17091716
/// <summary>
17101717
/// Whether to also log to a file in the project.
17111718
/// </summary>
@@ -1723,7 +1730,6 @@ internal static bool LogToFile {
17231730
/// <param name="level">Severity of the message.</param>
17241731
internal static void Log(string message, bool verbose = false,
17251732
LogLevel level = LogLevel.Info) {
1726-
logger.Level = VerboseLoggingEnabled ? LogLevel.Verbose : LogLevel.Info;
17271733
logger.Log(message, level: verbose ? LogLevel.Verbose : level);
17281734
}
17291735

0 commit comments

Comments
 (0)