public static Map < String , Collection < String > > writeResourcesToDiskRepo ( Map < String , Collection < String > > downloaded , File toDir , Map < String , List < List < RepositoryResource > > > installResources , String productVersion , EventManager eventManager , boolean defaultRepo ) throws InstallException { int progress = 10 ; int interval1 = installResources . size ( ) == 0 ? 90 : 90 / installResources . size ( ) ; for ( List < List < RepositoryResource > > targetList : installResources . values ( ) ) { for ( List < RepositoryResource > mrList : targetList ) { int interval2 = mrList . size ( ) == 0 ? interval1 : interval1 / mrList . size ( ) ; for ( RepositoryResource installResource : mrList ) { try { writeResourcesToDiskRepo ( downloaded , toDir , installResource , eventManager , progress += interval2 ) ; } catch ( InstallException e ) { throw e ; } catch ( Exception e ) { throw ExceptionUtils . createFailedToDownload ( installResource , e , toDir ) ; } } } } return downloaded ; }
The function writes the resources to the downloaded disk repo