001package jmri.jmrix.roco.z21.messageformatters;
002
003import jmri.jmrix.Message;
004import jmri.jmrix.roco.z21.RocoZ21CommandStation;
005import jmri.jmrix.roco.z21.Z21Message;
006import jmri.jmrix.roco.z21.Z21MessageFormatter;
007import jmri.jmrix.roco.z21.Z21MessageUtils;
008
009/**
010 * Formatter for Z21 Set BroadCast Flags Request.
011 * @author Paul Bender Copyright (C) 2025
012 */
013public class Z21SetBroadCastFlagsRequestFormatter implements Z21MessageFormatter {
014
015    @Override
016    public boolean handlesMessage(Message m) {
017        return m instanceof Z21Message && ((Z21Message) m).getOpCode() == 0x0050;
018    }
019
020    @Override
021    public String formatMessage(Message m) {
022        if (!handlesMessage(m)) {
023            return Bundle.getMessage("Z21MessageTypeMismatch", "Set BroadCast Flags");
024        }
025        return Bundle.getMessage("Z21MessageSetBroadcastFlags",
026                RocoZ21CommandStation.getZ21BroadcastFlagsString(Z21MessageUtils.interpretBroadcastFlags((m))));
027
028    }
029
030}