Commit 97de196eea75cd0b4afee61664b61485038adf38
1 parent
b3097a72
minor refactoring and logging output changes
Showing
5 changed files
with
60 additions
and
19 deletions
java/client/com/mumfrey/liteloader/client/gui/GuiPanelLiteLoaderLog.java
| @@ -23,7 +23,7 @@ import com.mumfrey.liteloader.util.net.LiteLoaderLogUpload; | @@ -23,7 +23,7 @@ import com.mumfrey.liteloader.util.net.LiteLoaderLogUpload; | ||
| 23 | */ | 23 | */ |
| 24 | class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent | 24 | class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent |
| 25 | { | 25 | { |
| 26 | - private static boolean useNativeRes = false; | 26 | + private static boolean useNativeRes = true; |
| 27 | 27 | ||
| 28 | /** | 28 | /** |
| 29 | * Scroll pane | 29 | * Scroll pane |
| @@ -226,7 +226,7 @@ class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent | @@ -226,7 +226,7 @@ class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent | ||
| 226 | { | 226 | { |
| 227 | if (yPos > scrollAmount - 10 && yPos <= scrollAmount + height) | 227 | if (yPos > scrollAmount - 10 && yPos <= scrollAmount + height) |
| 228 | { | 228 | { |
| 229 | - this.mc.fontRendererObj.drawString(logLine, 0, yPos, this.getMessageColour(logLine.toLowerCase())); | 229 | + this.mc.fontRendererObj.drawString(logLine, 0, yPos, this.getMessageColour(logLine.toLowerCase().substring(11))); |
| 230 | } | 230 | } |
| 231 | yPos += 10; | 231 | yPos += 10; |
| 232 | } | 232 | } |
| @@ -259,6 +259,14 @@ class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent | @@ -259,6 +259,14 @@ class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent | ||
| 259 | if (logLine.startsWith("calling late")) return 0x00AAAA; | 259 | if (logLine.startsWith("calling late")) return 0x00AAAA; |
| 260 | if (logLine.startsWith("dependency check")) return 0xFFAA00; | 260 | if (logLine.startsWith("dependency check")) return 0xFFAA00; |
| 261 | if (logLine.startsWith("dependency")) return 0xFF5500; | 261 | if (logLine.startsWith("dependency")) return 0xFF5500; |
| 262 | + if (logLine.startsWith("mod name collision")) return 0xAA0000; | ||
| 263 | + if (logLine.startsWith("registering discovery module")) return 0x55FF55; | ||
| 264 | + if (logLine.startsWith("registering interface provider")) return 0xFFAA00; | ||
| 265 | + if (logLine.startsWith("mod file '")) return 0xFFAA00; | ||
| 266 | + if (logLine.startsWith("classtransformer '")) return 0x5555FF; | ||
| 267 | + if (logLine.startsWith("tweakClass '")) return 0x5555FF; | ||
| 268 | + if (logLine.startsWith("baking listener list")) return 0x00AAAA; | ||
| 269 | + if (logLine.startsWith("generating new event handler")) return 0xFFFF55; | ||
| 262 | 270 | ||
| 263 | return 0xCCCCCC; | 271 | return 0xCCCCCC; |
| 264 | } | 272 | } |
java/common/com/mumfrey/liteloader/core/LiteLoaderEnumerator.java
| @@ -453,15 +453,28 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | @@ -453,15 +453,28 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | ||
| 453 | 453 | ||
| 454 | if (container != null) | 454 | if (container != null) |
| 455 | { | 455 | { |
| 456 | - if (container.isEnabled(this.environment) && this.checkDependencies(container) && this.checkAPIRequirements(container)) | 456 | + if (!container.isEnabled(this.environment)) |
| 457 | { | 457 | { |
| 458 | - this.registerEnabledContainer(container); | 458 | + LiteLoaderLogger.info("Container %s is disabled", container.getLocation()); |
| 459 | + this.registerDisabledContainer(container); | ||
| 460 | + return false; | ||
| 459 | } | 461 | } |
| 460 | - else | 462 | + |
| 463 | + if (!this.checkDependencies(container)) | ||
| 461 | { | 464 | { |
| 465 | + LiteLoaderLogger.info("Container %s is missing one or more dependencies", container.getLocation()); | ||
| 462 | this.registerDisabledContainer(container); | 466 | this.registerDisabledContainer(container); |
| 463 | return false; | 467 | return false; |
| 464 | } | 468 | } |
| 469 | + | ||
| 470 | + if (!this.checkAPIRequirements(container)) | ||
| 471 | + { | ||
| 472 | + LiteLoaderLogger.info("Container %s is missing one or more required APIs", container.getLocation()); | ||
| 473 | + this.registerDisabledContainer(container); | ||
| 474 | + return false; | ||
| 475 | + } | ||
| 476 | + | ||
| 477 | + this.registerEnabledContainer(container); | ||
| 465 | } | 478 | } |
| 466 | 479 | ||
| 467 | return true; | 480 | return true; |
java/common/com/mumfrey/liteloader/core/api/EnumeratorModuleFolder.java
| @@ -36,20 +36,20 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule | @@ -36,20 +36,20 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule | ||
| 36 | /** | 36 | /** |
| 37 | * Ordered sets used to sort mods by version/revision | 37 | * Ordered sets used to sort mods by version/revision |
| 38 | */ | 38 | */ |
| 39 | - private final Map<String, TreeSet<LoadableMod<File>>> versionOrderingSets = new HashMap<String, TreeSet<LoadableMod<File>>>(); | 39 | + protected final Map<String, TreeSet<LoadableMod<File>>> versionOrderingSets = new HashMap<String, TreeSet<LoadableMod<File>>>(); |
| 40 | 40 | ||
| 41 | /** | 41 | /** |
| 42 | * Mods to add once init is completed | 42 | * Mods to add once init is completed |
| 43 | */ | 43 | */ |
| 44 | - private final List<LoadableMod<File>> loadableMods = new ArrayList<LoadableMod<File>>(); | 44 | + protected final List<LoadableMod<File>> loadableMods = new ArrayList<LoadableMod<File>>(); |
| 45 | 45 | ||
| 46 | - private LiteLoaderCoreAPI coreAPI; | 46 | + protected LiteLoaderCoreAPI coreAPI; |
| 47 | 47 | ||
| 48 | - private File directory; | 48 | + protected File directory; |
| 49 | 49 | ||
| 50 | - private boolean readZipFiles; | ||
| 51 | - private boolean readJarFiles; | ||
| 52 | - private boolean loadTweaks; | 50 | + protected boolean readZipFiles; |
| 51 | + protected boolean readJarFiles; | ||
| 52 | + protected boolean loadTweaks; | ||
| 53 | 53 | ||
| 54 | /** | 54 | /** |
| 55 | * True if this is a general, unversioned folder and the enumerator should only add files which have valid version metadata | 55 | * True if this is a general, unversioned folder and the enumerator should only add files which have valid version metadata |
| @@ -211,6 +211,16 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule | @@ -211,6 +211,16 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule | ||
| 211 | } | 211 | } |
| 212 | 212 | ||
| 213 | /** | 213 | /** |
| 214 | + * @param modFile | ||
| 215 | + * @return | ||
| 216 | + */ | ||
| 217 | + protected boolean isFileSupported(LoadableModFile modFile) | ||
| 218 | + { | ||
| 219 | + // Stub for subclasses | ||
| 220 | + return LiteLoaderVersion.CURRENT.isVersionSupported(modFile.getTargetVersion()); | ||
| 221 | + } | ||
| 222 | + | ||
| 223 | + /** | ||
| 214 | * @param candidateFile | 224 | * @param candidateFile |
| 215 | * @param strVersion | 225 | * @param strVersion |
| 216 | */ | 226 | */ |
| @@ -222,7 +232,7 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule | @@ -222,7 +232,7 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule | ||
| 222 | { | 232 | { |
| 223 | // Only add the mod if the version matches, we add candidates to the versionOrderingSets in | 233 | // Only add the mod if the version matches, we add candidates to the versionOrderingSets in |
| 224 | // order to determine the most recent version available. | 234 | // order to determine the most recent version available. |
| 225 | - if (LiteLoaderVersion.CURRENT.isVersionSupported(modFile.getTargetVersion())) | 235 | + if (this.isFileSupported(modFile)) |
| 226 | { | 236 | { |
| 227 | if (!this.versionOrderingSets.containsKey(modFile.getName())) | 237 | if (!this.versionOrderingSets.containsKey(modFile.getName())) |
| 228 | { | 238 | { |
java/common/com/mumfrey/liteloader/transformers/event/EventInjectionTransformer.java
| @@ -261,7 +261,7 @@ public abstract class EventInjectionTransformer extends ClassTransformer | @@ -261,7 +261,7 @@ public abstract class EventInjectionTransformer extends ClassTransformer | ||
| 261 | Event head = events.iterator().next(); | 261 | Event head = events.iterator().next(); |
| 262 | MethodNode handler = head.inject(injectionPoint, cancellable, this.globalEventID); | 262 | MethodNode handler = head.inject(injectionPoint, cancellable, this.globalEventID); |
| 263 | 263 | ||
| 264 | - LiteLoaderLogger.info("Injecting event %s with %d handlers in method %s in class %s", head.getName(), events.size(), method.name, classNode.name.replace('/', '.')); | 264 | + LiteLoaderLogger.info("Injecting %s[x%d] in %s in %s", head.getName(), events.size(), method.name, getSimpleClassName(classNode)); |
| 265 | 265 | ||
| 266 | for (Event event : events) | 266 | for (Event event : events) |
| 267 | { | 267 | { |
| @@ -270,4 +270,11 @@ public abstract class EventInjectionTransformer extends ClassTransformer | @@ -270,4 +270,11 @@ public abstract class EventInjectionTransformer extends ClassTransformer | ||
| 270 | 270 | ||
| 271 | this.globalEventID++; | 271 | this.globalEventID++; |
| 272 | } | 272 | } |
| 273 | + | ||
| 274 | + private static String getSimpleClassName(ClassNode classNode) | ||
| 275 | + { | ||
| 276 | + String className = classNode.name.replace('/', '.'); | ||
| 277 | + int dotPos = className.lastIndexOf('.'); | ||
| 278 | + return dotPos == -1 ? className : className.substring(dotPos + 1); | ||
| 279 | + } | ||
| 273 | } | 280 | } |
| 274 | \ No newline at end of file | 281 | \ No newline at end of file |
java/common/com/mumfrey/liteloader/util/log/LiteLoaderLogger.java
| @@ -4,6 +4,7 @@ import java.io.IOException; | @@ -4,6 +4,7 @@ import java.io.IOException; | ||
| 4 | import java.io.PrintWriter; | 4 | import java.io.PrintWriter; |
| 5 | import java.io.StringWriter; | 5 | import java.io.StringWriter; |
| 6 | import java.util.ArrayList; | 6 | import java.util.ArrayList; |
| 7 | +import java.util.Date; | ||
| 7 | import java.util.LinkedList; | 8 | import java.util.LinkedList; |
| 8 | import java.util.List; | 9 | import java.util.List; |
| 9 | import java.util.MissingFormatArgumentException; | 10 | import java.util.MissingFormatArgumentException; |
| @@ -51,11 +52,11 @@ public class LiteLoaderLogger extends AbstractAppender | @@ -51,11 +52,11 @@ public class LiteLoaderLogger extends AbstractAppender | ||
| 51 | synchronized (LiteLoaderLogger.logTail) | 52 | synchronized (LiteLoaderLogger.logTail) |
| 52 | { | 53 | { |
| 53 | LiteLoaderLogger.logIndex++; | 54 | LiteLoaderLogger.logIndex++; |
| 54 | - this.append(event.getMessage().getFormattedMessage()); | 55 | + this.append(event.getMillis(), event.getMessage().getFormattedMessage()); |
| 55 | Throwable thrown = event.getThrown(); | 56 | Throwable thrown = event.getThrown(); |
| 56 | if (thrown != null) | 57 | if (thrown != null) |
| 57 | { | 58 | { |
| 58 | - this.append(String.format("\2474%s: \2476%s", thrown.getClass().getSimpleName(), thrown.getMessage())); | 59 | + this.append(event.getMillis(), String.format("\2474%s: \2476%s", thrown.getClass().getSimpleName(), thrown.getMessage())); |
| 59 | } | 60 | } |
| 60 | } | 61 | } |
| 61 | } | 62 | } |
| @@ -63,16 +64,18 @@ public class LiteLoaderLogger extends AbstractAppender | @@ -63,16 +64,18 @@ public class LiteLoaderLogger extends AbstractAppender | ||
| 63 | /** | 64 | /** |
| 64 | * @param message | 65 | * @param message |
| 65 | */ | 66 | */ |
| 66 | - private void append(String message) | 67 | + private void append(long timestamp, String message) |
| 67 | { | 68 | { |
| 69 | + String date = new java.text.SimpleDateFormat("[HH:mm:ss] ").format(new Date(timestamp)); | ||
| 70 | + | ||
| 68 | while (message.indexOf('\n') > -1) | 71 | while (message.indexOf('\n') > -1) |
| 69 | { | 72 | { |
| 70 | int LF = message.indexOf('\n'); | 73 | int LF = message.indexOf('\n'); |
| 71 | - this.appendLine(message.substring(0, LF)); | 74 | + this.appendLine(date + message.substring(0, LF)); |
| 72 | message = message.substring(LF + 1); | 75 | message = message.substring(LF + 1); |
| 73 | } | 76 | } |
| 74 | 77 | ||
| 75 | - this.appendLine(message); | 78 | + this.appendLine(date + message); |
| 76 | } | 79 | } |
| 77 | 80 | ||
| 78 | /** | 81 | /** |