private static function getNamingTable($nameurl) { $nametbl = null; $nrequest = new NamingRequest(NamingRequest::reqVersion); $request = new Request($nrequest->toXMLString()); $set = new RequestSet(WebtopNaming::NAMING_SERVICE); $set->addRequest($request); // try { $responses = PLLClient::sendURLRequestSet($nameurl, $set); if (count($responses) != 1) { throw new Exception("Unexpected response"); } $res = $responses[0]; $nres = NamingResponse::parseXML($res->getContent()); if ($nres->getException() != null) { throw new Exception($nres->getException()); } $nametbl = $nres->getNamingTable(); // } catch (SendRequestException sre) { // debug.error("Naming service connection failed for " + nameurl, sre); // } catch (Exception e) { // debug.error("getNamingTable: ", e); // } return $nametbl; }
private static function send($url, $cookies, RequestSet $set, $cookieTable) { $bits = parse_url($url); $host = $bits['host']; $port = isset($bits['port']) ? $bits['port'] : 80; $path = isset($bits['path']) ? $bits['path'] : '/'; $conn = new HttpClient($host, $port); $conn->setCookies($cookieTable); $conn->setContentType("text/xml;charset=UTF-8"); // Output ... $xml = $set->toXMLString(); if (!$conn->post($path, $xml)) { throw new Exception("PLLClient send exception"); } // Input ... $in_string = $conn->getContent(); $cookieTable = $conn->getCookies(); $resset = ResponseSet::parseXML($in_string); return $resset->getResponses(); }