Returns the DNAnexus file properties for all FASTQ files in the project that match the 
        specified barcode, or all FASTQ files if not barcode is specified.
  
        Args:
            barcode: `str`. If set, then only FASTQ file properties for FASTQ files having the specified barcode are returned.
  
        Returns:
            `dict`. Keys are the FASTQ file DXFile objects; values are the dict of associated properties 
            on DNAnexus on the file. In addition to the properties on the file in DNAnexus, an 
            additional property is added here called 'fastq_file_name'.
  
        Raises:
            dnanexus_utils.FastqNotFound exception if no FASTQ files were found.

def get_fastq_files_props(self,barcode=None):
        """
        Returns the DNAnexus file properties for all FASTQ files in the project that match the 
        specified barcode, or all FASTQ files if not barcode is specified.
  
        Args:
            barcode: `str`. If set, then only FASTQ file properties for FASTQ files having the specified barcode are returned.
  
        Returns:
            `dict`. Keys are the FASTQ file DXFile objects; values are the dict of associated properties 
            on DNAnexus on the file. In addition to the properties on the file in DNAnexus, an 
            additional property is added here called 'fastq_file_name'.
  
        Raises:
            dnanexus_utils.FastqNotFound exception if no FASTQ files were found.
        """
        fastqs = self.get_fastq_dxfile_objects(barcode=barcode)   #FastqNotFound Exception here if no FASTQs found for specified barcode.
        dico = {}
        for f in fastqs:
            #props = dxpy.api.file_describe(object_id=f.id, input_params={"fields": {"properties": True}})["properties"]
            props = f.get_properties()
            dico[f] = props
            dico[f]["fastq_file_name"] = f.name
        return dico