PyFunceble/prints.py
def _json_print(self):  # pragma: no cover
        """
        Management of the json template.
        """

        if self.output:
            # The given output is not empty.

            if PyFunceble.path.isfile(self.output):
                # The given output already exist.

                # We get the content of the output.
                content = Dict().from_json(File(self.output).read())

                if isinstance(content, list):
                    # The content is a list.

                    # We extend the content with our data to print.
                    content.extend(self.data_to_print)

                    # We format our list.
                    content = List(content).custom_format(Sort.standard)

                    if PyFunceble.CONFIGURATION["hierarchical_sorting"]:
                        # The hierarchical sorting is activated.

                        # We format our content hierarchicaly
                        content = List(content).custom_format(Sort.hierarchical)

                    # We finally save our content into the file.
                    Dict(content).to_json(self.output)
                else:
                    # The content is not a list.

                    # We raise an exception.
                    raise Exception("Output not correctly formatted.")
            else:
                # The given output does not already exist.

                # We save our data to print into the output.
                #
                # Note: We do not have to take care if self.data_to_print is a list
                # formatted or not because this method should not be called if it is
                # not the case.
                Dict(self.data_to_print).to_json(self.output)
        else:
            # The given output is empty.

            # We raise an exception.
            raise Exception("Empty output given.")
def _json_print(self):  # pragma: no cover
        if self.output:
            # The given output is not empty.

            if PyFunceble.path.isfile(self.output):
                # The given output already exist.

                # We get the content of the output.
                content = Dict().from_json(File(self.output).read())

                if isinstance(content, list):
                    # The content is a list.

                    # We extend the content with our data to print.
                    content.extend(self.data_to_print)

                    # We format our list.
                    content = List(content).custom_format(Sort.standard)

                    if PyFunceble.CONFIGURATION["hierarchical_sorting"]:
                        # The hierarchical sorting is activated.

                        # We format our content hierarchicaly
                        content = List(content).custom_format(Sort.hierarchical)

                    # We finally save our content into the file.
                    Dict(content).to_json(self.output)
                else:
                    # The content is not a list.

                    # We raise an exception.
                    raise Exception("Output not correctly formatted.")
            else:
                # The given output does not already exist.

                # We save our data to print into the output.
                #
                # Note: We do not have to take care if self.data_to_print is a list
                # formatted or not because this method should not be called if it is
                # not the case.
                Dict(self.data_to_print).to_json(self.output)
        else:
            # The given output is empty.

            # We raise an exception.
            raise Exception("Empty output given.")
def _json_print ( self ) : # pragma: no cover if self . output : # The given output is not empty. if PyFunceble . path . isfile ( self . output ) : # The given output already exist. # We get the content of the output. content = Dict ( ) . from_json ( File ( self . output ) . read ( ) ) if isinstance ( content , list ) : # The content is a list. # We extend the content with our data to print. content . extend ( self . data_to_print ) # We format our list. content = List ( content ) . custom_format ( Sort . standard ) if PyFunceble . CONFIGURATION [ "hierarchical_sorting" ] : # The hierarchical sorting is activated. # We format our content hierarchicaly content = List ( content ) . custom_format ( Sort . hierarchical ) # We finally save our content into the file. Dict ( content ) . to_json ( self . output ) else : # The content is not a list. # We raise an exception. raise Exception ( "Output not correctly formatted." ) else : # The given output does not already exist. # We save our data to print into the output. # # Note: We do not have to take care if self.data_to_print is a list # formatted or not because this method should not be called if it is # not the case. Dict ( self . data_to_print ) . to_json ( self . output ) else : # The given output is empty. # We raise an exception. raise Exception ( "Empty output given." )
Management of the json template.
Management of the json template .