InputRequest   A
last analyzed

Complexity

Total Complexity 12

Size/Duplication

Total Lines 126
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 12
eloc 19
dl 0
loc 126
rs 10
c 0
b 0
f 0

11 Methods

Rating   Name   Duplication   Size   Complexity  
A getPrompt() 0 3 1
A setHidden() 0 3 1
A getPromptChar() 0 3 1
A isInputValid() 0 3 1
A isHidden() 0 3 1
A setDefaultValue() 0 3 1
A setPromptChar() 0 3 1
A getInput() 0 3 1
A getDefaultValue() 0 3 1
A __construct() 0 6 2
A setInput() 0 3 1
1
<?php
2
3
/**
4
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
5
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
6
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
7
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
8
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
9
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
10
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
11
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
12
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
13
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
14
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15
 *
16
 * This software consists of voluntary contributions made by many individuals
17
 * and is licensed under the LGPL. For more information please see
18
 * <http://phing.info>.
19
 */
20
21
namespace Phing\Input;
22
23
use Phing\Exception\BuildException;
24
25
/**
26
 * Encapsulates an input request.
27
 *
28
 * @author  Hans Lellelid <[email protected]> (Phing)
29
 * @author  Stefan Bodewig <[email protected]> (Ant)
30
 */
31
class InputRequest
32
{
33
    /**
34
     * @var string
35
     */
36
    protected $prompt;
37
38
    /**
39
     * @var string
40
     */
41
    protected $input;
42
43
    /**
44
     * @var string
45
     */
46
    protected $defaultValue;
47
48
    /**
49
     * @var string
50
     */
51
    protected $promptChar;
52
53
    /**
54
     * @var bool
55
     */
56
    protected $hidden = false;
57
58
    /**
59
     * @param string $prompt The prompt to show to the user.  Must not be null.
60
     *
61
     * @throws BuildException
62
     */
63
    public function __construct($prompt)
64
    {
65
        if (null === $prompt) {
0 ignored issues
show
introduced by
The condition null === $prompt is always false.
Loading history...
66
            throw new BuildException('prompt must not be null');
67
        }
68
        $this->prompt = $prompt;
69
    }
70
71
    /**
72
     * Retrieves the prompt text.
73
     */
74
    public function getPrompt()
75
    {
76
        return $this->prompt;
77
    }
78
79
    /**
80
     * Sets the user provided input.
81
     *
82
     * @param $input
83
     */
84
    public function setInput($input)
85
    {
86
        $this->input = $input;
87
    }
88
89
    /**
90
     * Is the user input valid?
91
     */
92
    public function isInputValid()
93
    {
94
        return true;
95
    }
96
97
    /**
98
     * Retrieves the user input.
99
     */
100
    public function getInput()
101
    {
102
        return $this->input;
103
    }
104
105
    /**
106
     * Set the default value to use.
107
     *
108
     * @param mixed $v
109
     */
110
    public function setDefaultValue($v)
111
    {
112
        $this->defaultValue = $v;
113
    }
114
115
    /**
116
     * Return the default value to use.
117
     */
118
    public function getDefaultValue()
119
    {
120
        return $this->defaultValue;
121
    }
122
123
    /**
124
     * Set the default value to use.
125
     *
126
     * @param string $c
127
     */
128
    public function setPromptChar($c)
129
    {
130
        $this->promptChar = $c;
131
    }
132
133
    /**
134
     * Return the default value to use.
135
     *
136
     * @return string
137
     */
138
    public function getPromptChar()
139
    {
140
        return $this->promptChar;
141
    }
142
143
    /**
144
     * @return bool
145
     */
146
    public function isHidden()
147
    {
148
        return $this->hidden;
149
    }
150
151
    /**
152
     * @param bool $hidden
153
     */
154
    public function setHidden($hidden)
155
    {
156
        $this->hidden = $hidden;
157
    }
158
}
159