|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.Component java.awt.Container java.awt.Window java.awt.Frame javax.swing.JFrame PIRL.Conductor.Maestro.Kapellmeister
public class Kapellmeister
A Kapellmeister is a management tool for Theaters where Conductors are located.
A Kapellmeister provides a GUI for the management of Theater locations. The Kapelmeister maintains a list of all Theaters it knows about along with the connected and disconnected status for the Stage_Manager at the Theater location. A summary status report from any connected Stage_Manager may be obtained for a selected Theater location.
The Stage_Manager at each Theater location is used to communicate with a set of Conductors assigned to the Theater. A Kapellmeister provides a table of all Conductors, and the Theater of each, along with the current processing status of each Conductor. A Profile table in the form of a matrix displays the counts of Conductors in each of the possible processing states, along with the total number of Conductors, for each unique combination of Theater and named Conductor, The name of a Conductor is typically the same as the name of the pipeline it is managing.
A Manager window may be opened onto any Conductor. The Manager offers detailed monitoring and management of the Conductor operation. A Kapellmeister provides basic start, stop, error reset, and quit controls that may be applied to selections of Conductors. The Kapelmeister can be used to define new Conductor instances to be run at any Theater location.
A file that defines the current Conductors and Theaters Profile may be generated by a Kapellmeister. A Profile file may be read by a Kapellmeister to produce the defined Conductor instances on all the specified Theaters. Defined Conductor instances that are not already present will be started; those that are already present will be quit, or stopped if they are currently running (they may optionally be aborted). Profile files, which are in Parameter Value Language text format, may be written by users as desired. Profile files that only specify Theater locations may be used to profide a Kapellmeister with a list of Theater locations to connect to and simply discover the Conductors that are operating there. A Profile file or a set of Theater locations may be specified on the Kapellmeister command line or interactively specified using the GUI.
All Conductor state information is provided directory from the operating Conductors via the Stage_Mangers; no Database tables or other intermediary information repositories are used. Conductor state information arrives and is posted to the Kapellmeister and Manager displays in real-time; no data polling cycles are used.
Connection to a Stage_Manager at a Theater location typically must be authenticated with a secure, public-private, encoded key exchange. The keys are based on a password - a character string of any length - that is known to the Stage_Manager and made known to a Kapellmeister.
A Configuration file is used to provide parameter values, including a default Stage_Manager password, that initialize various Stage_Manager communication variables and initial GUI control states.
Theater
,
Stage_Manager
,
Profile
,
Serialized FormNested Class Summary |
---|
Nested classes/interfaces inherited from class javax.swing.JFrame |
---|
JFrame.AccessibleJFrame |
Nested classes/interfaces inherited from class java.awt.Frame |
---|
Frame.AccessibleAWTFrame |
Nested classes/interfaces inherited from class java.awt.Window |
---|
Window.AccessibleAWTWindow |
Nested classes/interfaces inherited from class java.awt.Container |
---|
Container.AccessibleAWTContainer |
Nested classes/interfaces inherited from class java.awt.Component |
---|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy |
Fields inherited from class javax.swing.JFrame |
---|
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled |
Fields inherited from class java.awt.Frame |
---|
CROSSHAIR_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR |
Fields inherited from class java.awt.Component |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
Fields inherited from interface javax.swing.WindowConstants |
---|
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE |
Fields inherited from interface java.awt.image.ImageObserver |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
---|---|
Kapellmeister()
Constructs a Kapellmeister using the default configuration. |
|
Kapellmeister(Configuration configuration)
|
|
Kapellmeister(Vector<String> sources)
|
|
Kapellmeister(Vector<String> sources,
Configuration configuration)
|
Method Summary | |
---|---|
boolean |
Config_Flag(String name,
boolean default_value)
Get the boolean value of a configuration parameter. |
String |
Config_Pathname(String name)
Get the configuration pathname for a parameter name. |
String |
Config_Value(String name)
Get the String value of a configuration parameter. |
protected boolean |
Config_Value(String name,
Object value)
Set a parameter in the configuration. |
void |
Configure(Configuration configuration)
Configure the Kapellmeister. |
Kapellmeister |
CWD(File file)
Sets the current working directory for finding Profile files. |
Kapellmeister |
CWD(String pathname)
Sets the current working directory for finding Profile files. |
int |
Default_Theater_Port()
Get the default Stage_Manager socket communications port number. |
Kapellmeister |
Default_Theater_Port(int port)
Set the default Stage_Manager socket communications port number. |
Message |
Listener_Identity()
Get the idenity of this Messenger client. |
static void |
main(String[] args)
|
void |
Message_Delivered(Message_Delivered_Event event)
Take delivery of a Message and queue it for disposition. |
int |
Receive_Timeout()
Get the maximum amount of time, in seconds, that will be used when waiting for a Theater protocol Message to be received. |
Kapellmeister |
Receive_Timeout(int timeout)
Set the maximum amount of time, in seconds, that will be used when waiting for a Theater protocol Message to be received. |
static void |
Usage()
|
Methods inherited from class java.awt.Frame |
---|
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.awt.MenuContainer |
---|
getFont, postEvent |
Field Detail |
---|
public static final String ID
public static final String KAPELLMEISTER_NAME
KAPELLMEISTER_IDENTITY
and used
to find Configuration parameters
.
public static final Message KAPELLMEISTER_IDENTITY
The identity contains the KAPELLMEISTER_NAME
Identity
, a
Message.CLASS_ID_PARAMETER_NAME
parameter with the
ID
value, and a Configuration.HOST
parameter
with the Host.FULL_HOSTNAME
value.
public static final String DEFAULT_CONFIGURATION_FILENAME
public static final String THEATERS_PARAMETER_NAME
public static final String THEATER_LOCATION_PARAMETER_NAME
public static final String ADDRESS_PARAMETER_NAME
public static final String THEATER_KEY_PARAMETER_NAME
public static final String CONDUCTORS_PARAMETER_NAME
public static final String PIPELINE_PARAMETER_NAME
public static final String CATALOG_PARAMETER_NAME
public static final String CONFIGURATION_SOURCE_PARAMETER_NAME
public static final String DATABASE_SERVER_PARAMETER_NAME
public static final String CONFIRM_CONDUCTOR_ABORT_PARAMETER_NAME
public static final String PROFILE_WAIT_TO_START_PARAMETER_NAME
public static final String PORT_PARAMETER_NAME
public static final String RECEIVE_TIMEOUT_PARAMETER_NAME
public static final String PASSWORD_PARAMETER_NAME
public static final String TOOLTIPS_PARAMETER_NAME
public static String Kapellmeister_Icon_Source
public static final String MASKED_PASSWORD
public static final String CONDUCTOR_NAME
public static final SimpleAttributeSet MESSAGE_DELIVERED_STYLE
public static final SimpleAttributeSet MESSAGE_SENT_STYLE
public static final int EXIT_SUCCESS
public static final int EXIT_COMMAND_LINE_SYNTAX
public static final int EXIT_CONFIG_FILE_PROBLEM
public static final int EXIT_UNRECOVERABLE_ERROR
public static final int EXIT_UNEXPECTED_EXCEPTION
Constructor Detail |
---|
public Kapellmeister() throws Configuration_Exception
The DEFAULT_CONFIGURATION_FILENAME
will be
Configuration_Exception
public Kapellmeister(Vector<String> sources) throws Configuration_Exception
Configuration_Exception
public Kapellmeister(Configuration configuration) throws Configuration_Exception
Configuration_Exception
public Kapellmeister(Vector<String> sources, Configuration configuration) throws Configuration_Exception
Configuration_Exception
Method Detail |
---|
public int Default_Theater_Port()
Default_Theater_Port(int)
public Kapellmeister Default_Theater_Port(int port)
port
- The default port
for Stage_Manager communications.
public int Receive_Timeout()
Receive_Timeout(int)
public Kapellmeister Receive_Timeout(int timeout)
timeout
- The default timeout value
which is also applied to all Theaters in
the Theaters list.
public void Configure(Configuration configuration) throws Configuration_Exception
Parameter names are case insensitive. All parameters are optional.
Parameters will first be sought in the KAPELLMEISTER_NAME
group.
PORT_PARAMETER_NAME
default Stage_Manager
communcations socket port number
.
RECEIVE_TIMEOUT_PARAMETER_NAME
maximum amount of time, in seconds,
that will be used when waiting for a Theater protocol Message to be
received
.
Dispatcher.PASSWORD_PARAMETER_NAME
Dispatcher.UNAUTHENTICATED_CONNECTIONS_ALLOWED
is true
unauthenticated connections with no password will be accepted.
TOOLTIPS_PARAMETER_NAME
configuration
- A Configuration. If null, an attempt will be
made to obtain a Configuration using the DEFAULT_CONFIGURATION_FILENAME
source.
Configuration_Exception
public String Config_Value(String name)
name
- The name of the parameter from which to obtain the
value. If the name is not an absolute pathname it will be qualified
before use.
configuration
.public boolean Config_Flag(String name, boolean default_value)
name
- The name of the parameter from which to obtain the
value. If the name is not an absolute pathname it will be qualified
before use.default_value
- The default value to be returned if the
named parameter is not present in the Configuration.
enabled
state
of the parameter, or the default value if the parameter is not
present in the Configuration.protected boolean Config_Value(String name, Object value) throws Configuration_Exception
The parameter is set in the parameter
group
appropriate for the application.
name
- The name of the Assignment parameter to have its
value set. If the name is not an absolute pathname it will be qualified
before use.value
- An Object to use for the parameter's value.
Configuration_Exception
- If there was a problem setting
the parameter.public String Config_Pathname(String name)
If the name is not an absolute pathname
the KAPELLMEISTER_NAME
group name is
prepended to the name to form an absolute pathname.
name
- A parameter name String.
public Kapellmeister CWD(String pathname) throws FileNotFoundException
pathname
- A host filesystem pathname. If null, the
"user.dir" System property will be used.
FileNotFoundException
- If neither the file nor the file's
parent refers to an existing directory.CWD(File)
public Kapellmeister CWD(File file) throws FileNotFoundException
file
- A File to which to set the CWD. If null, the
"user.dir" System property will be used. If the file does not
refer to an existing directory, the file's parent will be used.
FileNotFoundException
- If neither the file nor the file's
parent refers to an existing directory.public Message Listener_Identity()
Listener_Identity
in interface Message_Delivered_Listener
KAPELLMEISTER_IDENTITY
Message.public void Message_Delivered(Message_Delivered_Event event)
N.B.: This method is public as a side-effect of implementing the Message_Delivered_Listener interface.
The Message_Delivered_Event is added to a queue and the message disposition method is scheduled for execution on the Swing event thread where the Message_Delivered_Event will be retrieved from the queue and examined for appropriate disposition.
Message_Delivered
in interface Message_Delivered_Listener
event
- The Message_Delivered_Event that arrived from
a Messenger.Message_Delivered_Event
public static void main(String[] args)
public static void Usage()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |