code: protected final Injector getInjector() {
          if (injector != null) {
              throw new IllegalStateException("Injector already created.");
          }
          try {
              injector = createInjector();
          }
          catch (Exception e) {
              LOG.error("Failed to created injector", e);
              throw new ProvisionException("Failed to create injector", e);
          }
          return injector;
      }
docs: Override this method to create (or otherwise obtain a reference to) your
  injector.
  NOTE: If everything is set up right, then this method should only be called once during
  application startup.