asg.cliche
Interface CommandNamer

All Known Implementing Classes:
DashJoinedNamer

public interface CommandNamer

This interface is a Strategy for auto-naming commands with no name specified based on command's method. The algorithm is isolated because it's highly subjective and therefore subject to changes. And, if you don't like default dash-joined naming you can completely redefine the functionality. It is also responsible for generating several suggested abbreviations, one from them may later be "approved" by CommandTable.


Nested Class Summary
static class CommandNamer.NamingInfo
          Return value grouping structure for nameCommand().
 
Method Summary
 CommandNamer.NamingInfo nameCommand(java.lang.reflect.Method commandMethod)
          Generate command name and suggested abbreviation variants.
 

Method Detail

nameCommand

CommandNamer.NamingInfo nameCommand(java.lang.reflect.Method commandMethod)
Generate command name and suggested abbreviation variants. Since this method is given a Method, not a string, the algorithm can take parameter types into account.

Parameters:
commandMethod - Command method
Returns:
asg.cliche.CommandNamer.NamingInfo containing generated name and abbrev array.