Buggy code:
public class HostModelUtil { public static void createHostRegistry ( final ManagementResourceRegistration root , final HostControllerConfigurationPersister configurationPersister , final HostControllerEnvironment environment , final HostRunningModeControl runningModeControl , final HostFileRepository localFileRepository , final LocalHostControllerInfoImpl hostControllerInfo , final ServerInventory serverInventory , final HostFileRepository remoteFileRepository , final ContentRepository contentRepository , final DomainController domainController , final ExtensionRegistry extensionRegistry , final AbstractVaultReader vaultReader , final IgnoredDomainResourceRegistry ignoredRegistry , final ControlledProcessState processState ) { ManagementResourceRegistration hostRegistration = root . registerSubModel ( PathElement . pathElement ( ModelDescriptionConstants . HOST ) , HOST_ROOT_PROVIDER ) ; LocalHostAddHandler handler = new LocalHostAddHandler ( environment , ignoredRegistry ) ; hostRegistration . registerOperationHandler ( OPERATION_NAME , handler , handler , false , PRIVATE ) ; EnumSet < OperationEntry . Flag > flags = EnumSet . of ( READ_ONLY ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_RESOURCE_OPERATION , READ_RESOURCE , READ_RESOURCE_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_ATTRIBUTE_OPERATION , READ_ATTRIBUTE , READ_ATTRIBUTE_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_RESOURCE_DESCRIPTION_OPERATION , READ_RESOURCE_DESCRIPTION , READ_RESOURCE_DESCRIPTION_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_CHILDREN_NAMES_OPERATION , READ_CHILDREN_NAMES , READ_CHILDREN_NAMES_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_CHILDREN_TYPES_OPERATION , READ_CHILDREN_TYPES , READ_CHILDREN_TYPES_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_CHILDREN_RESOURCES_OPERATION , READ_CHILDREN_RESOURCES , READ_CHILDREN_RESOURCES_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_OPERATION_NAMES_OPERATION , READ_OPERATION_NAMES , READ_OPERATION_NAMES_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . READ_OPERATION_DESCRIPTION_OPERATION , READ_OPERATION_DESCRIPTION , READ_OPERATION_PROVIDER , true , PUBLIC , flags ) ; root . registerOperationHandler ( ModelDescriptionConstants . UNDEFINE_ATTRIBUTE_OPERATION , UNDEFINE_ATTRIBUTE , UNDEFINE_ATTRIBUTE_PROVIDER , true ) ; root . registerOperationHandler ( ModelDescriptionConstants . WRITE_ATTRIBUTE_OPERATION , WRITE_ATTRIBUTE , WRITE_ATTRIBUTE_PROVIDER , true ) ; root . registerOperationHandler ( ValidateOperationHandler . OPERATION_NAME , INSTANCE , INSTANCE , false , EntryType . PUBLIC , EnumSet . of ( Flag . READ_ONLY ) ) ; root . registerOperationHandler ( WhoAmIOperation . OPERATION_NAME , WhoAmIOperation . INSTANCE , WhoAmIOperation . INSTANCE , true ) ; root . registerOperationHandler ( NAME , CompositeOperationHandler . INSTANCE , CompositeOperationHandler . INSTANCE , false , PRIVATE ) ; XmlMarshallingHandler xmh = new org . jboss . as . host . controller . operations . HostXmlMarshallingHandler ( configurationPersister . getHostPersister ( ) , hostControllerInfo ) ; hostRegistration . registerOperationHandler ( XmlMarshallingHandler . OPERATION_NAME , xmh , xmh , false , PUBLIC , flags ) ; hostRegistration . registerReadWriteAttribute ( DIRECTORY_GROUPING , null , new org . jboss . as . controller . ReloadRequiredWriteAttributeHandler ( HostRootDescription . DIRECTORY_GROUPING ) ) ; hostRegistration . registerOperationHandler ( NamespaceAddHandler . OPERATION_NAME , NamespaceAddHandler . INSTANCE , NamespaceAddHandler . INSTANCE , false ) ; hostRegistration . registerOperationHandler ( NamespaceRemoveHandler . OPERATION_NAME , NamespaceRemoveHandler . INSTANCE , NamespaceRemoveHandler . INSTANCE , false ) ; hostRegistration . registerOperationHandler ( SchemaLocationAddHandler . OPERATION_NAME , SchemaLocationAddHandler . INSTANCE , SchemaLocationAddHandler . INSTANCE , false ) ; hostRegistration . registerOperationHandler ( SchemaLocationRemoveHandler . OPERATION_NAME , SchemaLocationRemoveHandler . INSTANCE , SchemaLocationRemoveHandler . INSTANCE , false ) ; hostRegistration . registerReadWriteAttribute ( ModelDescriptionConstants . NAME , environment . getProcessNameReadHandler ( ) , environment . getProcessNameWriteHandler ( ) , CONFIGURATION ) ; hostRegistration . registerReadOnlyAttribute ( ModelDescriptionConstants . MASTER , IsMasterHandler . INSTANCE , RUNTIME ) ; hostRegistration . registerReadOnlyAttribute ( ModelDescriptionConstants . HOST_STATE , new org . jboss . as . controller . operations . common . ProcessStateAttributeHandler ( processState ) , RUNTIME ) ; StartServersHandler ssh = new StartServersHandler ( environment , serverInventory , runningModeControl ) ; hostRegistration . registerOperationHandler ( StartServersHandler . OPERATION_NAME , ssh , ssh , false , PRIVATE ) ; HostShutdownHandler hsh = new HostShutdownHandler ( domainController ) ; <START_BUG> hostRegistration . registerOperationHandler ( HostShutdownHandler . OPERATION_NAME , hsh , hsh ) ; <END_BUG> hostRegistration . registerOperationHandler ( ResolveExpressionHandler . OPERATION_NAME , ResolveExpressionHandler . INSTANCE , ResolveExpressionHandler . INSTANCE , EnumSet . of ( READ_ONLY ) ) ; hostRegistration . registerOperationHandler ( ResolveExpressionOnHostHandler . OPERATION_NAME , ResolveExpressionOnHostHandler . INSTANCE , ResolveExpressionOnHostHandler . INSTANCE , EnumSet . of ( READ_ONLY , DOMAIN_PUSH_TO_SERVERS ) ) ; HostProcessReloadHandler reloadHandler = new HostProcessReloadHandler ( HostControllerService . HC_SERVICE_NAME , runningModeControl , HostRootDescription . getResourceDescriptionResolver ( "host" ) ) ; hostRegistration . registerOperationHandler ( ProcessReloadHandler . OPERATION_NAME , reloadHandler , reloadHandler , EnumSet . of ( HOST_CONTROLLER_ONLY ) ) ; RunningModeReadHandler . createAndRegister ( runningModeControl , hostRegistration ) ; DomainServerLifecycleHandlers . initializeServerInventory ( serverInventory ) ; hostRegistration . registerOperationHandler ( SpecifiedInterfaceResolveHandler . OPERATION_NAME , SpecifiedInterfaceResolveHandler . INSTANCE , SpecifiedInterfaceResolveHandler . INSTANCE ) ; ValidateOperationHandler validateOperationHandler = ( hostControllerInfo . isMasterDomainController ( ) ) ? ValidateOperationHandler . INSTANCE : ValidateOperationHandler . SLAVE_HC_INSTANCE ; hostRegistration . registerOperationHandler ( ValidateOperationHandler . OPERATION_NAME , validateOperationHandler , validateOperationHandler , false , EntryType . PRIVATE , EnumSet . of ( Flag . READ_ONLY ) ) ; ManagementResourceRegistration sysProps = hostRegistration . registerSubModel ( PathElement . pathElement ( ModelDescriptionConstants . SYSTEM_PROPERTY ) , SYSTEM_PROPERTIES_PROVIDER ) ; sysProps . registerOperationHandler ( SystemPropertyAddHandler . OPERATION_NAME , INSTANCE_WITH_BOOTTIME , INSTANCE_WITH_BOOTTIME , false ) ; sysProps . registerOperationHandler ( SystemPropertyRemoveHandler . OPERATION_NAME , SystemPropertyRemoveHandler . INSTANCE , SystemPropertyRemoveHandler . INSTANCE , false ) ; sysProps . registerReadWriteAttribute ( ModelDescriptionConstants . VALUE , null , SystemPropertyValueWriteAttributeHandler . INSTANCE , CONFIGURATION ) ; sysProps . registerReadWriteAttribute ( ModelDescriptionConstants . BOOT_TIME , null , new WriteAttributeHandlers . ModelTypeValidatingHandler ( ModelType . BOOLEAN ) , CONFIGURATION ) ; ManagementResourceRegistration vault = hostRegistration . registerSubModel ( PathElement . pathElement ( ModelDescriptionConstants . CORE_SERVICE , ModelDescriptionConstants . VAULT ) , VAULT_PROVIDER ) ; VaultAddHandler vah = new VaultAddHandler ( vaultReader ) ; vault . registerOperationHandler ( VaultAddHandler . OPERATION_NAME , vah , vah , false ) ; VaultRemoveHandler vrh = new VaultRemoveHandler ( vaultReader ) ; vault . registerOperationHandler ( VaultRemoveHandler . OPERATION_NAME , vrh , vrh , false ) ; VaultWriteAttributeHandler . INSTANCE . registerAttributes ( vault ) ;

Fix:
hostRegistration . registerOperationHandler ( HostShutdownHandler . OPERATION_NAME , hsh , hsh , EnumSet . of ( HOST_CONTROLLER_ONLY ) ) ;