def get_all_attributes(self):
        """
        Returns all sections attributes.

        Usage::

            >>> content = ["[Section A]\\n", "; Comment.\\n", "Attribute 1 = \\"Value A\\"\\n", "\\n", \
"[Section B]\\n", "Attribute 2 = \\"Value B\\"\\n"]
            >>> sections_file_parser = SectionsFileParser()
            >>> sections_file_parser.content = content
            >>> sections_file_parser.parse()
            <foundations.parsers.SectionsFileParser object at 0x845683844>
            >>> sections_file_parser.get_all_attributes()
            OrderedDict([(u'Section A|Attribute 1', u'Value A'), (u'Section B|Attribute 2', u'Value B')])
            >>> sections_file_parser.preserve_order=False
            >>> sections_file_parser.get_all_attributes()
            {u'Section B|Attribute 2': u'Value B', u'Section A|Attribute 1': u'Value A'}

        :return: All sections / files attributes.
        :rtype: OrderedDict or dict
        """

        all_attributes = OrderedDict() if self.__preserve_order else dict()

        for attributes in self.__sections.itervalues():
            for attribute, value in attributes.iteritems():
                all_attributes[attribute] = value
        return all_attributes