Home | History | Annotate | Download | only in instance
      1 /*
      2  * Copyright (c) 2016 Mockito contributors
      3  * This program is made available under the terms of the MIT License.
      4  */
      5 package org.mockito.internal.creation.instance;
      6 
      7 import org.mockito.creation.instance.Instantiator;
      8 import org.mockito.mock.MockCreationSettings;
      9 import org.mockito.plugins.InstantiatorProvider2;
     10 
     11 public class DefaultInstantiatorProvider implements InstantiatorProvider2 {
     12 
     13     private final static Instantiator INSTANCE = new ObjenesisInstantiator();
     14 
     15     public Instantiator getInstantiator(MockCreationSettings<?> settings) {
     16         if (settings != null && settings.getConstructorArgs() != null) {
     17             return new ConstructorInstantiator(settings.getOuterClassInstance() != null, settings.getConstructorArgs());
     18         } else {
     19             return INSTANCE;
     20         }
     21     }
     22 }
     23