static void checkBlockedStatus ( JmsDestinationImpl dest ) throws JMSException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( tc , "checkBlockedStatus" , dest ) ; // get the status of the destinations blocked attribute Integer code = dest . getBlockedDestinationCode ( ) ; // check for specific known PSB reason for blockage if ( code == null ) { // default case of null value - don't want to throw exception } else if ( code . equals ( JmsInternalConstants . PSB_REPLY_DATA_MISSING ) ) { // throw specific PSB blocked JMSException throw ( JMSException ) JmsErrorUtils . newThrowable ( JMSException . class , "DESTINATION_BLOCKED_PSBREPLY_CWSIA0284" , new Object [ ] { dest . toString ( ) } , tc ) ; } else { // throw generic blocked JMSException throw ( JMSException ) JmsErrorUtils . newThrowable ( JMSException . class , "DESTINATION_BLOCKED_CWSIA0283" , new Object [ ] { code } , tc ) ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "checkBlockedStatus" ) ; }
This method takes a JmsDestinationImpl object and checks the blocked destination code . If the code signals that the destination is blocked a suitable JMSException will be thrown tailored to the code received .