public function updateContent($data, bool $convert = false) {
        if (empty($data)) {
            return;
        }
        $this->loadMetadata();
        if ($this->isA('http://www.w3.org/ns/ldp#NonRDFSource')) {
            $request = new Request('PUT', $this->getUri());
            $request = Fedora::attachData($request, $data);
            $this->fedora->sendRequest($request);
        } else if ($convert) {
            $aclRules  = $this->getAcl()->getRules(false);
            $this->uri = $this->fedora->sanitizeUri($this->uri);
            $this->delete(true);
            $newRes    = $this->fedora->createResource($this->metadata, $data, $this->uri, 'PUT');
            $this->uri = $newRes->getUri();
            // restore acl rules
            foreach ($aclRules as $rule) {
                $rule->save();
            }
        } else {
            throw new RuntimeException('Resource is not a binary one. Turn on the $convert parameter if you are sure what you are doing.');
        }
        $this->loadMetadata(true);
    }