/*******************************************************************************
* Copyright (c) 2009 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
* Zend Technologies
*******************************************************************************/
package org.eclipse.php.internal.debug.ui.preferences;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Text;
public class BasePathValidator implements IPageControlValidator {
private String errorMessage;
private boolean isValid;
private Text fDefaultBasePath;
public BasePathValidator(Text fDefaultBasePath) {
this.fDefaultBasePath = fDefaultBasePath;
}
public Control getControl() {
return fDefaultBasePath;
}
public String getErrorMessage() {
return errorMessage;
}
public boolean isValid() {
return isValid;
}
public void validate() {
if (fDefaultBasePath != null) {
String textAsString = fDefaultBasePath.getText();
if (textAsString.equalsIgnoreCase("")) { //$NON-NLS-1$
this.errorMessage = Messages.BasePathValidator_1;
this.fDefaultBasePath.setMessage(this.errorMessage);
isValid = false;
} else if (!textAsString.startsWith("/")) { //$NON-NLS-1$
this.errorMessage = Messages.BasePathValidator_3;
this.fDefaultBasePath.setMessage(this.errorMessage);
isValid = false;
} else {
this.errorMessage = null;
this.fDefaultBasePath.setMessage(Messages.BasePathValidator_4);
isValid = true;
}
} else {
isValid = false;
}
}
}