eric6/ThirdParty/Send2Trash/send2trash/exceptions.py

Wed, 13 Jul 2022 15:34:50 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 13 Jul 2022 15:34:50 +0200
branch
with_python2
changeset 9225
bf799f79455c
parent 6942
2602857055c5
permissions
-rw-r--r--

Revisions <no_multi_processing, Variables Viewer, with_python2> closed.

from __future__ import unicode_literals

import errno
from .compat import PY3

if PY3:
    _permission_error = PermissionError
else:
    _permission_error = OSError

class TrashPermissionError(_permission_error):
    """A permission error specific to a trash directory.

    Raising this error indicates that permissions prevent us efficiently
    trashing a file, although we might still have permission to delete it.
    This is *not* used when permissions prevent removing the file itself:
    that will be raised as a regular PermissionError (OSError on Python 2).

    Application code that catches this may try to simply delete the file,
    or prompt the user to decide, or (on Freedesktop platforms), move it to
    'home trash' as a fallback. This last option probably involves copying the
    data between partitions, devices, or network drives, so we don't do it as
    a fallback.
    """
    def __init__(self, filename):
        _permission_error.__init__(self, errno.EACCES, "Permission denied",
                                   filename)

eric ide

mercurial