@ Override public AbstractPipelineOutput execute ( final AbstractPipelineInput input ) throws DITAOTException { final String transtype = input . getAttribute ( ANT_INVOKER_EXT_PARAM_TRANSTYPE ) ; // change to xml property final ChunkMapReader mapReader = new ChunkMapReader ( ) ; mapReader . setLogger ( logger ) ; mapReader . setJob ( job ) ; mapReader . supportToNavigation ( INDEX_TYPE_ECLIPSEHELP . equals ( transtype ) ) ; if ( input . getAttribute ( ROOT_CHUNK_OVERRIDE ) != null ) { mapReader . setRootChunkOverride ( input . getAttribute ( ROOT_CHUNK_OVERRIDE ) ) ; } try { final Job . FileInfo in = job . getFileInfo ( fi -> fi . isInput ) . iterator ( ) . next ( ) ; final File mapFile = new File ( job . tempDirURI . resolve ( in . uri ) ) ; if ( transtype . equals ( INDEX_TYPE_ECLIPSEHELP ) && isEclipseMap ( mapFile . toURI ( ) ) ) { for ( final FileInfo f : job . getFileInfo ( ) ) { if ( ATTR_FORMAT_VALUE_DITAMAP . equals ( f . format ) ) { mapReader . read ( new File ( job . tempDir , f . file . getPath ( ) ) . getAbsoluteFile ( ) ) ; } } } else { mapReader . read ( mapFile ) ; } } catch ( final RuntimeException e ) { throw e ; } catch ( final Exception e ) { logger . error ( e . getMessage ( ) , e ) ; } final Map < URI , URI > changeTable = mapReader . getChangeTable ( ) ; if ( hasChanges ( changeTable ) ) { final Map < URI , URI > conflicTable = mapReader . getConflicTable ( ) ; updateList ( changeTable , conflicTable , mapReader ) ; updateRefOfDita ( changeTable , conflicTable ) ; } return null ; }
Entry point of chunk module .