Package dev.hypera.chameleon.extension
Interface ChameleonExtensionDependency
-
@NonExtendable public interface ChameleonExtensionDependencyChameleon extension dependency.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description @NotNull Optional<Class<? extends ChameleonExtension>>extension()Returns the extension class this dependency is for.@NotNull Stringname()Returns the name of the extension this dependency is for.default booleanoptional()Returns whether this dependency is optional for loading the extension.static @NotNull ChameleonExtensionDependencyoptional(@NotNull Class<? extends ChameleonExtension> extension)Create a new optional extension dependency.static @NotNull ChameleonExtensionDependencyoptional(@NotNull String extension)Create a new optional extension dependency.static @NotNull ChameleonExtensionDependencyoptional(@NotNull String name, @NotNull Class<? extends ChameleonExtension> extension)Create a new optional extension dependency with the extension name.static @NotNull ChameleonExtensionDependencyoptional(@NotNull String name, @NotNull String extension)Create a new optional extension dependency with the extension name.booleanrequired()Returns whether this dependency is a required for loading the extension.static @NotNull ChameleonExtensionDependencyrequired(@NotNull Class<? extends ChameleonExtension> extension)Create a new required extension dependency.static @NotNull ChameleonExtensionDependencyrequired(@NotNull String extension)Create a new required extension dependency.static @NotNull ChameleonExtensionDependencyrequired(@NotNull String name, @NotNull Class<? extends ChameleonExtension> extension)Create a new required extension dependency with the extension name.static @NotNull ChameleonExtensionDependencyrequired(@NotNull String name, @NotNull String extension)Create a new required extension dependency with the extension name.
-
-
-
Method Detail
-
required
@Contract("_ -> new") @NotNull static @NotNull ChameleonExtensionDependency required(@NotNull @NotNull Class<? extends ChameleonExtension> extension)Create a new required extension dependency.- Parameters:
extension- Extension class.- Returns:
- new dependency.
-
required
@Contract("_, _ -> new") @NotNull static @NotNull ChameleonExtensionDependency required(@NotNull @NotNull String name, @NotNull @NotNull Class<? extends ChameleonExtension> extension)Create a new required extension dependency with the extension name.- Parameters:
name- Extension name.extension- Extension class.- Returns:
- new dependency.
-
required
@Contract("_ -> new") @NotNull static @NotNull ChameleonExtensionDependency required(@NotNull @NotNull String extension)Create a new required extension dependency.- Parameters:
extension- Extension class name.- Returns:
- new dependency.
-
required
@Contract("_, _ -> new") @NotNull static @NotNull ChameleonExtensionDependency required(@NotNull @NotNull String name, @NotNull @NotNull String extension)Create a new required extension dependency with the extension name.- Parameters:
name- Extension name.extension- Extension class name.- Returns:
- new dependency.
-
required
boolean required()
Returns whether this dependency is a required for loading the extension.- Returns:
- required.
-
optional
@Contract("_ -> new") @NotNull static @NotNull ChameleonExtensionDependency optional(@NotNull @NotNull Class<? extends ChameleonExtension> extension)Create a new optional extension dependency.- Parameters:
extension- Extension class.- Returns:
- new dependency.
-
optional
@Contract("_, _ -> new") @NotNull static @NotNull ChameleonExtensionDependency optional(@NotNull @NotNull String name, @NotNull @NotNull Class<? extends ChameleonExtension> extension)Create a new optional extension dependency with the extension name.- Parameters:
name- Extension name.extension- Extension class.- Returns:
- new dependency.
-
optional
@Contract("_ -> new") @NotNull static @NotNull ChameleonExtensionDependency optional(@NotNull @NotNull String extension)Create a new optional extension dependency.- Parameters:
extension- Extension class name.- Returns:
- new dependency.
-
optional
@Contract("_, _ -> new") @NotNull static @NotNull ChameleonExtensionDependency optional(@NotNull @NotNull String name, @NotNull @NotNull String extension)Create a new optional extension dependency with the extension name.- Parameters:
name- Extension name.extension- Extension class name.- Returns:
- new dependency.
-
optional
default boolean optional()
Returns whether this dependency is optional for loading the extension.- Returns:
- optional.
-
name
@NotNull @NotNull String name()
Returns the name of the extension this dependency is for.- Returns:
- extension name.
-
extension
@NotNull @NotNull Optional<Class<? extends ChameleonExtension>> extension()
Returns the extension class this dependency is for.- Returns:
- an optional containing the extension class, if found, otherwise an empty optional.
-
-