'Re-calculate cached effects of \'stat\'.  To refresh information on this
path after you know the filesystem may have changed, call this method.
@param reraise: a boolean.  If true, re-raise exceptions from
L{os.stat}; otherwise, mark this path as not existing, and remove
any cached stat information.
@raise Exception: If C{reraise} is C{True} and an exception occurs
while reloading metadata.'

def restat(self, reraise=True):

    try:
        self._statinfo = stat(self.path)
    except OSError:
        self._statinfo = 0
        if reraise:
            raise
