001package jmri.jmrix.lenz.messageformatters; 002 003import jmri.jmrix.Message; 004import jmri.jmrix.lenz.XNetConstants; 005import jmri.jmrix.lenz.XNetReply; 006import jmri.jmrix.lenz.XPressNetMessageFormatter; 007 008/** 009 * Formatter for XPressNet XNet Broadcast Emergency Stop replies. 010 * 011 * @author Paul Bender Copyright (C) 2025 012 */ 013public class XNetBroadcastEmergencyStopFormatter implements XPressNetMessageFormatter { 014 @Override 015 public boolean handlesMessage(Message m) { 016 return m instanceof XNetReply && 017 ((XNetReply) m).getElement(0) == XNetConstants.BC_EMERGENCY_STOP && 018 ((XNetReply) m).getElement(1) == XNetConstants.BC_EVERYTHING_STOP; 019 } 020 021 @Override 022 public String formatMessage(Message message) { 023 if(!handlesMessage(message)){ 024 throw new IllegalArgumentException("Message is not supported"); 025 } 026 return Bundle.getMessage("XNetReplyBCEverythingStop"); 027 } 028}