public abstract class HubServiceMode
extends java.lang.Object
Hub
.Modifier and Type | Class and Description |
---|---|
private static class |
HubServiceMode.BasicWindowConfig
Class to configure a window for use as a hub control.
|
private static class |
HubServiceMode.BrokenHubMode
HubServiceMode implementation for modes which cannot be used because they
rely on classes unavailable at runtime.
|
private static class |
HubServiceMode.ProfileToggler
Manages a toggle button for starting/stopping profiles.
|
(package private) static class |
HubServiceMode.ServiceGui
Aggregates a HubService and an associated monitor/control window.
|
private static class |
HubServiceMode.SysTrayWindowConfig
Takes care of hub display window configuration with system tray
functionality.
|
private static interface |
HubServiceMode.Tidier
Utility abstract class to define an object which can be tidied up
on hub shutdown.
|
Modifier and Type | Field and Description |
---|---|
static HubServiceMode |
CLIENT_GUI
Hub mode with a GUI representation of connected clients.
|
static HubServiceMode |
FACADE
Hub Mode which piggy-backs on an existing hub using
the default client profile.
|
private boolean |
isDaemon_ |
private static HubServiceMode[] |
KNOWN_MODES
Array of available hub modes.
|
private static java.util.logging.Logger |
logger_ |
static HubServiceMode |
MESSAGE_GUI
Hub mode with a GUI representation of clients and messages.
|
private java.lang.String |
name_ |
static HubServiceMode |
NO_GUI
Hub mode with no GUI representation of hub operations.
|
Constructor and Description |
---|
HubServiceMode(java.lang.String name,
boolean isDaemon)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
private static HubServiceMode.Tidier |
configureHubWindow(javax.swing.JFrame frame,
HubProfile[] profiles,
Hub[] runners,
GuiHubService hubService)
Used to perform common configuration of hub display windows
for GUI-type hub modes.
|
private static HubServiceMode |
createBasicHubMode(java.lang.String name)
Constructs a mode for BasicHubService.
|
private static HubServiceMode |
createFacadeHubMode(java.lang.String name)
Constructs a mode for FacadeHubService.
|
private static HubServiceMode |
createGuiHubMode(java.lang.String name)
Constructs a mode for GuiHubService.
|
(package private) abstract HubServiceMode.ServiceGui |
createHubService(java.util.Random random,
HubProfile[] profiles,
Hub[] runners)
Creates and returns a new hub service object.
|
private static HubServiceMode |
createMessageTrackerHubMode(java.lang.String name)
Constructs a mode for MessageTrackerHubService.
|
static HubServiceMode[] |
getAvailableModes()
Returns an array of the hub modes which can actually be used.
|
static HubServiceMode |
getModeFromName(java.lang.String name)
Returns one of the known modes which has a name as given.
|
(package private) java.lang.String |
getName()
Returns this mode's name.
|
(package private) boolean |
isDaemon()
Indicates whether the hub service will start only daemon threads.
|
java.lang.String |
toString() |
private final java.lang.String name_
private final boolean isDaemon_
private static final java.util.logging.Logger logger_
public static final HubServiceMode NO_GUI
public static final HubServiceMode CLIENT_GUI
public static HubServiceMode MESSAGE_GUI
public static HubServiceMode FACADE
private static final HubServiceMode[] KNOWN_MODES
HubServiceMode(java.lang.String name, boolean isDaemon)
name
- mode nameisDaemon
- true if the hub will start only daemon threadsabstract HubServiceMode.ServiceGui createHubService(java.util.Random random, HubProfile[] profiles, Hub[] runners)
random
- random number generatorprofiles
- hub profilesrunners
- 1-element array of Hubs - this should be
populated with the runner once it has been constructedboolean isDaemon()
java.lang.String getName()
public java.lang.String toString()
toString
in class java.lang.Object
public static HubServiceMode getModeFromName(java.lang.String name)
name
- mode name (case-insensitive)public static HubServiceMode[] getAvailableModes()
private static HubServiceMode.Tidier configureHubWindow(javax.swing.JFrame frame, HubProfile[] profiles, Hub[] runners, GuiHubService hubService)
frame
- hub windowprofiles
- profiles to run for hubrunners
- 1-element array which will contain an associated
hub runner object if one existshubService
- object providing hub servicesprivate static HubServiceMode createBasicHubMode(java.lang.String name)
name
- mode nameprivate static HubServiceMode createGuiHubMode(java.lang.String name)
private static HubServiceMode createMessageTrackerHubMode(java.lang.String name)
private static HubServiceMode createFacadeHubMode(java.lang.String name)