private void readState ( GetField fields ) throws IOException { //get caller principal callerPrincipal = ( WSPrincipal ) fields . get ( CALLER_PRINCIPAL , null ) ; //get boolean marking if subjects are equal subjectsAreEqual = fields . get ( SUBJECTS_ARE_EQUAL , false ) ; //only deserialize invocation principal if it's different from the caller if ( ! subjectsAreEqual ) { //get invocation principal invocationPrincipal = ( WSPrincipal ) fields . get ( INVOCATION_PRINCIPAL , null ) ; } else { invocationPrincipal = callerPrincipal ; } jaasLoginContextEntry = ( String ) fields . get ( JAAS_LOGIN_CONTEXT , null ) ; callerSubjectCacheKey = ( String ) fields . get ( CALLER_SUBJECT_CACHE_KEY , null ) ; invocationSubjectCacheKey = ( String ) fields . get ( INVOCATION_SUBJECT_CACHE_KEY , null ) ; }
Read the security context