docs: public void startup(boolean forceStartup) throws GreenPepperServerException {
          log.info("Starting Plugin");
          if (!isPluginEnabled)
              return;
  
          final GreenPepperServerConfiguration configuration = getConfiguration();
  
          if ((configuration.isSetupComplete() && !isServerStarted) || forceStartup) {
              isServerStarted = false;
  
              try {
                  closeSession();
  
                  Properties properties = configuration.getProperties();
  
                  injectAdditionalProperties(properties);
  
                  HibernateSessionService sessionService = new HibernateSessionService(properties);
  
                  log.info("Boostrapping datas");
                  new BootstrapData(sessionService, properties).execute();
                  new GreenPepperUserGroup().createIfNeeded();
  
                  Authorizer authorizer = new OpenSourceAuthorizer(sessionService, properties);
                  authorizer.initialize(GreenPepperServer.versionDate());
  
                  ProjectDao projectDao = new HibernateProjectDao(sessionService);
                  RepositoryDao repositoryDao = new HibernateRepositoryDao(sessionService);
                  SystemUnderTestDao sutDao = new HibernateSystemUnderTestDao(sessionService);
                  DocumentDao documentDao = new HibernateDocumentDao(sessionService);
  
                  Object object = ContainerManager.getComponent("greenPepperServerService");
                  GreenPepperServerServiceImpl service = (GreenPepperServerServiceImpl) object;
  
                  service.setAuthorizer(authorizer);
                  service.setDocumentDao(documentDao);
                  service.setProjectDao(projectDao);
                  service.setRepositoryDao(repositoryDao);
                  service.setSessionService(sessionService);
                  service.setSutDao(sutDao);
  
                  object = ContainerManager.getComponent("greenPepperXmlRpcServerService");
                  GreenPepperXmlRpcServer xmlRpcServer = (GreenPepperXmlRpcServer) object;
                  xmlRpcServer.setService(service);
  
                  hibernateSessionService = sessionService;
  
                  configuration.setSetupComplete(true);
                  storeConfiguration(configuration);
  
                  isServerStarted = true;
              } catch (Exception ex) {
                  log.error("Starting up GreenPepper plugin", ex);
                  throw new GreenPepperServerException(GreenPepperServerErrorKey.GENERAL_ERROR, ex);
              }
          }
      }