question: private String processLogoutRequest ( LogoutState t , LogoutRequest logoutRequest , SessionManager sessionManager ) throws SamlServiceException { String sessionId = null ; List < SessionIndex > sessionList = logoutRequest . getSessionIndexes ( ) ; Validate . notNull ( sessionList , "sessionList" ) ; Validate . isTrue ( sessionList . size ( ) > 0 ) ; for ( SessionIndex sessionIndex : sessionList ) { Validate . notNull ( sessionIndex ) ; String participantSession = sessionIndex . getSessionIndex ( ) ; Validate . notNull ( participantSession , "participantSession" ) ; Session session = sessionManager . getByParticipant ( participantSession ) ; if ( session == null ) { throw new SamlServiceException ( "Server session not found" ) ; } if ( ! session . containsSessionParticipantUrl ( t . getIssuerValue ( ) ) ) { throw new SamlServiceException ( "Issuer URL does not match session participant URL" ) ; } if ( sessionId == null ) { sessionId = session . getId ( ) ; } else { if ( ! sessionId . equals ( session . getId ( ) ) ) { throw new SamlServiceException ( "Participant requested multiple server sessions to be terminated" ) ; } } } return sessionId ; }
target:  Process LogoutRequest return the session found or throw SamlServiceException