CreateInstanceByDefaultConstructor.java
- package org.jbehave.core.steps.needle.configuration;
- /**
- * Instantiates new java object by default constructor
- * @author Jan Galinski, Holisticon AG (jan.galinski@holisticon.de)
- * @author Simon Zambrovski, Holisticon AG (simon.zambrovski@holisticon.de)
- */
- public enum CreateInstanceByDefaultConstructor {
- /**
- * Singleton
- */
- INSTANCE;
- public final <T> T apply(final Class<T> type) {
- try {
- return type.getConstructor().newInstance();
- } catch (final Exception e) {
- throw new IllegalStateException(
- String.format("Can not instantiate instance of %s by default constructor.", type.getSimpleName()),
- e);
- }
- }
- }