001package jmri.jmrix.loconet.uhlenbrock;
002
003import jmri.InstanceManager;
004import jmri.jmrix.loconet.LnTrafficController;
005import jmri.jmrix.loconet.LocoNetSystemConnectionMemo;
006import jmri.jmrix.loconet.SlotManager;
007import jmri.managers.DefaultProgrammerManager;
008
009/**
010 * Lightweight class to denote that an Uhlenbrock IB-COM or Intellibox II is
011 * active
012 *
013 * @author Bob Jacobsen Copyright (C) 2010
014 */
015public class UhlenbrockSystemConnectionMemo extends LocoNetSystemConnectionMemo {
016
017    public UhlenbrockSystemConnectionMemo(LnTrafficController lt,
018            SlotManager sm) {
019        super(lt, sm);
020    }
021
022    public UhlenbrockSystemConnectionMemo() {
023        super();
024    }
025
026    @Override
027    public DefaultProgrammerManager getProgrammerManager() {
028        return (DefaultProgrammerManager) classObjectMap.computeIfAbsent(DefaultProgrammerManager.class, (Class<?> c) -> new UhlenbrockProgrammerManager(this));
029    }
030
031    @Override
032    public void dispose() {
033        InstanceManager.deregister(this, UhlenbrockSystemConnectionMemo.class);
034        super.dispose();
035    }
036
037    @Override
038    public void configureManagers() {
039        super.configureManagers();
040        getTurnoutManager().setUhlenbrockMonitoring();
041    }
042
043}