# SubPluginInfo (SubServers.Host)

net.ME1312.SubServers.Host.API

## Class SubPluginInfo

- java.lang.Object
- - net.ME1312.SubServers.Host.API.SubPluginInfo

All Implemented Interfaces:
  ExtraDataHandler

    public class SubPluginInfo
    extends java.lang.Object
    implements ExtraDataHandler

SubPlugin Info Class

See Also:
  `SubPlugin`

### Constructor Summary

Constructors
Constructor and Description
`SubPluginInfo(ExHost host, java.lang.Object plugin, java.lang.String name, Version version, java.util.List<java.lang.String> authors, java.lang.String description, java.net.URL website, java.util.List<java.lang.String> loadBefore, java.util.List<java.lang.String> dependencies, java.util.List<java.lang.String> softDependencies)` Create a SubPlugin Description

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addExtra(java.lang.String handle, java.lang.Object value)` Add an extra value to this Server
`java.lang.Object` `get()` Get Plugin Object
`java.util.List<java.lang.String>` `getAuthors()` Get Authors List
`java.io.File` `getDataFolder()` Gets this Plugin's data folder
`java.util.List<java.lang.String>` `getDependancies()` Gets the Dependencies List
`java.lang.String` `getDescription()` Get Plugin Description
`YAMLSection` `getExtra()` Get the extra value section
`YAMLValue` `getExtra(java.lang.String handle)` Get an extra value
`java.util.List<java.lang.String>` `getLoadBefore()` Gets the Load Before Plugins List
`Logger` `getLogger()` Gets the default Logger for this Plugin
`java.lang.String` `getName()` Get Plugin's Name
`java.util.List<java.lang.String>` `getSoftDependancies()` Gets the Soft Dependencies List
`Version` `getVersion()` Get Plugin's Version
`java.net.URL` `getWebsite()` Get Authors' Website
`boolean` `hasExtra(java.lang.String handle)` Determine if an extra value exists
`boolean` `isEnabled()` Sets the Plugin's Enabled Status
`void` `removeExtra(java.lang.String handle)` Remove an extra value from this Server
`void` `setEnabled(boolean value)` Sets if the Plugin is Enabled
`void` `setLogger(Logger value)` Replace this Plugin's Logger with a custom one

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

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

### Constructor Detail

#### SubPluginInfo

    public SubPluginInfo(ExHost host,
                         java.lang.Object plugin,
                         java.lang.String name,
                         Version version,
                         java.util.List<java.lang.String> authors,
                         java.lang.String description,
                         java.net.URL website,
                         java.util.List<java.lang.String> loadBefore,
                         java.util.List<java.lang.String> dependencies,
                         java.util.List<java.lang.String> softDependencies)

Create a SubPlugin Description

Parameters:
  `host` - SubServers.Host
  `plugin` - Plugin
  `name` - Plugin Name
  `version` - Plugin Version
  `authors` - Authors List
  `description` - Plugin Description
  `website` - Authors' Website
  `loadBefore` - Load Before Plugins List
  `dependencies` - Dependencies List
  `softDependencies` - Soft Dependencies List

### Method Detail

#### get

    public java.lang.Object get()

Get Plugin Object

Returns:
  Plugin Object

#### getName

    public java.lang.String getName()

Get Plugin's Name

Returns:
  Plugin Name

#### getVersion

    public Version getVersion()

Get Plugin's Version

Returns:
  Plugin Version

#### getAuthors

    public java.util.List<java.lang.String> getAuthors()

Get Authors List

Returns:
  Authors List

#### getDescription

    public java.lang.String getDescription()

Get Plugin Description

Returns:
  Plugin Description

#### getWebsite

    public java.net.URL getWebsite()

Get Authors' Website

Returns:
  Authors' Website

#### getLoadBefore

    public java.util.List<java.lang.String> getLoadBefore()

Gets the Load Before Plugins List

Returns:
  Load Before Plugins List

#### getDependancies

    public java.util.List<java.lang.String> getDependancies()

Gets the Dependencies List

Returns:
  Dependencies List

#### getSoftDependancies

    public java.util.List<java.lang.String> getSoftDependancies()

Gets the Soft Dependencies List

Returns:
  Soft Dependencies List

#### isEnabled

    public boolean isEnabled()

Sets the Plugin's Enabled Status

Returns:
  Enabled Status

#### setEnabled

    public void setEnabled(boolean value)

Sets if the Plugin is Enabled

Parameters:
  `value` - Value

#### setLogger

    public void setLogger(Logger value)

Replace this Plugin's Logger with a custom one

Parameters:
  `value` - Value

#### getLogger

    public Logger getLogger()

Gets the default Logger for this Plugin

Returns:
  Logger

#### getDataFolder

    public java.io.File getDataFolder()

Gets this Plugin's data folder

Returns:
  Data Folder

#### addExtra

    public void addExtra(java.lang.String handle,
                         java.lang.Object value)

Description copied from interface: `ExtraDataHandler`
Add an extra value to this Server

Specified by:
  `addExtra` in interface `ExtraDataHandler`
Parameters:
  `handle` - Handle
  `value` - Value

#### hasExtra

    public boolean hasExtra(java.lang.String handle)

Description copied from interface: `ExtraDataHandler`
Determine if an extra value exists

Specified by:
  `hasExtra` in interface `ExtraDataHandler`
Parameters:
  `handle` - Handle
Returns:
  Value Status

#### getExtra

    public YAMLValue getExtra(java.lang.String handle)

Description copied from interface: `ExtraDataHandler`
Get an extra value

Specified by:
  `getExtra` in interface `ExtraDataHandler`
Parameters:
  `handle` - Handle
Returns:
  Value

#### getExtra

    public YAMLSection getExtra()

Description copied from interface: `ExtraDataHandler`
Get the extra value section

Specified by:
  `getExtra` in interface `ExtraDataHandler`
Returns:
  Extra Value Section

#### removeExtra

    public void removeExtra(java.lang.String handle)

Description copied from interface: `ExtraDataHandler`
Remove an extra value from this Server

Specified by:
  `removeExtra` in interface `ExtraDataHandler`
Parameters:
  `handle` - Handle