docs: @Override
      public void performBoottime(OperationContext context, ModelNode operation, final Resource resource)
              throws OperationFailedException {
  
          context.addStep(new AbstractDeploymentChainStep() {
              @Override
              protected void execute(DeploymentProcessorTarget processorTarget) {
  
                  processorTarget.addDeploymentProcessor(RequestControllerExtension.SUBSYSTEM_NAME, Phase.STRUCTURE, Phase.STRUCTURE_GLOBAL_REQUEST_CONTROLLER, new RequestControllerDeploymentUnitProcessor());
              }
          }, OperationContext.Stage.RUNTIME);
  
          int maxRequests = RequestControllerRootDefinition.MAX_REQUESTS.resolveModelAttribute(context, resource.getModel()).asInt();
          boolean trackIndividual = RequestControllerRootDefinition.TRACK_INDIVIDUAL_ENDPOINTS.resolveModelAttribute(context, resource.getModel()).asBoolean();
  
          RequestController requestController = new RequestController(trackIndividual);
  
          requestController.setMaxRequestCount(maxRequests);
  
          context.getServiceTarget().addService(RequestController.SERVICE_NAME, requestController)
                  .addDependency(JBOSS_SUSPEND_CONTROLLER, SuspendController.class, requestController.getShutdownControllerInjectedValue())
                  .install();
  
      }