def _parse_file(self, sar_parts):
        """
        Parses splitted file to get proper information from split parts.
            :param sar_parts: Array of SAR file parts
            :return: ``Dictionary``-style info (but still non-parsed) \
                from SAR file, split into sections we want to check
        """
        usage = {}
        output = {}

        # If sar_parts is a list
        if type(sar_parts) is list:
            restart_pattern = re.compile(PATTERN_RESTART)

            """ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! """
            """              ********** ATTENTION *******            """
            """ THERE CAN BE MORE THAN ONE SAME SECTION IN ONE FILE  """
            """ IF SYSTEM WAS REBOOTED DURING THE DAY                """
            """ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! """

            for PATTERNSNAME in ALL_PATTERNS:
                patterns = ALL_PATTERNS[PATTERNSNAME]
                rgxpattern = re.compile(patterns['PATTERN'])

                for part in sar_parts:

                    if rgxpattern.search(part):

                        if PATTERNSNAME in usage:
                            usage[PATTERNSNAME] += '\n' + part
                        else:
                            usage[PATTERNSNAME] = part
                            try:
                                first_line = part.split('\n')[0]
                            except IndexError:
                                first_line = part

                            self.__fields[PATTERNSNAME] = self.__find_column(patterns['FIELDS'], first_line)

                    # Try to match restart time
                    if restart_pattern.search(part):
                        pieces = part.split()
                        self.__restart_times.append(pieces[0])
                        del pieces

            del sar_parts

            # Now we have parts pulled out and combined, do further
            # processing.
            for PATTERNSNAME in ALL_PATTERNS:
                patterns = ALL_PATTERNS[PATTERNSNAME]
                output[PATTERNSNAME] = self.__split_info(usage[PATTERNSNAME], PATTERNSNAME, patterns)
            del usage

            return output

        return output
Parses splitted file to get proper information from split parts.
            :param sar_parts: Array of SAR file parts
            :return: ``Dictionary``-style info (but still non-parsed) \
                from SAR file, split into sections we want to check