public void cloneActionState ( final ActionState source , final ActionState target ) { source . getActionList ( ) . forEach ( a -> target . getActionList ( ) . add ( a ) ) ; source . getExitActionList ( ) . forEach ( a -> target . getExitActionList ( ) . add ( a ) ) ; source . getAttributes ( ) . asMap ( ) . forEach ( ( k , v ) -> target . getAttributes ( ) . put ( k , v ) ) ; source . getTransitionSet ( ) . forEach ( t -> target . getTransitionSet ( ) . addAll ( t ) ) ; val field = ReflectionUtils . findField ( target . getExceptionHandlerSet ( ) . getClass ( ) , "exceptionHandlers" ) ; ReflectionUtils . makeAccessible ( field ) ; val list = ( List < FlowExecutionExceptionHandler > ) ReflectionUtils . getField ( field , target . getExceptionHandlerSet ( ) ) ; list . forEach ( h -> source . getExceptionHandlerSet ( ) . add ( h ) ) ; target . setDescription ( source . getDescription ( ) ) ; target . setCaption ( source . getCaption ( ) ) ; }
Clone action state .