summaryrefslogtreecommitdiff
path: root/modules/CIAO/tools/Config_Handlers/RT-CCM/CLA_Handler.cpp
blob: d5053a6dea60d739d6e9474ed58096eba540d214 (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
// $Id$Exp

#include "CLA_Handler.h"
#include "CIAOServerResources.hpp"

namespace CIAO
{
  namespace Config_Handlers
  {
    bool CLA_Handler::commandline_arguments (const ServerResourcesDef &src,
                                             ::CIAO::DAnCE::CommandlineArgs &dest)
    {
      ServerCmdlineOptions sco = src.cmdline();

      for(ServerCmdlineOptions::arg_iterator loc = sco.begin_arg();
          loc != sco.end_arg();
          loc++)
        {
          CORBA::ULong len = dest.length();

          dest.length(len+1);

          dest[len] = CORBA::string_dup (loc->c_str ());
        }

      return true;
    }

    ServerCmdlineOptions
    CLA_Handler::commandline_argument (const CIAO::DAnCE::CommandlineArgs &src)
    {
      ServerCmdlineOptions co;

      for  (CORBA::ULong i = 0;
            i < src.length ();
            ++i)
        {
          co.add_arg (src[i]);
        }

      return co;
    }
  }
}