/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.command.spi; /** * Represents a help entry for a single command provided by a {@link CommandPlugin}. * * @author Robert Mischke */ public class CommandDescription implements Comparable<CommandDescription> { private final String staticPart; private final String dynamicPart; private final String firstLine; private final String[] additionalLines; private final boolean isDeveloperCommand; public CommandDescription(String staticPart, String dynamicPart, boolean isDeveloperCommand, String firstLine, String... additionalLines) { this.staticPart = staticPart; this.dynamicPart = dynamicPart; this.firstLine = firstLine; this.additionalLines = additionalLines; this.isDeveloperCommand = isDeveloperCommand; } public String getStaticPart() { return staticPart; } public String getDynamicPart() { return dynamicPart; } public String getFirstLine() { return firstLine; } public String[] getAdditionalLines() { return additionalLines; } public boolean isDeveloperCommand() { return isDeveloperCommand; } @Override public int compareTo(CommandDescription o) { return staticPart.compareTo(o.staticPart); } /** * @return true if the dynamic part is non-null and not empty */ public boolean hasDynamicPart() { return dynamicPart != null && !dynamicPart.isEmpty(); } }