private JMXSubsystemRootResource(ManagedAuditLogger auditLogger, JmxAuthorizer authorizer, Supplier<SecurityIdentity> securityIdentitySupplier, RuntimeHostControllerInfoAccessor hostInfoAccessor) {
super(new Parameters(PATH_ELEMENT, JMXExtension.getResourceDescriptionResolver(JMXExtension.SUBSYSTEM_NAME))
.setAddHandler(new JMXSubsystemAdd(auditLogger, authorizer, securityIdentitySupplier, hostInfoAccessor))
.setRemoveHandler(new JMXSubsystemRemove(auditLogger, authorizer, securityIdentitySupplier, hostInfoAccessor))
.addCapabilities(JMX_CAPABILITY)
.setAccessConstraints(JMXExtension.JMX_SENSITIVITY_DEF));
this.auditLogger = auditLogger;
this.authorizer = authorizer;
this.securityIdentitySupplier = securityIdentitySupplier;
this.hostInfoAccessor = hostInfoAccessor;
}