001package jmri.jmrit.operations.automation.actions; 002 003import jmri.InstanceManager; 004import jmri.jmrit.operations.setup.Setup; 005import jmri.jmrit.operations.trains.TrainManager; 006import jmri.jmrit.operations.trains.schedules.TrainScheduleManager; 007 008public class UpdateSwitchListAction extends Action { 009 010 private static final int _code = ActionCodes.UPDATE_SWITCHLIST; 011 012 @Override 013 public int getCode() { 014 return _code; 015 } 016 017 @Override 018 public String getName() { 019 if (Setup.isSwitchListRealTime() && !InstanceManager.getDefault(TrainManager.class).isPrintPreviewEnabled()) { 020 return Bundle.getMessage("PrintSwitchListChanges"); 021 } else if (Setup.isSwitchListRealTime() && InstanceManager.getDefault(TrainManager.class).isPrintPreviewEnabled()) { 022 return Bundle.getMessage("PreviewSwitchListChanges"); 023 } else { 024 return Bundle.getMessage("UpdateSwitchList"); 025 } 026 } 027 028 @Override 029 public void doAction() { 030 if (getAutomationItem() != null) { 031 setRunning(true); 032 InstanceManager.getDefault(TrainScheduleManager.class).buildSwitchLists(); 033 finishAction(true); 034 } 035 } 036 037 @Override 038 public void cancelAction() { 039 // no cancel for this action 040 } 041}