def deleteKey(self, bucketName, keyName):
        """Delete a key. Throws exceptions if the key doesn't exist or can't be deleted."""
        with self.state_.lock:
            if bucketName not in self.state_.buckets_:
                self.state_.createBucket(bucketName, self.credentials_)

            self.state_.validateAccess(bucketName, self.credentials_)

            if keyName not in self.state_.buckets_[bucketName]:
                raise S3Interface.KeyNotFound(bucketName, keyName)

            del self.state_.buckets_[bucketName][keyName]
dataset/ETHPy150Open ufora/ufora/ufora/distributed/S3/InMemoryS3Interface.py/InMemoryS3Interface.deleteKey/original