001package jmri.jmrit.ctc; 002 003/* 004 * This object "does nothing" but provide routines that do nothing that the "CodeButtonHandler" object calls. 005 * This is typically used when there is ONLY a "turnout lock" object and a code button, nothing else. 006 * I did this as an expedient, since I didn't want to put complex conditional if statements all over CodeButtonHandler 007 * testing whether "_mSignalDirectionIndicators" was null and dealing with the side effects. 008 * @author Gregory J. Bedlek Copyright (C) 2018, 2019 009 */ 010 011public class SignalDirectionIndicatorsNull implements SignalDirectionIndicatorsInterface { 012 public SignalDirectionIndicatorsNull() {} 013 014 @Override 015 public void setCodeButtonHandler(CodeButtonHandler codeButtonHandler) {} 016 @Override 017 public void removeAllListeners() {} 018 @Override 019 public boolean isNonfunctionalObject() { return true; } 020 @Override 021 public void setPresentSignalDirectionLever(int presentSignalDirectionLever) {} 022 @Override 023 public boolean isRunningTime() { return false; } 024 @Override 025 public void osSectionBecameOccupied() {} 026 @Override 027 public void codeButtonPressed(int requestedDirection, boolean requestedChangeInSignalDirection) {} 028 @Override 029 public void startCodingTime() {} 030 @Override 031 public boolean signalsNormal() { return true; } 032 @Override 033 public boolean signalsNormalOrOutOfCorrespondence() { return true; } 034 @Override 035 public int getPresentDirection() { return CTCConstants.SIGNALSNORMAL; } 036 @Override 037 public boolean inCorrespondence() { return true; } 038 @Override 039 public void forceAllSignalsToHeld() {} 040 @Override 041 public int getSignalsInTheFieldDirection() { return CTCConstants.OUTOFCORRESPONDENCE; } 042 @Override 043 public void setSignalDirectionIndicatorsToOUTOFCORRESPONDENCE() {} 044 @Override 045 public void setRequestedDirection(int direction) {} 046}