static void loadSchemas ( MessageStore msgStore , long [ ] schemaIds ) throws MessageRestoreFailedException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( tc , "loadSchemas" ) ; try { // Get the SchemaStore reference, creating a new one if necessary SchemaStoreItemStream schemaStore = getSchemaStore ( msgStore ) ; // Check for any unknown schemas for ( int i = 0 ; i < schemaIds . length ; i ++ ) { if ( JMFRegistry . instance . retrieve ( schemaIds [ i ] ) == null ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) SibTr . debug ( tc , "Restoring schema:" + schemaIds [ i ] ) ; JMFRegistry . instance . register ( schemaStore . findSchema ( schemaIds [ i ] ) ) ; } } } catch ( MessageStoreException e ) { FFDCFilter . processException ( e , "loadSchemas" , "105" ) ; throw new MessageRestoreFailedException ( e ) ; } catch ( JMFException e ) { FFDCFilter . processException ( e , "loadSchemas" , "108" ) ; throw new MessageRestoreFailedException ( e ) ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "loadSchemas" ) ; }
decode the message that are not already in the JMF registry must be reloaded