Jackalope\Transport\Jackrabbit\Client::addVersionLabel PHP Method

addVersionLabel() public method

public addVersionLabel ( $versionPath, $label, $moveLabel )
    public function addVersionLabel($versionPath, $label, $moveLabel)
    {
        $versionPath = $this->encodeAndValidatePathForDavex($versionPath);
        $action = 'add';
        if ($moveLabel) {
            $action = 'set';
        }
        $body = '<D:label xmlns:D="DAV:"><D:' . $action . '><D:label-name>' . $label . '</D:label-name></D:' . $action . '></D:label>';
        $request = $this->getRequest(Request::LABEL, $versionPath);
        $request->setBody($body);
        try {
            $request->execute();
            // errors are checked in request
        } catch (HTTPErrorException $e) {
            if ($e->getCode() == 409) {
                throw new LabelExistsVersionException($e->getMessage());
            } else {
                throw new RepositoryException($e->getMessage());
            }
        }
        return;
    }

Usage Example

 /**
  * @inheritDoc
  */
 public function addVersionLabel($versionPath, $label, $moveLabel)
 {
     $this->transport->addVersionLabel($versionPath, $label, $moveLabel);
 }