001package jmri.jmrit.logixng.implementation;
002
003import jmri.*;
004import jmri.jmrit.logixng.*;
005
006import org.openide.util.lookup.ServiceProvider;
007
008/**
009 * Factory class for DefaultFemaleDigitalActionSocket class.
010 * 
011 * @author Daniel Bergqvist Copyright 2020
012 */
013@ServiceProvider(service = FemaleSocketFactory.class)
014public class DefaultFemaleDigitalActionSocketFactory implements FemaleSocketFactory {
015
016    private static final FemaleSocketManager.SocketType _femaleSocketType = new SocketType();
017    
018    
019    @Override
020    public FemaleSocketManager.SocketType getFemaleSocketType() {
021        return _femaleSocketType;
022    }
023
024
025    private static class SocketType implements FemaleSocketManager.SocketType {
026        
027        @Override
028        public String getName() {
029            return "DefaultFemaleDigitalActionSocket";
030        }
031
032        @Override
033        public String getDescr() {
034            return Bundle.getMessage("FemaleDigitalActionSocket_Descr");
035        }
036
037        @Override
038        public BaseManager<? extends MaleSocket> getManager() {
039            return InstanceManager.getDefault(DigitalActionManager.class);
040        }
041
042        @Override
043        public FemaleSocket createSocket(Base parent, FemaleSocketListener listener, String name) {
044            return new DefaultFemaleDigitalActionSocket(parent, listener, name);
045        }
046        
047        @Override
048        public String toString() {
049            return getDescr();
050        }
051    }
052    
053}