summaryrefslogtreecommitdiff
path: root/TAO/CIAO/DAnCE/Old_Config_Handlers/IAD_Handler.cpp
blob: e75292e2fcb0654c45a6df57f630db48484cfe41 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
//$Id$

#include "tao/Exception.h"
#include "ace/Auto_Ptr.h"
#include "ace/Log_Msg.h"
#include "Property_Handler.h"
#include "Requirement_Handler.h"
#include "NIA_Handler.h"
#include "IAD_Handler.h"
#include "Utils.h"
#include "Process_Element.h"
#include <iostream>
#include <string>

BEGIN_DEPLOYMENT_NAMESPACE

/// handle the package configuration and populate it
void IAD_Handler::process_ImplementationArtifactDescription
(::Deployment::ImplementationArtifactDescription &iad)
{
  for (DOMNode* node = this->iter_->nextNode();
       node != 0;
       node = this->iter_->nextNode())
    {
      XStr node_name (node->getNodeName());

      if (node_name == XStr 
             (ACE_TEXT ("Deployment:ImplementationArtifactDescription")))
        {
        }
      else if
        (CIAO::Config_Handler::Utils::process_string 
              (this->iter_, node_name, "label", iad.label));
      else if
        (CIAO::Config_Handler::Utils::process_string 
              (this->iter_, node_name, "UUID", iad.UUID));
      else if
        (CIAO::Config_Handler::Utils::process_string_seq 
              (this->iter_, node_name, "location", 
               iad.location));
      else if
        (process_sequence_common<Deployment::Property>
           (this->doc_, this->iter_, node,
            node_name, "execParameter", iad.execParameter,
            &Property_Handler::process_Property,
            this->id_map_));
      else if
        (process_sequence_common<Deployment::Requirement>
           (node->getOwnerDocument(), this->iter_, node,
            node_name, "deployRequirement", iad.deployRequirement,
            &Requirement_Handler::process_Requirement,
            this->id_map_));
      else if (iad.dependsOn.length () == 0)
        ;
      /*
      else if
        (process_sequence_remote<Deployment::NamedImplementationArtifact, 
                                 NIA_Handler>
           (this->doc_, this->iter_, node,
            node_name, "dependsOn", iad.dependsOn,
            &NIA_Handler::process_NamedImplementationArtifact, this->id_map_));
      */
      else if
        (process_sequence_common<Deployment::Property>
           (this->doc_, this->iter_, node,
            node_name, "infoProperty", iad.infoProperty,
            &Property_Handler::process_Property,
            this->id_map_));
      else
        {
          this->iter_->previousNode ();
          return;
        }
    }
  return;
}

END_DEPLOYMENT_NAMESPACE