Interface BeanInterface
-
- All Known Subinterfaces:
RosterObject
- All Known Implementing Classes:
AbstractAudioFrame
,AbstractMonFrame
,AbstractPacketGenFrame
,AbstractPreferencesManager
,AbstractRouteAddEditFrame
,AbstractServerPreferences
,AcelaMonFrame
,AcelaPacketGenFrame
,AcelaSystemConnectionMemo
,ActivateTrainFrame
,AddEditSingleLightControlFrame
,AddEntryExitPairFrame
,AddNodeFrame
,AddSignalMastJFrame
,AlignTableFrame
,AlternateTrackFrame
,AnalogClockFrame
,AnymaDMX_SystemConnectionMemo
,AppsLaunchFrame
,ArbitraryBean
,ArbitraryPropertySupport
,AssociateFrame
,AudioBufferFrame
,AudioListenerFrame
,AudioSourceFrame
,AudioTableFrame
,AutomationCopyFrame
,AutomationsTableFrame
,AutomationStartupFrame
,AutomationTableFrame
,AutomatTableFrame
,AutoTrainsFrame
,Bean
,BeanSetting
,BeanTableFrame
,BiDiBSystemConnectionMemo
,BlockBossFrame
,BlockPathEditFrame
,BugReport
,BuildReportOptionFrame
,CanSystemConnectionMemo
,CaptiveSystemConnectionMemo
,CarAttributeEditFrame
,CarEditFrame
,CarLoadEditFrame
,CarSetFrame
,CarsSetFrame
,CarsTableFrame
,CbusEventHighlightFrame
,CbusFilterFrame
,CbusNodeEditEventFrame
,CbusNodeRestoreFcuFrame
,CbusPreferences
,CdBSystemConnectionMemo
,ChangeDepartureTimesFrame
,ChangeTrackFrame
,ChangeTracksFrame
,CircuitBuilder.CBFrame
,ClipboardEditor
,CMRInetManagerFrame
,CMRInetMetricsFrame
,CMRISystemConnectionMemo
,ConditionalCopyFrame
,ConditionalEditFrame
,ConditionalFrame
,ConditionalNGDebugger
,ConditionalNGEditor
,ConfigBaseStationFrame
,ConnectionConfigManager
,ConsistPreferencesManager
,ConsistToolFrame
,ConstrainedArbitraryBean
,ConstrainedBean
,ControllerFilterFrame
,ControlPanelEditor
,CoordinateEdit
,DataSource
,Dcc4PcSystemConnectionMemo
,DCCppMonFrame
,DCCppSystemConnectionMemo
,DebuggerFrame
,DecoderPro3Window
,DefaultLogixNGPreferences
,DefaultShutDownManager
,DefaultSystemConnectionMemo
,DiagnosticFrame
,DirectSystemConnectionMemo
,DispatcherActiveTrainManager
,DispatcherFrame
,DisplayFrame
,DivisionEditFrame
,DmiFrame
,DrawCircle
,DrawEllipse
,DrawFrame
,DrawPolygon
,DrawRectangle
,DrawRoundRect
,DualDecoderSelectFrame
,EasyDccMonFrame
,EasyDccPacketGenFrame
,EasyDccSystemConnectionMemo
,EcosLocoAddress
,EcosSystemConnectionMemo
,EditCircuitFrame
,EditCircuitPaths
,EditFrame
,EditManifestHeaderTextFrame
,EditManifestTextFrame
,EditNodeFrame
,Editor
,Editor.JFrameItem
,EditorFrame
,EditorManager
,EditPortalDirection
,EditPortalFrame
,EditSignalFrame
,EditSwitchListTextFrame
,EliteXNetSystemConnectionMemo
,EngineAttributeEditFrame
,EngineEditFrame
,EngineSetFrame
,EnginesSetFrame
,EnginesTableFrame
,EnhancementRequest
,FileLocationsPreferences
,FileUtilSupport
,FollowerFrame
,GrapevineSystemConnectionMemo
,GuiLafPreferencesManager
,HelpUtilPreferences
,HexFileFrame
,HexFileSystemConnectionMemo
,IconDialog
,IEEE802154SystemConnectionMemo
,IgnoreUsedTrackFrame
,ImageIndexEditor
,ImportLogixFrame
,IndicatorTOIconDialog
,InlineLogixNGsFrame
,InterchangeEditFrame
,InternalSystemConnectionMemo
,IpocsSystemConnectionMemo
,IssueReport
,ItemDialog
,ItemPalette
,JMRIClientSystemConnectionMemo
,JmriJFrame
,JmriJFrameWithPermissions
,JmriJTablePersistenceManager
,JmriServerFrame
,JmriSRCPServerFrame
,JmriSRCPServerPreferences
,JmriUserPreferencesManager
,JsonConsistManager
,JsonServerPreferences
,LayoutEditor
,LayoutTrackExpectedState
,LcdClockFrame
,LearnThrottleFrame
,LI101Frame
,ListedTableFrame
,ListFrame
,ListFrame
,LIUSBConfigFrame
,LnTcpPreferences
,LnTcpServerFrame
,LoaderFrame
,LocationCopyFrame
,LocationEditFrame
,LocationsByCarLoadFrame
,LocationsByCarTypeFrame
,LocationsTableFrame
,LocationTrackBlockingOrderFrame
,LocoNetSystemConnectionMemo
,LogFrame
,LogixNGBrowseWindow
,LogixNGInitializationTable
,LV102Frame
,LZ100Frame
,LZV100Frame
,ManageLocationsFrame
,ManagerDefaultSelector
,MapleSystemConnectionMemo
,MarklinSystemConnectionMemo
,MastBuilderPane
,MdiMainFrame
,MemoryIconCoordinateEdit
,MeterFrame
,ModuleEditor
,MonitorFrame
,MqttSystemConnectionMemo
,MrcSystemConnectionMemo
,MultiPaneWindow
,MultiSensorIconDialog
,MultiSensorIconFrame
,Mx1SystemConnectionMemo
,NamedBeanExpectedState
,NamedBeanExpectedValue
,NceSystemConnectionMemo
,NixieClockFrame
,NodeConfigFrame
,NodeConfigFrame
,NodeConfigFrame
,NodeConfigFrame
,NodeConfigFrame
,NodeConfigFrame
,NodeConfigManagerFrame
,NodeIOListFrame
,NodeSpecificFrame
,NodeTableFrame
,NXFrame
,OakTreeSystemConnectionMemo
,OBlockTableFrame
,OperationsFrame
,OperationsSettingsFrame
,OptionFrame
,OsIndicatorFrame
,PacketGenFrame
,PacketGenFrame
,PacketGenFrame
,PacketGenFrame
,PacketGenFrame
,PacketGenFrame
,PacketGenFrame
,PacketGenFrame
,PacketTableFrame
,PanelEditor
,PanelProFrame
,PaneOpsProgFrame
,PaneProgFrame
,PaneServiceProgFrame
,PickFrame
,PollTableFrame
,Pool
,PoolTrackFrame
,PortalEditFrame
,PowerPanelFrame
,PR2SystemConnectionMemo
,PR3SystemConnectionMemo
,PR4SystemConnectionMemo
,PragotronClockFrame
,PreferencesBean
,PreferencesFrame
,PrintCarRosterFrame
,PrintEngineRosterFrame
,PrintLocationsFrame
,PrintMoreOptionFrame
,PrintOptionFrame
,PrintTrainsFrame
,ProfileManager
,ProgrammerConfigManager
,ProtocolOptionsFrame
,QsiMonFrame
,QsiSystemConnectionMemo
,RaspberryPiSystemConnectionMemo
,RenumberFrame
,ReportFrame
,RfidSystemConnectionMemo
,RollingStockAttributeEditFrame
,RollingStockEditFrame
,RollingStockSetFrame
,RosterConfigManager
,RosterEntry
,RosterFrame
,RosterGroup
,RosterGroupTableFrame
,RouteAddFrame
,RouteBlockingOrderEditFrame
,RouteCopyFrame
,RouteEditFrame
,RouteEditFrame
,RoutesTableFrame
,RpsMonFrame
,RpsSystemConnectionMemo
,RpsTrackingFrame
,Scale
,ScheduleCopyFrame
,ScheduleEditFrame
,ScheduleOptionsFrame
,SchedulesAndStagingFrame
,SchedulesByLoadFrame
,SchedulesTableFrame
,SecsiSystemConnectionMemo
,SendPacketFrame
,SensorGroupFrame
,SensorTextEdit
,SerialFilterFrame
,SerialMonFrame
,SerialMonFrame
,SerialMonFrame
,SerialMonFrame
,SerialMonFrame
,SerialMonFrame
,SerialPacketGenFrame
,SerialPacketGenFrame
,SerialPacketGenFrame
,SerialPacketGenFrame
,SerialPacketGenFrame
,SerialPacketGenFrame
,SerialPacketGenFrame
,SerialSystemConnectionMemo
,SerialSystemConnectionMemo
,ServerFrame
,SetPhysicalLocationFrame
,SetTrainIconPositionFrame
,SetTrainIconRouteFrame
,SetupExcelProgramFrame
,SetupExcelProgramManifestFrame
,SetupExcelProgramSwitchListFrame
,ShowCarsInTrainFrame
,ShowRoutesServingLocationFrame
,ShowTrainsServingLocationFrame
,ShutdownPreferences
,SignalEditFrame
,SignalHeadAddEditFrame
,SignalHeadIconDialog
,SignallingFrame
,SignallingSourceFrame
,SignalMastRepeaterJFrame
,SignalSpeedMap
,SimpleClockFrame
,SimpleLightCtrlFrame
,SimpleProgFrame
,SimpleServerFrame
,SimpleServerPreferences
,SimpleTurnoutCtrlFrame
,SlipTurnoutTextEdit
,SoundSetFrame
,SpecificSystemConnectionMemo
,SpecificSystemConnectionMemo
,SpecificSystemConnectionMemo
,SpecificSystemConnectionMemo
,SpecificSystemConnectionMemo
,SpeedoConsoleFrame
,SpeedometerFrame
,SpeedoSystemConnectionMemo
,SpeedProfileFrame
,SpeedProfileTable
,SprogCbusModeSwitcherFrame
,SprogCbusSimpleModeSwitcherFrame
,SprogCbusSprog3PlusModeSwitcherFrame
,SprogConsoleFrame
,SprogHexFile
,SprogIIUpdateFrame
,SprogMonFrame
,SprogPacketGenFrame
,SprogSlotMonFrame
,SprogSystemConnectionMemo
,SprogUpdateFrame
,SprogVersionFrame
,SpurEditFrame
,SRCPBusConnectionMemo
,SRCPSystemConnectionMemo
,StackMonFrame
,StagingEditFrame
,StartupActionModelUtil
,StartupActionsManager
,StatusFrame
,SwitchboardEditor
,SystemConnectionMemoManager
,SystemConsolePreferencesManager
,SystemInfoFrame
,TabbedPreferencesFrame
,TamsSystemConnectionMemo
,ThreePaneTLRWindow
,ThrottlesPreferencesWindow
,ThrottleWindow
,TieToolFrame
,TimeTableFrame
,TmccSystemConnectionMemo
,TrackCopyFrame
,TrackDestinationEditFrame
,TrackEditCommentsFrame
,TrackEditFrame
,TrackerTableAction.TableFrame
,TrackLoadEditFrame
,TrackRoadEditFrame
,TrainByCarTypeFrame
,TrainConductorFrame
,TrainCopyFrame
,TrainEditBuildOptionsFrame
,TrainEditFrame
,TrainLoadOptionsFrame
,TrainManifestOptionFrame
,TrainRoadOptionsFrame
,TrainsByCarTypeFrame
,TrainScriptFrame
,TrainsScheduleEditFrame
,TrainsScheduleTableFrame
,TrainsScriptFrame
,TrainsTableFrame
,TrainsTableSetColorFrame
,TrainSwitchListEditFrame
,TrainSwitchListEditFrame.TrainSwitchListCommentFrame
,TreeEditor
,TreeFrame
,TreeViewer
,TwoPaneTBWindow
,UhlenbrockSystemConnectionMemo
,UnboundArbitraryBean
,UnboundBean
,UsbBrowserFrame
,UsbDcs210PlusSystemConnectionMemo
,UsbDcs240PlusSystemConnectionMemo
,UsbDcs240SystemConnectionMemo
,UsbDcs52SystemConnectionMemo
,UserInterface
,UserInterface
,VirtualLCDFrame
,VSDManagerFrame
,WarrantFrame
,WarrantPreferences
,WarrantRoute
,WarrantTableFrame
,WebAppManager
,WebServerPreferences
,WhereUsedFrame
,WhereUsedFrame
,XBeeAddNodeFrame
,XBeeConnectionMemo
,XBeeEditNodeFrame
,XBeeNodeConfigFrame
,XNetSystemConnectionMemo
,XpaConfigureFrame
,XpaPacketGenFrame
,XpaSystemConnectionMemo
,YardEditFrame
,YardmasterByTrackFrame
,YardmasterFrame
,Z21ConfigFrame
,Z21SystemConnectionMemo
,ZeroConfPreferences
public interface BeanInterface
Simple interface for basic methods that implement JMRI Bean handling methods. Various methods inBeanUtil
test that objects implement this interface before attempting to get or set properties of those objects. Classes implementing this interface can bypass the need to introspect the class to manipulate a property, and can also implement properties that the Beans class will be able to manipulate that do not conform to JavaBeans coding standards.ArbitraryBean
provides generic implementations of these methods that allow the manipulation of properties defined at runtime if your class can extend or extends a subclass of Bean.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.Object
getIndexedProperty(java.lang.String key, int index)
Get the value of an element in an indexed property.java.lang.Object
getProperty(java.lang.String key)
Get the value of a property.java.util.Set<java.lang.String>
getPropertyNames()
List all property names or keys.boolean
hasIndexedProperty(java.lang.String key)
Test that a property exists and is indexed.boolean
hasProperty(java.lang.String key)
Test that a property exists.void
setIndexedProperty(java.lang.String key, int index, java.lang.Object value)
Set the value of an element in an indexed property.void
setProperty(java.lang.String key, java.lang.Object value)
Set the value of a property.
-
-
-
Method Detail
-
setIndexedProperty
void setIndexedProperty(@Nonnull java.lang.String key, int index, @CheckForNull java.lang.Object value)
Set the value of an element in an indexed property.NOTE Implementing methods must not call
Bean.setIndexedProperty()
, as doing so will cause a stack overflow. Implementing methods may callBeans.setIntrospectedIndexedProperty()
instead.- Parameters:
key
- name of the propertyindex
- index of the property element to changevalue
- the value to set the property to
-
getIndexedProperty
@CheckForNull java.lang.Object getIndexedProperty(@Nonnull java.lang.String key, int index)
Get the value of an element in an indexed property.NOTE Implementing methods must not call
Bean.getIndexedProperty()
, as doing so will cause a stack overflow. Implementing methods may callBeans.getIntrospectedIndexedProperty()
instead.- Parameters:
key
- name of the propertyindex
- index of the property element to change- Returns:
- value of the property or null
-
setProperty
void setProperty(@Nonnull java.lang.String key, @CheckForNull java.lang.Object value)
Set the value of a property.NOTE Implementing methods must not call
Bean.setProperty()
, as doing so will cause a stack overflow. Implementing methods may callBeans.setIntrospectedProperty()
instead.- Parameters:
key
- name of the propertyvalue
- the value to set the property to
-
getProperty
@CheckForNull java.lang.Object getProperty(@Nonnull java.lang.String key)
Get the value of a property.NOTE Implementing methods must not call
Bean.getProperty()
, as doing so will cause a stack overflow. Implementing methods may callBeans.getIntrospectedProperty()
instead.- Parameters:
key
- name of the property- Returns:
- The value of the property or null
-
hasProperty
boolean hasProperty(@Nonnull java.lang.String key)
Test that a property exists.NOTE Implementing method must not call
Bean.hasProperty()
, as doing so will cause a stack overflow. Implementing methods may callBeans.hasIntrospectedProperty()
instead.- Parameters:
key
- name of the property- Returns:
- true is property key exists
-
hasIndexedProperty
boolean hasIndexedProperty(@Nonnull java.lang.String key)
Test that a property exists and is indexed.NOTE Implementing method must not call
Bean.hasIndexedProperty()
, as doing so will cause a stack overflow. Implementing methods may callBeans.hasIntrospectedIndexedProperty()
instead.- Parameters:
key
- name of the property- Returns:
- true is property key exists and is indexed
-
getPropertyNames
@Nonnull java.util.Set<java.lang.String> getPropertyNames()
List all property names or keys.NOTE Implementing method must not call
Bean.getPropertyNames()
, as doing so will cause a stack overflow. Implementing methods may callBeans.getIntrospectedPropertyNames()
instead.NOTE Implementations of this method should not return null.
- Returns:
- property names or an empty Set.
-
-