summaryrefslogtreecommitdiff
path: root/TAO/tao/IFR_Client
diff options
context:
space:
mode:
authorelliott_c <elliott_c@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-12-17 16:44:01 +0000
committerelliott_c <elliott_c@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-12-17 16:44:01 +0000
commitbb38ad23f75fcab3906bfc47f55ca1a8718c1876 (patch)
treec1e68e38d6c9bf33318b45df3ea47567439a03e3 /TAO/tao/IFR_Client
parente1c50a3574fe44616538ab725051e7bdb654015d (diff)
downloadATCD-bb38ad23f75fcab3906bfc47f55ca1a8718c1876.tar.gz
ChangeLogTag: Fri Dec 17 10:38:53 2004 Chad Elliott <elliott_c@ociweb.com>
Diffstat (limited to 'TAO/tao/IFR_Client')
-rw-r--r--TAO/tao/IFR_Client/IFR_Client_Adapter_Impl.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/TAO/tao/IFR_Client/IFR_Client_Adapter_Impl.cpp b/TAO/tao/IFR_Client/IFR_Client_Adapter_Impl.cpp
index d2abdc57ad9..c9c4e8da6ba 100644
--- a/TAO/tao/IFR_Client/IFR_Client_Adapter_Impl.cpp
+++ b/TAO/tao/IFR_Client/IFR_Client_Adapter_Impl.cpp
@@ -174,10 +174,28 @@ TAO_IFR_Client_Adapter_Impl::create_operation_list (
TAO::Unknown_IDL_Type (params[i].type.in ()));
value.replace (unk);
+ // Convert the parameter mode to an arg mode
+ CORBA::Flags flags = 0;
+ switch(params[i].mode)
+ {
+ case CORBA::PARAM_IN:
+ flags = CORBA::ARG_IN;
+ break;
+ case CORBA::PARAM_OUT:
+ flags = CORBA::ARG_OUT;
+ break;
+ case CORBA::PARAM_INOUT:
+ flags = CORBA::ARG_INOUT;
+ break;
+ default:
+ // Shouldn't happen
+ ACE_THROW (CORBA::INTERNAL());
+ }
+
// Add an argument to the NVList.
result->add_value (params[i].name.in (),
value,
- params[i].mode);
+ flags);
}
}