/*
* Copyright (c) 2016 Mockito contributors
* This program is made available under the terms of the MIT License.
*/
package org.mockito.internal.creation.instance;
import org.mockito.creation.instance.
Instantiator;
import org.mockito.internal.configuration.
GlobalConfiguration;
import org.objenesis.
ObjenesisStd;
class
ObjenesisInstantiator implements
Instantiator {
//TODO: in order to provide decent exception message when objenesis is not found,
//have a constructor in this class that tries to instantiate ObjenesisStd and if it fails then show decent exception that dependency is missing
//TODO: for the same reason catch and give better feedback when hamcrest core is not found.
private final
ObjenesisStd objenesis = new
ObjenesisStd(new
GlobalConfiguration().
enableClassCache());
public <T> T
newInstance(
Class<T>
cls) {
return
objenesis.
newInstance(
cls);
}
}