# File lib/puppet/network/handler/fileserver.rb, line 672
672:             def reclist(abspath, recurse, ignore)
673:                 require 'puppet/file_serving'
674:                 require 'puppet/file_serving/fileset'
675:                 if recurse.is_a?(Fixnum)
676:                     args = { :recurse => true, :recurselimit => recurse, :links => :follow }
677:                 else
678:                     args = { :recurse => recurse, :links => :follow }
679:                 end
680:                 args[:ignore] = ignore if ignore
681:                 fs = Puppet::FileServing::Fileset.new(abspath, args)
682:                 ary = fs.files.collect do |file|
683:                     if file == "."
684:                         file = "/"
685:                     else
686:                         file = File.join("/", file )
687:                     end
688:                     stat = fs.stat(File.join(abspath, file))
689:                     next if stat.nil?
690:                     [ file, stat.ftype ]
691:                 end
692: 
693:                 return ary.compact
694:             end