3
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
4
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
5
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
6
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
7
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
8
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
9
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
10
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
11
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
12
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
13
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15
* This software consists of voluntary contributions made by many individuals
16
* and is licensed under the MIT license. For more information, see
17
* <http://www.doctrine-project.org>.
20
namespace Doctrine\Instantiator\Exception;
24
use UnexpectedValueException as BaseUnexpectedValueException;
27
* Exception for given parameters causing invalid/unexpected state on instantiation
29
* @author Marco Pivetta <ocramius@gmail.com>
31
class UnexpectedValueException extends BaseUnexpectedValueException implements ExceptionInterface
34
* @param ReflectionClass $reflectionClass
35
* @param Exception $exception
39
public static function fromSerializationTriggeredException(ReflectionClass $reflectionClass, Exception $exception)
43
'An exception was raised while trying to instantiate an instance of "%s" via un-serialization',
44
$reflectionClass->getName()
52
* @param ReflectionClass $reflectionClass
53
* @param string $errorString
54
* @param int $errorCode
55
* @param string $errorFile
56
* @param int $errorLine
58
* @return UnexpectedValueException
60
public static function fromUncleanUnSerialization(
61
ReflectionClass $reflectionClass,
69
'Could not produce an instance of "%s" via un-serialization, since an error was triggered '
70
. 'in file "%s" at line "%d"',
71
$reflectionClass->getName(),
76
new Exception($errorString, $errorCode)