diff options
Diffstat (limited to 'modules/CIAO/connectors/dds4ccm/idl/dds4ccm_MultiUpdater.idl3p')
-rw-r--r-- | modules/CIAO/connectors/dds4ccm/idl/dds4ccm_MultiUpdater.idl3p | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/modules/CIAO/connectors/dds4ccm/idl/dds4ccm_MultiUpdater.idl3p b/modules/CIAO/connectors/dds4ccm/idl/dds4ccm_MultiUpdater.idl3p new file mode 100644 index 00000000000..f9c7edaf49b --- /dev/null +++ b/modules/CIAO/connectors/dds4ccm/idl/dds4ccm_MultiUpdater.idl3p @@ -0,0 +1,40 @@ +/** + * @file dds4CCM_MultiUpdater.idl3p + * + */ + +#ifndef DDS4CCM_MULTIUPDATER_IDL3P +#define DDS4CCM_MULTIUPDATER_IDL3P + +#include "dds4ccm/idl/dds4ccm_Base.idl3" + +module CCM_DDS +{ + interface MultiUpdater<typename T> { + typedef sequence<T> T$Seq; + unsigned long create (in T$Seq instances) // returns nb of created instances + raises (AlreadyCreated, + InternalError); + + unsigned long update (in T$Seq instances) // returns nb of updated instances + raises (NonExistent, + InternalError); + unsigned long delete (in T$Seq instances) // returns nb of deleted instances + raises (NonExistent, + InternalError); + readonly attribute boolean is_lifecycle_checked; + attribute boolean is_coherent_write; + // behaviour: + // - exceptions AlreadyCreated or NonExistent are raised only if + // is_lifecycle_checked + // - global check is performed before actual write or dispose + // (in case of error, all the erroneous instances are reported + // in the exception) + // - attempt to write or dispose is stopped at the first error + // - if is_coherent_write, write orders are placed betwen begin/end + // coherent updates (even if an error occurs) + }; + +}; + +#endif
\ No newline at end of file |