public void shutdown(E e) {
    assert e instanceof BaseEnvironment;
    if (LOG.isDebugEnabled()) {
      LOG.debug("Stop coprocessor " + e.getInstance().getClass().getName());
    }
    ((BaseEnvironment<C>) e).shutdown();
  }
Called when a new Coprocessor class needs to be loaded. Checks if type of the given class is
what the corresponding host implementation expects. If it is of correct type, returns an
instance of the coprocessor to be loaded. If not, returns null. If an exception occurs when
trying to create instance of a coprocessor, it's passed up and eventually results into server
aborting.
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java