static void parseProcessIdEnvironmentElement ( XMLExtendedStreamReader reader , ModelNode coreEnvironmentAdd ) throws XMLStreamException { // no attributes if ( reader . getAttributeCount ( ) > 0 ) { throw unexpectedAttribute ( reader , 0 ) ; } // elements boolean encountered = false ; while ( reader . hasNext ( ) && reader . nextTag ( ) != END_ELEMENT ) { final Element element = Element . forName ( reader . getLocalName ( ) ) ; switch ( element ) { case UUID : if ( encountered ) { throw unexpectedElement ( reader ) ; } encountered = true ; if ( reader . getAttributeCount ( ) > 0 ) { throw unexpectedAttribute ( reader , 0 ) ; } coreEnvironmentAdd . get ( TransactionSubsystemRootResourceDefinition . PROCESS_ID_UUID . getName ( ) ) . set ( true ) ; requireNoContent ( reader ) ; break ; case SOCKET : { if ( encountered ) { throw unexpectedElement ( reader ) ; } encountered = true ; parseSocketProcessIdElement ( reader , coreEnvironmentAdd ) ; break ; } default : throw unexpectedElement ( reader ) ; } } if ( ! encountered ) { throw missingOneOf ( reader , EnumSet . of ( Element . UUID , Element . SOCKET ) ) ; } }
Handle the process - id child elements