Class MaschineMgr

  • All Implemented Interfaces:
    IIniFileObserver, IIniFileObserver_FileDataIni

    public final class MaschineMgr
    extends java.lang.Object
    implements IIniFileObserver_FileDataIni
    Maschine Mode Manager
    Der einzige Platz, wo die Maschine (Pe, Do, ...) der current app (MstApp Object) definiert ist
    Die Maschine ist nie null.
    Man kann sich zur Benachrichtigung bei Aenderung der Maschine registrieren lassen.
    • Constructor Detail

      • MaschineMgr

        public MaschineMgr​(java.lang.String maschinenName,
                           boolean registerForBetterGuessOfMaschine)
      • MaschineMgr

        public MaschineMgr​(Maschine maschine)
        'maschine' ist die aktuell gültige Maschine der Applikation (MstApp Object) @throws NullPointerException, falls maschine == null
      • MaschineMgr

        public MaschineMgr​(java.lang.String maschinenName)
        'maschine' ist die aktuell gültige Maschine der Applikation (MstApp Object) @throws NullPointerException, falls maschine == null
    • Method Detail

      • getMaschinenAlle

        public final Maschine[] getMaschinenAlle()
        Returns:
        ein Array aller definierten Maschinen
      • getMaschine

        public final Maschine getMaschine()
        Maschine dieser Applikation, nie null
      • setMaschine

        public final void setMaschine​(Maschine maschine)
        Maschine dieser Applikation @throws NullPointerException, falls maschine == null
      • isValidMaschineNr

        public final boolean isValidMaschineNr​(int maschineNr)
      • getMaschineByNr

        public final Maschine getMaschineByNr​(int maschineNr)
      • getMaschineByString

        public final Maschine getMaschineByString​(java.lang.String maschinenString)
      • registerIMaschineObserver

        public final void registerIMaschineObserver​(IMaschineObserver observer)
      • deregisterIMaschineObserver

        public final boolean deregisterIMaschineObserver​(IMaschineObserver observer)
      • getDefaultIniBaumRoot

        public java.lang.Object getDefaultIniBaumRoot()
        Description copied from interface: IIniFileObserver
        Am Anfang wird ein Default Baum konstruiert. Kann zur Erstellung einer XML Vorlage verwended werden.
        Specified by:
        getDefaultIniBaumRoot in interface IIniFileObserver
      • onPrepareForExport

        public java.lang.Object onPrepareForExport()
        Description copied from interface: IIniFileObserver
        Wird direkt vor dem rausschreiben des IniBaums aufgerufen.
        Hier kann der Baum noch mal auf den neuesten Stand (intern oder extern) gebracht werden.
        Specified by:
        onPrepareForExport in interface IIniFileObserver
        Returns:
        die neue/alte upgedatete iniBaumRoot (null wird ignoriert)
      • onNewIniAvailable

        public void onNewIniAvailable​(java.lang.Object iniBaumRoot)
        Description copied from interface: IIniFileObserver
        Wird nach dem einlesen eines IniBaums aufgerufen (Erstinitialisierung oder Reset).
        Wird bei jedem beliebigen nicht nur den allgemeinen Inibaum aufgerufen
        Specified by:
        onNewIniAvailable in interface IIniFileObserver
      • istErlaubteMaschine

        public boolean istErlaubteMaschine​(Maschine anyMaschine)
        Parameters:
        anyMaschine -
        Returns:
        true falls diese Maschine erlaubt/enabled ist
      • getErlaubteMaschinenASReadOnlyList

        public java.util.List<Maschine> getErlaubteMaschinenASReadOnlyList()
        Returns:
        Alle Erlaubten Maschinen als ReadOnlyListe, nie null und .size() > 0
      • addErlaubteMaschinen

        public void addErlaubteMaschinen​(java.util.List<Maschine> erlaubteMaschinen)
        Parameters:
        erlaubteMaschinen - maschinen die zusaetzlich erlaubt sind
      • addErlaubteMaschinen

        public void addErlaubteMaschinen​(Maschine maschine)
        Parameters:
        maschine - eine Maschine, die zusaetzlich erlaubt ist
      • removeErlaubteMaschinen

        public void removeErlaubteMaschinen​(Maschine maschine)
        Parameters:
        maschine - wird entfernt
        Throws:
        java.lang.IllegalArgumentException - falls maschine == getMaschine() ist
      • setErlaubteMaschinen

        public void setErlaubteMaschinen​(java.util.List<Maschine> erlaubteMaschinen)
        Parameters:
        erlaubteMaschinen - voellig neue Liste erlaubter Maschinen
        Throws:
        NullpointerException - falls erlaubteMaschinen == null
        java.lang.IllegalArgumentException - falls erlaubteMaschinen keine Maschinen enthaelt, oder gesetzte Maschine fehlt
      • setErlaubteMaschinen

        public void setErlaubteMaschinen​(Maschine... erlaubteMaschinen)
        Parameters:
        erlaubteMaschinen - voellig neue Liste erlaubter Maschinen
        Throws:
        java.lang.IllegalArgumentException - falls erlaubteMaschinen keine Maschinen enthaelt, oder gesetzte Maschine fehlt
      • setErlaubteMaschinenUndMaschine

        public void setErlaubteMaschinenUndMaschine​(Maschine maschine,
                                                    java.util.List<Maschine> erlaubteMaschinen)
        Parameters:
        maschine -
        erlaubteMaschinen - voellig neue Liste erlaubter Maschinen
        Throws:
        java.lang.IllegalArgumentException - falls erlaubteMaschinen nicht maschine
      • setErlaubteMaschinenUndMaschine

        public void setErlaubteMaschinenUndMaschine​(Maschine maschine)
        setzt Maschine zu maschine und die Liste der erlaubten Maschinen zu lediglich maschine
      • registerIMaschinenKonfigurationObserver

        public void registerIMaschinenKonfigurationObserver​(IMaschinenKonfigurationObserver observer)
        Parameters:
        observer - wird bei Konfigurationsaenderungen benachrichtigt
      • deregisterIMaschinenKonfigurationObserver

        public void deregisterIMaschinenKonfigurationObserver​(IMaschinenKonfigurationObserver observer)
        Parameters:
        observer - wird deregistriert, keine referenzen werden gehalten, keine callbacks mehr
      • finalize

        public void finalize()
        Overrides:
        finalize in class java.lang.Object