@Override
	public void execute() throws BuildException {
		PageUnit.init();
		try {
			if (theFile != null) {
				PageUnit.processFile(theFile);
			} else if (theDir != null) {
				PageUnit.processFile(theDir);
			} else if (theTest != null) {
				if (thePath == null) {
					PageUnit.processFile(new File(theTest));
				} else {
					// walk thePath, looking for test, first found, process 
					throw new BuildException("code not written yet: walk thePath, looking for test, first found, process");
				}
			} else {
				throw new BuildException("Either file, or dir, or test (and optionally path) must be specified");			
			}
		} catch (Exception e) {
			throw new BuildException(e.toString());
		}
		if (PageUnit.isFailed()) {
			throw new BuildException(PageUnit.getTestResults().toString());
		}
	}