<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def append(self, mode="a", encoding=Constants.default_codec, errors=Constants.codec_error):
 """ Appends content to defined file. :param mode: File write mode. :type mode: unicode :param encoding: File encoding codec. :type encoding: unicode :param errors: File encoding errors handling. :type errors: unicode :return: Method success. :rtype: bool """


        if foundations.strings.is_website(self.__path):
            raise foundations.exceptions.UrlWriteError(
                "!> {0} | '{1}' url is not writable!".format(self.__class__.__name__, self.__path))

        if foundations.common.path_exists(self.__path):
            if not is_writable(self.__path):
                raise foundations.exceptions.FileWriteError(
                    "!> {0} | '{1}' file is not writable!".format(self.__class__.__name__, self.__path))

        with codecs.open(self.__path, mode, encoding, errors) as file:
            LOGGER.debug("> Appending to '{0}' file content.".format(self.__path))
            for line in self.__content:
                file.write(line)
            return True
        return False