public function delete($name)
    {
        // Get actual name. If "off0" translates to just 0. 
        $name = $this->getName($name);

        // Figure out the key of the object we want to delete.
        // (if numeric value was passed in, turn that into actual key)
        $resourceKey = $name;
        if (is_numeric($name)) {
            $resourceKey = $this->fetchOffsetKey($name);
        }

        // Only mark the content as modified and change count if the delete call found 
        // a resource to remove.
        if ($this->processDelete($resourceKey)) {
            $this->contentModified = true;
            $this->size -= 1;
        }
    }