package org.erlide.wrangler.refactoring.backend; /** * Simple class that contains user refactoring's informations * * @author Aleksandra Lipiec <aleksandra.lipiec@erlang-solutions.com> * @version %I%, %G% */ public class UserRefactoringInfo { private final String label; // menu item's label private final String callback; // name of callback module public UserRefactoringInfo(final String module) { callback = module; label = prepareLabel(module); } public String getLabel() { return label; } public String getCallback() { return callback; } // prepare label's text based on module name private String prepareLabel(final String module) { final StringBuffer buf = new StringBuffer(); for (final String part : module.split("_")) { buf.append(Character.toUpperCase(part.charAt(0))).append(part.substring(1)) .append(" "); } return buf.toString().trim(); } @Override public String toString() { return label; } @Override public boolean equals(final Object obj) { if (obj instanceof UserRefactoringInfo && ((UserRefactoringInfo) obj).getCallback().equals(callback)) { return true; } return false; } @Override public int hashCode() { return callback.hashCode(); } }