All Classes and Interfaces

Class
Description
 
Abstract base class for Command.
 
 
 
 
 
 
 
This class handles the lifecycle of launching and running a Process.
 
 
 
 
 
 
 
 
 
 
 
 
Validates that an account actually owns the game.
 
 
Its possible that multiple classes named HeadlessMcApi exist on multiple Classloaders.
 
 
 
 
 
 
Modlauncher, BootstrapLauncher and SecureJarHandler all call ModuleLayer.boot sometimes.
The simplest CommandLineReader implementation, which reads InAndOutProvider.getIn() with a BufferedReader.
 
 
A service for verifying hashes.
 
 
 
 
 
 
A Command implementation that delegates to another command.
A CommandContext implementation that delegates to another CommandContext.
 
 
 
 
 
Represents an executable command in HeadlessMc.
A JLine Completer that completes a given command with the current CommandContext.
A CommandContext, it manages multiple Commands and is the bridge between them and a CommandLine.
 
Default implementation of CommandContext.
A CommandException is meant to be used as a quick and easy way to exit the execution of a command.
Everything related to reading commands from the command line.
Represents a blocking task that reads commands from a terminal, console or other InputStream.
 
Utility for working with Commands and CommandContexts.
 
 
 
 
 
 
 
org.lwjgl.system.CustomBuffer returns a generic SELF type everywhere.
A transformer that prints the name of every method that is called.
Wrapper around dev.xdark.deencapsulation.Deencapsulation, which might already fail in the static initializer on Java 8, so it must be handled with care.
A CommandLineReader that decides whether to use a BufferedCommandLineReader or a ConsoleCommandLineReader.
 
 
 
 
Basically Type.getDescriptor(Class) since that class might not be available at Runtime.
Since Minecrafts Gameloop is just a while(True) loop which calls org.lwjgl.opengl.Display.update() and Thread.yield().
 
 
 
If we want to run the game in headless mode we do not need some assets like sounds and textures.
 
 
 
 
Manages the exit of HeadlessMc, by default System.exit(int).
 
 
 
 
 
Represents the family of a HasParent.
 
Util for HasParent.
 
 
Thrown by the FileManager.
 
 
 
 
Forge 1.20.1 introduces the net.minecraftforge.fml.earlydisplay.DisplayWindow class.
 
 
 
 
 
 
 
 
 
 
Objects of this type hold an instance of an CommandContext.
A type which holds a Config.
A Type which can be described.
 
A type which can be identified by an id.
A type which can be named.
A type which has a parent of a certain type.
Represents a HeadlessMc instance.
Provides a global instance of HeadlessMc.
A default implementation for the HeadlessMc interface.
 
The HeadlessMc wrapper will load the launcher through a custom Classloader.
A Command implementation that displays information about Commands from a CommandContext.
 
Interface that can be implemented by a Handler to show that it should not be removed by a LoggingService.
 
Properties shared by both the HeadlessMc-Runtime and the HeadlessMc-Launcher.
 
 
 
 
 
Utility for dealing with Instructions.
 
 
 
 
 
 
 
 
 
Represents a Java executable.
Because the Java9Classloader.findClass(String, String) does not exist on Java 8 classloaders we have this interface, so that when compiling with Java 8 still have a method to override in ModuleURLClassLoader.
 
 
 
 
 
 
 
 
 
 
An implementation of a CommandLineReader that reads commands from a JLine Terminal with a LineReader.
 
 
A collection of properties for configuring JLine.
 
 
Information about a StepFullJavaSession that is required to launch the game.
 
 
Represents the HeadlessMc launcher and everything that belongs to it.
Holds a globally available instance of the HeadlessMc Launcher.
Helps with building and initializing Launcher instances.
Manages the directories the HeadlessMc Launcher will work in.
Properties used by the launcher.
 
 
 
 
 
cpw's BootstrapLauncher turns a classpath environment into a modularized one.
 
 
 
 
 
 
 
 
Custom LoggerFactory for CustomLog.
 
 
System Properties to configure logging.
Manages Loggers for HMC.
 
 
 
 
A JavaAgent calling the LwjglTransformer.
 
 
A given ClassNode will be transformed in the following ways:
 
Main entry point for HeadlessMc.
 
 
 
 
A Command implementation that displays the currently used memory, free memory and max memory of the JVM.
Redirections for memoryReallocation, those methods of org.lwjgl.system.MemoryUtil that make ByteBuffers larger.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
An URLClassLoader that looks through the modules of the given java.lang.module.Configuration to find classes.
A Command that treats its given arguments as commands and executes them.
 
 
 
 
 
 
Represents an Operating System.
 
 
 
 
 
 
 
 
 
Simplest implementation of PasswordAware.
 
 
 
Minecrafts SoundManager spams us with some errorMessages if we use the -lwjgl flag.
 
 
 
 
 
 
 
 
 
 
A type that provides a Progressbar.
 
 
 
 
HeadlessMc can be started in two modes.
 
A Command that calls HeadlessMc's ExitManager to quit the process.
 
 
 
 
 
 
Utility for Reflection.
 
 
 
 
 
 
 
 
 
 
 
Gives you a Framework to construct your own HeadlessMc instances.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A simple launcher for java programs that loads the classpath onto an URLClassLoader.
 
TODO: is the STB library unsafe? couldn't we just load it?
 
On some platforms (Android) java.awt might not be available.
 
 
 
Helps with parsing SystemProperties from their specification on the command line.
Assists with building aligned tables.
 
 
 
 
 
 
 
 
 
 
 
Produces log messages like this: "[23:18:58] [main/INFO] [Test]: Test", because Javas Formatter doesn't support getting the Thread name.
 
 
 
 
 
 
 
 
 
Utility for URLs.
 
 
 
Represents a Minecraft version.
 
 
VersionArgument but also allows to specify server as type.
 
 
Information about a Minecraft version.
 
 
 
 
 
 
 
Exception thrown by VersionSpecificModManagers.
Manages multiple VersionSpecificModRepositorys.
Represents a repository that provides downloads for a version specific mod, e.g.
Common version specific mods we use.