# ExternalSubCreator (SubServers.Bungee)

net.ME1312.SubServers.Bungee.Host.External

## Class ExternalSubCreator

- java.lang.Object
- - net.ME1312.SubServers.Bungee.Host.SubCreator
  - - net.ME1312.SubServers.Bungee.Host.External.ExternalSubCreator

    public class ExternalSubCreator
    extends SubCreator

External SubCreator Class

### Nested Class Summary

### Nested classes/interfaces inherited from class net.ME1312.SubServers.Bungee.Host.SubCreator

`SubCreator.ServerTemplate, SubCreator.ServerType`

### Constructor Summary

Constructors
Constructor and Description
`ExternalSubCreator(ExternalHost host, java.lang.String gitBash)` Creates an External SubCreator

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `create(java.util.UUID player, java.lang.String name, SubCreator.ServerTemplate template, Version version, int port)` Create a SubServer
`java.lang.String` `getBashDirectory()` Gets the Git Bash install directory
`Host` `getHost()` Gets the host this creator belongs to
`java.util.List<SubLogger>` `getLogger()` Gets all loggers for All SubCreator Instances
`SubLogger` `getLogger(java.lang.String name)` Gets the Logger for a SubCreator Instance
`java.util.List<java.lang.String>` `getReservedNames()` Get a list of currently reserved Server names
`SubCreator.ServerTemplate` `getTemplate(java.lang.String name)` Gets a SubCreator Template by name
`java.util.Map<java.lang.String,SubCreator.ServerTemplate>` `getTemplates()` Gets the Templates that can be used in this SubCreator instance
`void` `reload()` Reload SubCreator
`void` `terminate()` Terminate All SubCreator Instances on this host
`void` `terminate(java.lang.String name)` Terminate a SubCreator Instance
`void` `waitFor()` Wait for All SubCreator Instances to Finish
`void` `waitFor(java.lang.String name)` Wait for SubCreator to Finish

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

`create, getAllReservedNames, isReserved`

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

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

### Constructor Detail

#### ExternalSubCreator

    public ExternalSubCreator(ExternalHost host,
                              java.lang.String gitBash)

Creates an External SubCreator

Parameters:
  `host` - Host
  `gitBash` - Git Bash

### Method Detail

#### reload

    public void reload()

Description copied from class: `SubCreator`
Reload SubCreator

Specified by:
  `reload` in class `SubCreator`

#### create

    public boolean create(java.util.UUID player,
                          java.lang.String name,
                          SubCreator.ServerTemplate template,
                          Version version,
                          int port)

Description copied from class: `SubCreator`
Create a SubServer

Specified by:
  `create` in class `SubCreator`
Parameters:
  `player` - Player Creating
  `name` - Server Name
  `template` - Server Template
  `version` - Server Version
  `port` - Server Port Number
Returns:
  Success Status

#### terminate

    public void terminate()

Description copied from class: `SubCreator`
Terminate All SubCreator Instances on this host

Specified by:
  `terminate` in class `SubCreator`

#### terminate

    public void terminate(java.lang.String name)

Description copied from class: `SubCreator`
Terminate a SubCreator Instance

Specified by:
  `terminate` in class `SubCreator`
Parameters:
  `name` - Name of current creating server

#### waitFor

    public void waitFor()
                 throws java.lang.InterruptedException

Description copied from class: `SubCreator`
Wait for All SubCreator Instances to Finish

Specified by:
  `waitFor` in class `SubCreator`
Throws:
  `java.lang.InterruptedException`

#### waitFor

    public void waitFor(java.lang.String name)
                 throws java.lang.InterruptedException

Description copied from class: `SubCreator`
Wait for SubCreator to Finish

Specified by:
  `waitFor` in class `SubCreator`
Parameters:
  `name` - Name of current creating server
Throws:
  `java.lang.InterruptedException`

#### getHost

    public Host getHost()

Description copied from class: `SubCreator`
Gets the host this creator belongs to

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

#### getBashDirectory

    public java.lang.String getBashDirectory()

Description copied from class: `SubCreator`
Gets the Git Bash install directory

Specified by:
  `getBashDirectory` in class `SubCreator`
Returns:
  Git Bash Directory

#### getLogger

    public java.util.List<SubLogger> getLogger()

Description copied from class: `SubCreator`
Gets all loggers for All SubCreator Instances

Specified by:
  `getLogger` in class `SubCreator`
Returns:
  SubCreator Loggers

#### getLogger

    public SubLogger getLogger(java.lang.String name)

Description copied from class: `SubCreator`
Gets the Logger for a SubCreator Instance

Specified by:
  `getLogger` in class `SubCreator`
Parameters:
  `name` - Thread ID
Returns:
  SubCreator Logger

#### getReservedNames

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

Description copied from class: `SubCreator`
Get a list of currently reserved Server names

Specified by:
  `getReservedNames` in class `SubCreator`
Returns:
  Reserved Names

#### getTemplates

    public java.util.Map<java.lang.String,SubCreator.ServerTemplate> getTemplates()

Description copied from class: `SubCreator`
Gets the Templates that can be used in this SubCreator instance

Specified by:
  `getTemplates` in class `SubCreator`
Returns:
  Template Map

#### getTemplate

    public SubCreator.ServerTemplate getTemplate(java.lang.String name)

Description copied from class: `SubCreator`
Gets a SubCreator Template by name

Specified by:
  `getTemplate` in class `SubCreator`
Parameters:
  `name` - Template Name
Returns:
  Template