code: @Override
      public void initModule() throws ModuleInitializationException {
          try {
              Server s_server = getServer();
              m_userAgent = getParameter("userAgent");
              if (m_userAgent == null) {
                  m_userAgent = "Fedora";
              }
  
              fedoraServerPort = s_server.getParameter("fedoraServerPort");
              fedoraServerHost = s_server.getParameter("fedoraServerHost");
              fedoraServerRedirectPort =
                      s_server.getParameter("fedoraRedirectPort");
  
              m_httpconfig = s_server.getWebClientConfig();
              if (m_httpconfig.getUserAgent() == null ) {
                  m_httpconfig.setUserAgent(m_userAgent);
              }
  
              m_http = new WebClient(m_httpconfig);
  
          } catch (Throwable th) {
              throw new ModuleInitializationException("[DefaultExternalContentManager] "
                                                              + "An external content manager "
                                                              + "could not be instantiated. The underlying error was a "
                                                              + th.getClass()
                                                                      .getName()
                                                              + "The message was \""
                                                              + th.getMessage()
                                                              + "\".",
                                                      getRole(), th);
          }
      }
docs: Initializes the Module based on configuration parameters. The
  implementation of this method is dependent on the schema used to define
  the parameter names for the role of
  <code>org.fcrepo.server.storage.DefaultExternalContentManager</code>.
  
  @throws ModuleInitializationException
  If initialization values are invalid or initialization fails for
  some other reason.