blob: f9c7edaf49b6ac716e010fe8c2e8f4c7ae4dc45c (
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
|
/**
* @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
|