summaryrefslogtreecommitdiff
path: root/buildscripts/phing/classes/phing/input/DefaultInputHandler.php
diff options
context:
space:
mode:
Diffstat (limited to 'buildscripts/phing/classes/phing/input/DefaultInputHandler.php')
-rwxr-xr-xbuildscripts/phing/classes/phing/input/DefaultInputHandler.php85
1 files changed, 0 insertions, 85 deletions
diff --git a/buildscripts/phing/classes/phing/input/DefaultInputHandler.php b/buildscripts/phing/classes/phing/input/DefaultInputHandler.php
deleted file mode 100755
index 5e53c878..00000000
--- a/buildscripts/phing/classes/phing/input/DefaultInputHandler.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<?php
-
-/*
- * $Id: 5d3d4fb125da3344b5aafec31ba330969bdbdb42 $
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the LGPL. For more information please see
- * <http://phing.info>.
- */
-
-require_once 'phing/input/InputHandler.php';
-include_once 'phing/system/io/ConsoleReader.php';
-
-/**
- * Prompts using print(); reads input from Console.
- *
- * @author Hans Lellelid <hans@xmpl.org> (Phing)
- * @author Stefan Bodewig <stefan.bodewig@epost.de> (Ant)
- * @version $Id$
- * @package phing.input
- */
-class DefaultInputHandler implements InputHandler {
-
- /**
- * Prompts and requests input. May loop until a valid input has
- * been entered.
- * @throws BuildException
- */
- public function handleInput(InputRequest $request) {
- $prompt = $this->getPrompt($request);
- $in = new ConsoleReader();
- do {
- print $prompt;
- try {
- $input = $in->readLine();
- if ($input === "" && ($request->getDefaultValue() !== null) ) {
- $input = $request->getDefaultValue();
- }
- $request->setInput($input);
- } catch (Exception $e) {
- throw new BuildException("Failed to read input from Console.", $e);
- }
- } while (!$request->isInputValid());
- }
-
- /**
- * Constructs user prompt from a request.
- *
- * <p>This implementation adds (choice1,choice2,choice3,...) to the
- * prompt for <code>MultipleChoiceInputRequest</code>s.</p>
- *
- * @param $request the request to construct the prompt for.
- * Must not be <code>null</code>.
- */
- protected function getPrompt(InputRequest $request) {
- $prompt = $request->getPrompt();
- $defaultValue = $request->getDefaultValue();
-
- if ($request instanceof YesNoInputRequest) {
- $choices = $request->getChoices();
- $defaultValue = $choices[(int) !$request->getDefaultValue()];
- $prompt .= '(' . implode('/', $request->getChoices()) .')';
- } elseif ($request instanceof MultipleChoiceInputRequest) { // (a,b,c,d)
- $prompt .= '(' . implode(',', $request->getChoices()) . ')';
- }
-
- if ($request->getDefaultValue() !== null) {
- $prompt .= ' ['.$defaultValue.']';
- }
- $pchar = $request->getPromptChar();
- return $prompt . ($pchar ? $pchar . ' ' : ' ');
- }
-}