in src/main/scala/com/twitter/iago/launcher/Launcher.scala [127:143]
def getSpecifiedModes(modes: Seq[Mode]) = modes.filter(_.modeFlag.isDefined)
def getMode(modes: Seq[Mode]): Mode = getSpecifiedModes(modes).head
def checkModeFlags(modes: Seq[Mode]): Unit = {
val availableModeFlags = modes.map(mode => s"-${mode.modeFlag.name}").mkString("\n")
val specifiedModes = getSpecifiedModes(modes)
if (specifiedModes.isEmpty) {
exitOnError(
s"\nError: exactly one of the following modes must be specified.\n$availableModeFlags"
)
} else if (specifiedModes.length > 1) {
exitOnError(
s"\nError: only one of the following modes may be specified.\n$availableModeFlags"
)
}
}