question: private List < Map < String , Object > > globFiles ( final CWLJob job , final File workingDir , HashAlgorithm hashAlgorithm , final CWLOutputPort outputPort , Object outputBinding ) throws CWLGlobException { if ( outputPort . getOutputBinding ( ) != null ) { outputBinding = outputPort . getOutputBinding ( ) ; } if ( outputBinding == null ) { logger . debug ( "Output binding is empty. Skip output extraction." ) ; return null ; } Object glob = CWLBindingHelper . getGlob ( outputBinding ) ; if ( glob == null ) { logger . debug ( "GLOB does not exist. Skip output extraction." ) ; return null ; } Set < File > files = globService . glob ( job , workingDir , glob ) ; if ( files == null ) { logger . info ( "Glob service didn't find any files." ) ; return null ; } logger . debug ( "Glob service returned result {}" , files ) ; final List < Map < String , Object > > result = new ArrayList < > ( ) ; for ( File file : files ) { try { result . add ( formFileValue ( file , job , outputBinding , outputPort , hashAlgorithm ) ) ; } catch ( Exception e ) { logger . error ( "Failed to extract outputs" , e ) ; throw new CWLGlobException ( "Failed to extract outputs." , e ) ; } } return result ; }
target:  Extracts files from a directory based on GLOB expression