Exemple #1
0
 public function retrieveOrganizations()
 {
     /* Request a Security Token for the Discovery Service */
     $securityToken = $this->authentication->getDiscoverySecurityToken();
     /* Generate a Soap Request for the Retrieve Organization Request method of the Discovery Service */
     $discoverySoapRequest = $this->generateSoapRequest($this->settings->discoveryUrl, $this->soapActions->getSoapAction('discovery', 'Execute'), $securityToken, SoapRequestsGenerator::generateRetrieveOrganizationRequest());
     $discovery_data = self::getSoapResponse($this->settings->discoveryUrl, $discoverySoapRequest);
     $organizationDetails = array();
     $discoveryDOM = new DOMDocument();
     $discoveryDOM->loadXML($discovery_data);
     if ($discoveryDOM->getElementsByTagName('OrganizationDetail')->length > 0) {
         foreach ($discoveryDOM->getElementsByTagName('OrganizationDetail') as $organizationNode) {
             $organization = array();
             foreach ($organizationNode->getElementsByTagName('Endpoints')->item(0)->getElementsByTagName('KeyValuePairOfEndpointTypestringztYlk6OT') as $endpointDOM) {
                 $organization["Endpoints"][$endpointDOM->getElementsByTagName('key')->item(0)->textContent] = $endpointDOM->getElementsByTagName('value')->item(0)->textContent;
             }
             if ($organizationNode->getElementsByTagName('FriendlyName')->length > 0) {
                 $organization["FriendlyName"] = $organizationNode->getElementsByTagName('FriendlyName')->item(0)->textContent;
             }
             if ($organizationNode->getElementsByTagName('OrganizationId')->length > 0) {
                 $organization["OrganizationId"] = $organizationNode->getElementsByTagName('OrganizationId')->item(0)->textContent;
             }
             if ($organizationNode->getElementsByTagName('OrganizationVersion')->length > 0) {
                 $organization["OrganizationVersion"] = $organizationNode->getElementsByTagName('OrganizationVersion')->item(0)->textContent;
             }
             if ($organizationNode->getElementsByTagName('State')->length > 0) {
                 $organization["State"] = $organizationNode->getElementsByTagName('State')->item(0)->textContent;
             }
             if ($organizationNode->getElementsByTagName('UniqueName')->length > 0) {
                 $organization["UniqueName"] = $organizationNode->getElementsByTagName('UniqueName')->item(0)->textContent;
             }
             if ($organizationNode->getElementsByTagName('UrlName')->length > 0) {
                 $organization["UrlName"] = $organizationNode->getElementsByTagName('UrlName')->item(0)->textContent;
             }
             array_push($organizationDetails, $organization);
         }
     }
     return $organizationDetails;
 }