Exemplo n.º 1
0
 private function parseDossiersXmlToResources($xml)
 {
     $rootNode = @simplexml_load_string($xml);
     if (!$rootNode) {
         echo $xml;
         throw new RuntimeException("Failed to parse response as XML...\n");
     }
     $resources = array();
     foreach ($rootNode->dossier as $dossierNode) {
         if ($dossierNode->client && $dossierNode->client->eocs) {
             $clientNode = $dossierNode->client;
             $providerNode = $dossierNode->provider;
             foreach ($dossierNode->client->eocs->eoc as $eocNode) {
                 $resource = new Resource();
                 $resource->setType('perinatologie/dossier');
                 $resource->addPropertyValue('reference', $eocNode->reference);
                 $resource->addPropertyValue('client_bsn', $clientNode->bsn);
                 $resource->addPropertyValue('client_birthdate', $clientNode->birthdate);
                 $resource->addPropertyValue('client_displayname', $clientNode->displayname);
                 $resource->addPropertyValue('client_zisnr', $clientNode->zisnr);
                 $resource->addPropertyValue('gravida', $eocNode->gravida);
                 $resource->addPropertyValue('para', $eocNode->para);
                 $resource->addPropertyValue('provider_reference', $providerNode->dbname);
                 $resource->addPropertyValue('provider_apiurl', $providerNode->apiurl);
                 $source = new Source();
                 $source->setApi('v1');
                 $resource->setSource($source);
                 $resources[] = $resource;
             }
         }
     }
     return $resources;
 }
Exemplo n.º 2
0
function loadRegisterXml($filename)
{
    $xml = file_get_contents($filename);
    $resourceNode = @simplexml_load_string($xml);
    if (!$resourceNode) {
        throw new RuntimeException("Failed to parse " . $filename);
    }
    $resource = new Resource();
    $resource->setType('perinatologie/dossier');
    foreach ($resourceNode->property as $propertyNode) {
        $property = new Property((string) $propertyNode['name'], (string) $propertyNode);
        $resource->addProperty($property);
    }
    foreach ($resourceNode->share as $shareNode) {
        $share = new Share();
        $share->setName((string) $shareNode->name);
        $share->setIdentifierType((string) $shareNode->identifier['type']);
        $share->setIdentifier((string) $shareNode->identifier);
        $share->setPermission((string) $shareNode->permission);
        $resource->addShare($share);
    }
    return $resource;
}
Exemplo n.º 3
0
 private function parseResourceXmlToResource($resourceNode)
 {
     $resource = new Resource();
     $resource->setType((string) $resourceNode['type']);
     foreach ($resourceNode->property as $propertyNode) {
         $resource->addPropertyValue($propertyNode['name'], (string) $propertyNode);
     }
     return $resource;
 }