Package jmri
Interface LogixManager
-
- All Superinterfaces:
Manager<Logix>
,PropertyChangeProvider
,SilenceablePropertyChangeProvider
,VetoableChangeProvider
- All Known Implementing Classes:
DefaultLogixManager
public interface LogixManager extends Manager<Logix>
Interface for obtaining LogixsThis doesn't have a "new" method, since Logixs are separately implemented, instead of being system-specific.
This file is part of JMRI.JMRI is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation. See the "COPYING" file for a copy of this license.
JMRI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jmri.Manager
Manager.ManagerDataEvent<E extends NamedBean>, Manager.ManagerDataListener<E extends NamedBean>, Manager.NameValidity
-
-
Field Summary
-
Fields inherited from interface jmri.Manager
ANALOGIOS, AUDIO, BLOCKBOSS, BLOCKS, CONDITIONALS, CTCDATA, ENTRYEXIT, IDTAGS, LAYOUTBLOCKS, LIGHTS, LOGIXNG_ANALOG_ACTIONS, LOGIXNG_ANALOG_EXPRESSIONS, LOGIXNG_CONDITIONALNGS, LOGIXNG_DIGITAL_ACTIONS, LOGIXNG_DIGITAL_BOOLEAN_ACTIONS, LOGIXNG_DIGITAL_EXPRESSIONS, LOGIXNG_GLOBAL_VARIABLES, LOGIXNG_MODULES, LOGIXNG_STRING_ACTIONS, LOGIXNG_STRING_EXPRESSIONS, LOGIXNG_TABLES, LOGIXNGS, LOGIXS, MEMORIES, METERFRAMES, METERS, OBLOCKS, PANELFILES, REPORTERS, ROUTES, SECTIONS, SENSORGROUPS, SENSORS, SIGNALGROUPS, SIGNALHEADS, SIGNALMASTLOGICS, SIGNALMASTS, STRINGIOS, TIMEBASE, TRANSITS, TURNOUTS, WARRANTS
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
activateAllLogixs()
Activate all Logixs that are not currently active This method is called after a configuration file is loaded.Logix
createNewLogix(java.lang.String userName)
For use with User GUI, to allow the auto generation of systemNames, where the user can optionally supply a username.Logix
createNewLogix(java.lang.String systemName, java.lang.String userName)
Create a new Logix if the Logix does not exist.void
deleteLogix(Logix x)
Delete Logix by removing it from the manager.Logix
getBySystemName(java.lang.String s)
Locate an existing instance based on a system name.Logix
getByUserName(java.lang.String s)
Locate an existing instance based on a user name.Logix
getLogix(java.lang.String name)
Locate via user name, then system name if needed.void
setLoadDisabled(boolean s)
Support for loading Logixs in a disabled state to debug loops-
Methods inherited from interface jmri.Manager
addDataListener, deleteBean, deregister, dispose, getBeanTypeHandled, getBeanTypeHandled, getEntryToolTip, getKnownBeanProperties, getMemo, getNamedBean, getNamedBeanClass, getNamedBeanSet, getObjectCount, getSubSystemNamePrefix, getSystemNamePrefix, getSystemPrefix, getXMLOrder, isValidSystemNameFormat, makeSystemName, makeSystemName, makeSystemName, register, removeDataListener, setDataListenerMute, typeLetter, validateBadCharsInSystemNameFormat, validateIntegerSystemNameFormat, validateNmraAccessorySystemNameFormat, validateSystemNameFormat, validateSystemNameFormat, validateSystemNameFormatOnlyNumeric, validateSystemNamePrefix, validateTrimmedMin1NumberSystemNameFormat, validateTrimmedSystemNameFormat, validateUppercaseTrimmedSystemNameFormat, validSystemNameFormat
-
Methods inherited from interface jmri.beans.PropertyChangeProvider
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
Methods inherited from interface jmri.beans.SilenceablePropertyChangeProvider
setPropertyChangesSilenced
-
Methods inherited from interface jmri.beans.VetoableChangeProvider
addVetoableChangeListener, addVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, removeVetoableChangeListener, removeVetoableChangeListener
-
-
-
-
Method Detail
-
createNewLogix
Logix createNewLogix(java.lang.String systemName, java.lang.String userName)
Create a new Logix if the Logix does not exist.- Parameters:
systemName
- the system nameuserName
- the user name- Returns:
- a new Logix or null if unable to create: An error, or the Logix already exists
-
createNewLogix
Logix createNewLogix(java.lang.String userName)
For use with User GUI, to allow the auto generation of systemNames, where the user can optionally supply a username.- Parameters:
userName
- the user name- Returns:
- a new Logix or null if unable to create
-
getLogix
Logix getLogix(java.lang.String name)
Locate via user name, then system name if needed. Does not create a new one if nothing found- Parameters:
name
- User name or system name to match- Returns:
- null if no match found
-
getByUserName
Logix getByUserName(java.lang.String s)
Description copied from interface:Manager
Locate an existing instance based on a user name.- Specified by:
getByUserName
in interfaceManager<Logix>
- Parameters:
s
- System Name of the required NamedBean- Returns:
- requested NamedBean object or null if none exists
-
getBySystemName
Logix getBySystemName(java.lang.String s)
Description copied from interface:Manager
Locate an existing instance based on a system name.- Specified by:
getBySystemName
in interfaceManager<Logix>
- Parameters:
s
- System Name of the required NamedBean- Returns:
- requested NamedBean object or null if none exists
-
activateAllLogixs
void activateAllLogixs()
Activate all Logixs that are not currently active This method is called after a configuration file is loaded.
-
deleteLogix
void deleteLogix(Logix x)
Delete Logix by removing it from the manager. The Logix must first be deactivated so it stops processing.- Parameters:
x
- the Logix to delete
-
setLoadDisabled
void setLoadDisabled(boolean s)
Support for loading Logixs in a disabled state to debug loops- Parameters:
s
- true if Logix should be loadable while disabled
-
-