Pessoal,
Algu?m tem alguma sugest?o para deixar esse c?digo mais elegante:
[code]
private final String MENU_ACTION_SEPARATOR = " , ";
public void disableMenus() {
try {
startMenuTransaction();
appendMenuAction("Menu1");
appendMenuAction("Menu2");
appendMenuAction("Menu3");
appendMenuAction("Menu4");
...
appendMenuAction("Menu40");
} finally {
commitMenuTransaction();
}
}
private void appendMenuAction(String menuCommand) {
menuAction.append(menuCommand + MENU_ACTION_SEPARATOR);
}
private void startMenuTransaction() {
menuAction = new StringBuffer();
}
private void commitMenuTransaction() {
removeExtraSeparator();
ServiceProvider.getInstance().getMenuManager().processXMLSubMenu(menuAction.toString());
}
private void removeExtraSeparator() {
if (menuAction.length() > MENU_ACTION_SEPARATOR.length())
menuAction.delete(menuAction.length()-MENU_ACTION_SEPARATOR.length(), menuAction.length());
}[/code]
Sempre que temos N itens, temos (N-1) separadores.
Queria saber se tem como expressar isso em código de uma maneira mais eficiente do que ter que ficar tirando um separador do começo ou do fim, ou ainda ficar colocando ifs para ver se é o primeiro ou último item.
Sei que isso não impacta em nada, é mais preciosismo mesmo, mas gosto dessas coisas…rs!
Obrigado