public function getAccessibleWorkspaceNames()
{
$request = $this->getRequest(Request::PROPFIND, $this->server);
$request->setBody($this->buildPropfindRequest(array('D:workspace')));
$request->setDepth(1);
$dom = $request->executeDom();
$workspaces = array();
foreach ($dom->getElementsByTagNameNS(self::NS_DAV, 'workspace') as $value) {
if (!empty($value->nodeValue)) {
$workspaces[] = substr(trim($value->nodeValue), strlen($this->server), -1);
}
}
return array_unique($workspaces);
}