# InternalHost (SubServers.Bungee)

net.ME1312.SubServers.Bungee.Host.Internal

## Class InternalHost

- java.lang.Object
- - net.ME1312.SubServers.Bungee.Host.Host
  - - net.ME1312.SubServers.Bungee.Host.Internal.InternalHost

All Implemented Interfaces:
  ExtraDataHandler

    public class InternalHost
    extends Host

Internal Host Class

### Constructor Summary

Constructors
Constructor and Description
`InternalHost(SubPlugin plugin, java.lang.String name, java.lang.Boolean enabled, java.net.InetAddress address, java.lang.String directory, java.lang.String gitBash)` Creates an Internal Host

### Method Summary

All Methods Instance Methods Concrete Methods
`SubServer` `addSubServer(java.util.UUID player, java.lang.String name, boolean enabled, int port, java.lang.String motd, boolean log, java.lang.String directory, Executable executable, java.lang.String stopcmd, boolean start, boolean restart, boolean hidden, boolean restricted, boolean temporary)` Adds a SubServer
`boolean` `deleteSubServer(java.util.UUID player, java.lang.String name)` Delete a SubServer
`int` `edit(java.util.UUID player, YAMLSection edit)` Edits the Host
`boolean` `forceDeleteSubServer(java.util.UUID player, java.lang.String name)` Forces the Deletion of a SubServer
`boolean` `forceRemoveSubServer(java.util.UUID player, java.lang.String name)` Forces the Removal of a SubServer
`java.net.InetAddress` `getAddress()` Get the Address of this Host
`SubCreator` `getCreator()` Gets the SubCreator Instance for this Host
`java.lang.String` `getName()` Get the Name of this Host
`java.lang.String` `getPath()` Get the host Directory Path
`SubServer` `getSubServer(java.lang.String name)` Gets a SubServer
`java.util.Map<java.lang.String,? extends SubServer>` `getSubServers()` Gets the SubServers on this Host
`boolean` `isEnabled()` Is this Host Enabled?
`boolean` `removeSubServer(java.util.UUID player, java.lang.String name)` Removes a SubServer
`void` `setEnabled(boolean value)` Set if this Host is Enabled

### Methods inherited from class net.ME1312.SubServers.Bungee.Host.Host

`addExtra, addSubServer, command, command, deleteSubServer, edit, forceDeleteSubServer, forceRemoveSubServer, getDisplayName, getExtra, getExtra, hasExtra, removeExtra, removeSubServer, setDisplayName, start, start, stop, stop, terminate, terminate, toString`

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

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

### Constructor Detail

#### InternalHost

    public InternalHost(SubPlugin plugin,
                        java.lang.String name,
                        java.lang.Boolean enabled,
                        java.net.InetAddress address,
                        java.lang.String directory,
                        java.lang.String gitBash)

Creates an Internal Host

Parameters:
  `plugin` - Plugin
  `name` - Name
  `enabled` - Enabled Status
  `address` - Address
  `directory` - Directory
  `gitBash` - Git Bash Location

### Method Detail

#### isEnabled

    public boolean isEnabled()

Description copied from class: `Host`
Is this Host Enabled?

Specified by:
  `isEnabled` in class `Host`
Returns:
  Enabled Status

#### setEnabled

    public void setEnabled(boolean value)

Description copied from class: `Host`
Set if this Host is Enabled

Specified by:
  `setEnabled` in class `Host`
Parameters:
  `value` - Value

#### getAddress

    public java.net.InetAddress getAddress()

Description copied from class: `Host`
Get the Address of this Host

Specified by:
  `getAddress` in class `Host`
Returns:
  Host Address

#### getPath

    public java.lang.String getPath()

Description copied from class: `Host`
Get the host Directory Path

Specified by:
  `getPath` in class `Host`
Returns:
  Host Directory Path

#### getName

    public java.lang.String getName()

Description copied from class: `Host`
Get the Name of this Host

Specified by:
  `getName` in class `Host`
Returns:
  Host Name

#### edit

    public int edit(java.util.UUID player,
                    YAMLSection edit)

Description copied from class: `Host`
Edits the Host

Specified by:
  `edit` in class `Host`
Parameters:
  `player` - Player Editing
  `edit` - Edits
Returns:
  Success Status

#### getCreator

    public SubCreator getCreator()

Description copied from class: `Host`
Gets the SubCreator Instance for this Host

Specified by:
  `getCreator` in class `Host`
Returns:
  SubCreator

#### getSubServers

    public java.util.Map<java.lang.String,? extends SubServer> getSubServers()

Description copied from class: `Host`
Gets the SubServers on this Host

Specified by:
  `getSubServers` in class `Host`
Returns:
  SubServer Map

#### getSubServer

    public SubServer getSubServer(java.lang.String name)

Description copied from class: `Host`
Gets a SubServer

Specified by:
  `getSubServer` in class `Host`
Parameters:
  `name` - SubServer Name
Returns:
  a SubServer

#### addSubServer

    public SubServer addSubServer(java.util.UUID player,
                                  java.lang.String name,
                                  boolean enabled,
                                  int port,
                                  java.lang.String motd,
                                  boolean log,
                                  java.lang.String directory,
                                  Executable executable,
                                  java.lang.String stopcmd,
                                  boolean start,
                                  boolean restart,
                                  boolean hidden,
                                  boolean restricted,
                                  boolean temporary)
                           throws InvalidServerException

Description copied from class: `Host`
Adds a SubServer

Specified by:
  `addSubServer` in class `Host`
Parameters:
  `player` - Player who Added
  `name` - Name of Server
  `enabled` - Enabled Status
  `port` - Port Number
  `motd` - Motd of the Server
  `log` - Logging Status
  `directory` - Directory
  `executable` - Executable
  `stopcmd` - Command to Stop the Server
  `restart` - Auto Restart Status
  `hidden` - if the server should be hidden from players
  `restricted` - Players will need a permission to join if true
  `temporary` - Temporary Status
Returns:
  The SubServer
Throws:
  `InvalidServerException`

#### removeSubServer

    public boolean removeSubServer(java.util.UUID player,
                                   java.lang.String name)
                            throws java.lang.InterruptedException

Description copied from class: `Host`
Removes a SubServer

Specified by:
  `removeSubServer` in class `Host`
Parameters:
  `player` - Player Removing
  `name` - SubServer Name
Returns:
  Success Status
Throws:
  `java.lang.InterruptedException`

#### forceRemoveSubServer

    public boolean forceRemoveSubServer(java.util.UUID player,
                                        java.lang.String name)

Description copied from class: `Host`
Forces the Removal of a SubServer

Specified by:
  `forceRemoveSubServer` in class `Host`
Parameters:
  `player` - Player Removing
  `name` - SubServer Name

#### deleteSubServer

    public boolean deleteSubServer(java.util.UUID player,
                                   java.lang.String name)
                            throws java.lang.InterruptedException

Description copied from class: `Host`
Delete a SubServer

Specified by:
  `deleteSubServer` in class `Host`
Parameters:
  `player` - Player Deleting
  `name` - SubServer Name
Returns:
  Success Status
Throws:
  `java.lang.InterruptedException`

#### forceDeleteSubServer

    public boolean forceDeleteSubServer(java.util.UUID player,
                                        java.lang.String name)
                                 throws java.lang.InterruptedException

Description copied from class: `Host`
Forces the Deletion of a SubServer

Specified by:
  `forceDeleteSubServer` in class `Host`
Parameters:
  `player` - Player Deleting
  `name` - SubServer Name
Returns:
  Success Status
Throws:
  `java.lang.InterruptedException`