Jagger
 All Classes Namespaces Files Functions Variables Enumerator Groups Pages
DefaultInvokerProvider.java
Go to the documentation of this file.
1 package com.griddynamics.jagger.invoker.v2;
2 
3 import com.griddynamics.jagger.engine.e1.Provider;
4 import com.griddynamics.jagger.invoker.Invoker;
5 
13 public class DefaultInvokerProvider implements Provider<Invoker> {
14 
15  private final Class<? extends Invoker> invokerClass;
16 
17  public DefaultInvokerProvider(final Class<? extends Invoker> invokerClass) {this.invokerClass = invokerClass;}
18 
19  public static DefaultInvokerProvider of(final Class<? extends Invoker> invokerClass) {
20  return new DefaultInvokerProvider(invokerClass);
21  }
22 
23 
24  @Override
25  public Invoker provide() {
26  try {
27  return invokerClass.newInstance();
28  } catch (InstantiationException | IllegalAccessException e) {
29  throw new IllegalStateException(String.format("Error during triggering a default constructor for %s",
30  invokerClass), e);
31  }
32  }
33 }