001package jmri.jmrit.logixng.implementation; 002 003import java.util.List; 004import java.util.Locale; 005import java.util.Map; 006 007import jmri.*; 008import jmri.jmrit.logixng.*; 009 010/** 011 * Default implementation of the Female Digital Boolean Action socket 012 */ 013public final class DefaultFemaleDigitalBooleanActionSocket 014 extends AbstractFemaleSocket 015 implements FemaleDigitalBooleanActionSocket { 016 017 018 public DefaultFemaleDigitalBooleanActionSocket(Base parent, FemaleSocketListener listener, String name) { 019 super(parent, listener, name); 020 } 021 022 @Override 023 public boolean isCompatible(MaleSocket socket) { 024 return socket instanceof MaleDigitalBooleanActionSocket; 025 } 026 027 @Override 028 public void execute(boolean value) throws JmriException { 029 if (isConnected()) { 030 ((MaleDigitalBooleanActionSocket)getConnectedSocket()).execute(value); 031 } 032 } 033 034 @Override 035 public String getShortDescription(Locale locale) { 036 return Bundle.getMessage(locale, "DefaultFemaleDigitalBooleanActionSocket_Short"); 037 } 038 039 @Override 040 public String getLongDescription(Locale locale) { 041 return Bundle.getMessage(locale, "DefaultFemaleDigitalBooleanActionSocket_Long", getName()); 042 } 043 044 @Override 045 public Map<Category, List<Class<? extends Base>>> getConnectableClasses() { 046 return InstanceManager.getDefault(DigitalBooleanActionManager.class).getActionClasses(); 047 } 048 049 /** {@inheritDoc} */ 050 @Override 051 public void disposeMe() { 052 // Do nothing 053 } 054 055}