001// License: GPL. For details, see LICENSE file. 002package org.openstreetmap.josm.gui.preferences.server; 003 004import static org.openstreetmap.josm.tools.I18n.tr; 005 006import javax.swing.text.JTextComponent; 007 008import org.openstreetmap.josm.gui.widgets.AbstractTextComponentValidator; 009 010/** 011 * Validator for OSM username. 012 */ 013public class UserNameValidator extends AbstractTextComponentValidator { 014 015 /** 016 * Constructs a new {@code UserNameValidator}. 017 * @param tc the text component used to enter username 018 */ 019 public UserNameValidator(JTextComponent tc) { 020 super(tc); 021 } 022 023 @Override 024 public boolean isValid() { 025 return getComponent().getText().trim().length() > 0; 026 } 027 028 @Override 029 public void validate() { 030 if (isValid()) { 031 feedbackValid(tr("Please enter your OSM user name")); 032 } else { 033 feedbackInvalid(tr("The user name cannot be empty. Please enter your OSM user name")); 034 } 035 } 036}