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 | 23 | */ |
| 24 | 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 | 29 | * Scroll pane |
| ... | ... | @@ -226,7 +226,7 @@ class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent |
| 226 | 226 | { |
| 227 | 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 | 231 | yPos += 10; |
| 232 | 232 | } |
| ... | ... | @@ -259,6 +259,14 @@ class GuiPanelLiteLoaderLog extends GuiPanel implements ScrollPanelContent |
| 259 | 259 | if (logLine.startsWith("calling late")) return 0x00AAAA; |
| 260 | 260 | if (logLine.startsWith("dependency check")) return 0xFFAA00; |
| 261 | 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 | 271 | return 0xCCCCCC; |
| 264 | 272 | } | ... | ... |
java/common/com/mumfrey/liteloader/core/LiteLoaderEnumerator.java
| ... | ... | @@ -453,15 +453,28 @@ public class LiteLoaderEnumerator implements LoaderEnumerator |
| 453 | 453 | |
| 454 | 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 | 466 | this.registerDisabledContainer(container); |
| 463 | 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 | 480 | return true; | ... | ... |
java/common/com/mumfrey/liteloader/core/api/EnumeratorModuleFolder.java
| ... | ... | @@ -36,20 +36,20 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule |
| 36 | 36 | /** |
| 37 | 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 | 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 | 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 | 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 | 224 | * @param candidateFile |
| 215 | 225 | * @param strVersion |
| 216 | 226 | */ |
| ... | ... | @@ -222,7 +232,7 @@ public class EnumeratorModuleFolder implements FilenameFilter, EnumeratorModule |
| 222 | 232 | { |
| 223 | 233 | // Only add the mod if the version matches, we add candidates to the versionOrderingSets in |
| 224 | 234 | // order to determine the most recent version available. |
| 225 | - if (LiteLoaderVersion.CURRENT.isVersionSupported(modFile.getTargetVersion())) | |
| 235 | + if (this.isFileSupported(modFile)) | |
| 226 | 236 | { |
| 227 | 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 | 261 | Event head = events.iterator().next(); |
| 262 | 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 | 266 | for (Event event : events) |
| 267 | 267 | { |
| ... | ... | @@ -270,4 +270,11 @@ public abstract class EventInjectionTransformer extends ClassTransformer |
| 270 | 270 | |
| 271 | 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 | 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 | 4 | import java.io.PrintWriter; |
| 5 | 5 | import java.io.StringWriter; |
| 6 | 6 | import java.util.ArrayList; |
| 7 | +import java.util.Date; | |
| 7 | 8 | import java.util.LinkedList; |
| 8 | 9 | import java.util.List; |
| 9 | 10 | import java.util.MissingFormatArgumentException; |
| ... | ... | @@ -51,11 +52,11 @@ public class LiteLoaderLogger extends AbstractAppender |
| 51 | 52 | synchronized (LiteLoaderLogger.logTail) |
| 52 | 53 | { |
| 53 | 54 | LiteLoaderLogger.logIndex++; |
| 54 | - this.append(event.getMessage().getFormattedMessage()); | |
| 55 | + this.append(event.getMillis(), event.getMessage().getFormattedMessage()); | |
| 55 | 56 | Throwable thrown = event.getThrown(); |
| 56 | 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 | 64 | /** |
| 64 | 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 | 71 | while (message.indexOf('\n') > -1) |
| 69 | 72 | { |
| 70 | 73 | int LF = message.indexOf('\n'); |
| 71 | - this.appendLine(message.substring(0, LF)); | |
| 74 | + this.appendLine(date + message.substring(0, LF)); | |
| 72 | 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 | /** | ... | ... |