Package de.geolykt.starloader.mod

# Class Extension

java.lang.Object
de.geolykt.starloader.mod.Extension

public abstract class Extension extends Object

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`Extension.ExtensionDescription`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`Extension()`

## Method Summary

Modifier and Type
Method
Description
`final @NotNull Extension.ExtensionDescription`
`getDescription()`
`final @NotNull org.slf4j.Logger`
`getLogger()`
`void`
`initialize()`
`void`
`postInitialize()`
`void`
`postTerminate()`
Deprecated.
This method is a boilerplate solution, for more info see below However, the method is not slated for removal.
`void`
`preInitialize()`
`void`
`preTerminate()`
Deprecated.
This method is a boilerplate solution, for more info see below.
`void`
`terminate()`
Deprecated.
This method is a boilerplate solution, for more info see below However, the method is not slated for removal.
`void`
`unload()`
Deprecated.
This method is a boilerplate solution, for more info see below However, the method is not slated for removal.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### Extension

protected Extension()

## Method Details

### preInitialize

public void preInitialize()

### initialize

public void initialize()

### postInitialize

public void postInitialize()

### preTerminate

@Deprecated public void preTerminate()
Deprecated.
This method is a boilerplate solution, for more info see below. However, the method is not slated for removal. WARNING: The implementation of this method should be coded very carefully. The implementation should be thread-safe and avoid deadlocks and should not rely on the existence of other threads. For more info, see `Runtime.addShutdownHook(Thread)`. Additionally due to the nature of how extensions unload, it is recommended that are more recommendable method for unloading is used, for example SLAPI offers the ApplicationStopEvent and SignalExtensionTerminationExtension. Other extension libraries might offer similar alternatives that are a lot more safer to use.

### terminate

@Deprecated public void terminate()
Deprecated.
This method is a boilerplate solution, for more info see below However, the method is not slated for removal. WARNING: The implementation of this method should be coded very carefully. The implementation should be thread-safe and avoid deadlocks and should not rely on the existence of other threads. For more info, see `Runtime.addShutdownHook(Thread)`. Additionally due to the nature of how extensions unload, it is recommended that are more recommendable method for unloading is used, for example SLAPI offers the ApplicationStopEvent and SignalExtensionTerminationExtension. Other extension libraries might offer similar alternatives that are a lot more safer to use.

### postTerminate

@Deprecated public void postTerminate()
Deprecated.
This method is a boilerplate solution, for more info see below However, the method is not slated for removal. WARNING: The implementation of this method should be coded very carefully. The implementation should be thread-safe and avoid deadlocks and should not rely on the existence of other threads. For more info, see `Runtime.addShutdownHook(Thread)`. Additionally due to the nature of how extensions unload, it is recommended that are more recommendable method for unloading is used, for example SLAPI offers the ApplicationStopEvent and SignalExtensionTerminationExtension. Other extension libraries might offer similar alternatives that are a lot more safer to use.

### unload

@Deprecated public void unload()
Deprecated.
This method is a boilerplate solution, for more info see below However, the method is not slated for removal. WARNING: The implementation of this method should be coded very carefully. The implementation should be thread-safe and avoid deadlocks and should not rely on the existence of other threads. For more info, see `Runtime.addShutdownHook(Thread)`. Additionally due to the nature of how extensions unload, it is recommended that are more recommendable method for unloading is used, for example SLAPI offers the ApplicationStopEvent and SignalExtensionTerminationExtension. Other extension libraries might offer similar alternatives that are a lot more safer to use. After calling this method, the entirety of the Extension is unloaded, which means classes provided by the extension become unusable.

### getDescription

@NotNull public final @NotNull Extension.ExtensionDescription getDescription()

### getLogger

@NotNull public final @NotNull org.slf4j.Logger getLogger()