- Type Parameters:
E
- the type of NamedBean supported by this manager
- All Superinterfaces:
Manager<E>
,PropertyChangeProvider
,SilenceablePropertyChangeProvider
,VetoableChangeProvider
- All Known Subinterfaces:
IdTagManager
,LightManager
,MemoryManager
,RailComManager
,ReporterManager
,RouteManager
,SensorManager
,SignalMastManager
,TurnoutManager
- All Known Implementing Classes:
AbstractLightManager
,AbstractMemoryManager
,AbstractProvidingProxyManager
,AbstractReporterManager
,AbstractSensorManager
,AbstractTurnoutManager
,AcelaLightManager
,AcelaSensorManager
,AcelaTurnoutManager
,BlockManager
,CbusLightManager
,CbusReporterManager
,CbusSensorManager
,CbusTurnoutManager
,ConcentratorReporterManager
,ConcentratorSensorManager
,Dcc4PcReporterManager
,Dcc4PcSensorManager
,DCCppLightManager
,DCCppSensorManager
,DCCppTurnoutManager
,DefaultIdTagManager
,DefaultMemoryManager
,DefaultRailComManager
,DefaultRouteManager
,DefaultSignalMastManager
,EasyDccTurnoutManager
,EcosReporterManager
,EcosSensorManager
,EcosTurnoutManager
,EliteXNetTurnoutManager
,InternalLightManager
,InternalReporterManager
,InternalSensorManager
,InternalTurnoutManager
,IpocsLightManager
,IpocsSensorManager
,IpocsTurnoutManager
,JMRIClientLightManager
,JMRIClientReporterManager
,JMRIClientSensorManager
,JMRIClientTurnoutManager
,LnLightManager
,LnReporterManager
,LnSensorManager
,LnSensorManager
,LnTurnoutManager
,MarklinSensorManager
,MarklinTurnoutManager
,MqttLightManager
,MqttSensorManager
,MqttTurnoutManager
,MrcTurnoutManager
,Mx1TurnoutManager
,NceLightManager
,NceSensorManager
,NceTurnoutManager
,OBlockManager
,OlcbLightManager
,OlcbSensorManager
,OlcbTurnoutManager
,ProxyIdTagManager
,ProxyLightManager
,ProxyReporterManager
,ProxySensorManager
,ProxyTurnoutManager
,RaspberryPiSensorManager
,RaspberryPiTurnoutManager
,RfidReporterManager
,RfidSensorManager
,RpsReporterManager
,RpsSensorManager
,SerialLightManager
,SerialLightManager
,SerialLightManager
,SerialLightManager
,SerialLightManager
,SerialLightManager
,SerialSensorManager
,SerialSensorManager
,SerialSensorManager
,SerialSensorManager
,SerialSensorManager
,SerialSensorManager
,SerialTurnoutManager
,SerialTurnoutManager
,SerialTurnoutManager
,SerialTurnoutManager
,SerialTurnoutManager
,SerialTurnoutManager
,SerialTurnoutManager
,SpecificLightManager
,SpecificLightManager
,SpecificLightManager
,SpecificLightManager
,SpecificSensorManager
,SpecificSensorManager
,SpecificSensorManager
,SpecificSensorManager
,SprogTurnoutManager
,SRCPSensorManager
,SRCPTurnoutManager
,StandaloneReporterManager
,StandaloneSensorManager
,TamsSensorManager
,TamsTurnoutManager
,TranspondingTagManager
,UsbLightManager
,XBeeLightManager
,XBeeSensorManager
,XBeeTurnoutManager
,XNetLightManager
,XNetSensorManager
,XNetTurnoutManager
,XpaTurnoutManager
,Z21ReporterManager
,Z21SensorManager
,Z21XNetTurnoutManager
,ZTC611XNetTurnoutManager
public interface ProvidingManager<E extends NamedBean> extends Manager<E>
-
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, deprecatedManagerLogger, ENTRYEXIT, IDTAGS, LAYOUTBLOCKS, LIGHTS, LOGIXNG_ANALOG_ACTIONS, LOGIXNG_ANALOG_EXPRESSIONS, LOGIXNG_CONDITIONALNGS, LOGIXNG_DIGITAL_ACTIONS, LOGIXNG_DIGITAL_BOOLEAN_ACTIONS, LOGIXNG_DIGITAL_EXPRESSIONS, 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
Methods inherited from interface jmri.Manager
addDataListener, deleteBean, deregister, dispose, getBeanBySystemName, getBeanByUserName, getBeanTypeHandled, getBeanTypeHandled, getBySystemName, getByUserName, getEntryToolTip, getKnownBeanProperties, getMemo, getNamedBean, getNamedBeanClass, getNamedBeanList, getNamedBeanSet, getObjectCount, getSubSystemNamePrefix, getSystemNameList, getSystemNamePrefix, getSystemPrefix, getXMLOrder, isValidSystemNameFormat, makeSystemName, makeSystemName, makeSystemName, register, removeDataListener, setDataListenerMute, setPropertyChangesMuted, 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 Details
-
provide
Get an existing instance via user name, then system name; if no matching instance is found, create a new NameBean from the system name.If the name is a valid system name, it will be used for the new NamedBean. Otherwise, the
Manager.makeSystemName(java.lang.String)
method will attempt to turn it into a valid system name which the manager will attempt to use. If that fails, an exception is thrown.This is similar to the specific methods found in certain type-specific managers:
TurnoutManager.provideTurnout(java.lang.String)
,SensorManager.provideSensor(java.lang.String)
, et al. Those might be more mnemonic; this one is more generic. Neither is preferred nor deprecated; use your choice.- Parameters:
name
- User name, system name, or address which can be promoted to system name- Returns:
- Never null
- Throws:
IllegalArgumentException
- if NamedBean doesn't already exist and the manager cannot create it due to an illegal name or name that can't be parsed.
-