package com.xenoage.zong.musicxml.types.attributes;
import lombok.AllArgsConstructor;
import lombok.Getter;
import com.xenoage.utils.annotations.MaybeNull;
import com.xenoage.utils.annotations.NonNull;
import com.xenoage.utils.xml.XmlReader;
import com.xenoage.utils.xml.XmlWriter;
import com.xenoage.zong.musicxml.types.enums.MxlBackwardForward;
/**
* MusicXML repeat.
*
* @author Andreas Wenger
*/
@AllArgsConstructor @Getter
public final class MxlRepeat {
public static final String elemName = "repeat";
@NonNull private MxlBackwardForward direction;
@MaybeNull private Integer times;
@NonNull public static MxlRepeat read(XmlReader reader) {
return new MxlRepeat(MxlBackwardForward.read(reader), reader.getAttributeInt("times"));
}
public void write(XmlWriter writer) {
writer.writeElementStart(elemName);
direction.write(writer);
writer.writeAttribute("times", times);
writer.writeElementEnd();
}
}