001package jmri.managers;
002
003import javax.annotation.Nonnull;
004import jmri.AnalogIO;
005import jmri.Manager;
006import jmri.SystemConnectionMemo;
007// import org.slf4j.Logger;
008// import org.slf4j.LoggerFactory;
009import jmri.AnalogIOManager;
010
011/**
012 * Abstract partial implementation of a AnalogIOManager.
013 * <p>
014 * Based on AbstractSignalHeadManager.java and AbstractSensorManager.java
015 *
016 * @author Dave Duchamp      Copyright (C) 2004
017 * @author Daniel Bergqvist  Copyright (C) 2020
018 */
019public abstract class AbstractAnalogIOManager extends AbstractManager<AnalogIO>
020        implements AnalogIOManager {
021
022    /**
023     * Create a new AnalogIOManager instance.
024     * 
025     * @param memo the system connection
026     */
027    public AbstractAnalogIOManager(SystemConnectionMemo memo) {
028        super(memo);
029    }
030
031    /** {@inheritDoc} */
032    @Override
033    public int getXMLOrder() {
034        return Manager.ANALOGIOS;
035    }
036
037    /**
038     * {@inheritDoc}
039     */
040    @Override
041    public char typeLetter() {
042        return 'V';
043    }
044
045    /**
046     * Get bean type handled.
047     *
048     * @return a string for the type of object handled by this manager
049     */
050    @Override
051    @Nonnull
052    public String getBeanTypeHandled(boolean plural) {
053        return Bundle.getMessage(plural ? "BeanNameAnalogIOs" : "BeanNameAnalogIO");
054    }
055
056    /**
057     * {@inheritDoc}
058     */
059    @Override
060    public Class<AnalogIO> getNamedBeanClass() {
061        return AnalogIO.class;
062    }
063
064//    private final static Logger log = LoggerFactory.getLogger(AbstractAnalogIOManager.class);
065
066}