Commit 7d9011d
authored
Generate code for interfaces and support
* Add builtin `@feed` annotation (#435)
* Refs #22761. Add builtin `@feed` annotation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22761. Add auxiliary STG utilities to Operation class.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22761. Add auxiliary STG utilities to Param class.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Generate type definitions for exceptions (#436)
* Refs #22768. Added test file for exceptions.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Add new flag to context.
In order to know that at least one exception is to be generated.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Generate exceptions on main header file.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Generate serialization code for exceptions.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Serialization of exception message.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Update IDL parser.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Mark exceptions as DLL API.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Apply suggestion.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22768. Update submodules.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Generate code for interfaces in header files (#447)
* Refs #22909. Add file to test interfaces generation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Add generation of interfaces to TypesHeader template.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Fail for output feed parameters.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Add include directives for input feed.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Add include directives for output feed.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Add include directives for futures.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Address review comment.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Fix namespace.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22909. Update test submodule.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Generate request / reply data structures (#451)
* Refs #22917. Add check method in Context.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22917. Set scope when creating interfaces.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22917. Generate basic details file.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22917. Generate Reply struct.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22917. Generate Request struct.
* Refs #22917. Generate operation details.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22917. Include interface details in `TypesCdrAuxHeader`.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Generate ServiceTypeSupport for interfaces (#459)
* Refs #22996. Skeleton for TypesCdrAuxHeaderImpl.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Added code to get reply type.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Added Operation `getOutTypeCode` and `getResultTypeCode`
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Added typecode for Exception.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Generate serialization code for replies.
* Refs #22996. Generate serialization code for operation inputs.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Generate serialization code for input feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Generate serialization code for requests.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Generate code in PubSubTypeHeader.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Skeleton for code generation in PubSubTypeSource.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #22996. Code generation in PubSubTypeSource.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Generate code for interface clients (#464)
* Refs #23017. Add virtual destructor to interface abstract class.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Skeleton for client creation code.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Skeleton for client class.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Generate processing thread code.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Add `process_reply` implementation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Code for basic requests.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Improve linters.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Code for basic replies.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Add support for operation exceptions.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Skeleton for output feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Generate code for input feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Add cancellation logic to output feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Validation and exceptions in output feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Initial implementation for `read` methods.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Linters.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Improve cancel method.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Process values in output feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Return values before exception.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Exceptions finish the feed instead of cancelling it.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Process incoming exceptions in output feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Fail when reply is for a different operation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Add feed cancellation to request type.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Implement feed cancellation on client reader.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Fix atomic initialization.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23017. Make generated code compatible with C++11.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Generate code for interface servers (#465)
* Refs #23069. Skeleton for server creation code.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Skeleton for server class.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Initial implementation for run and stop.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Request validation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Initial processing code.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Prepare method per operation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Thread pool implementation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Generate operation prototypes.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Generate operation empty implementations.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Generate skeleton for calling operations.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Code for calling basic operations.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Code for handling user exceptions.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Code for output feed writers.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Code for handling output feed operations.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Refactor to improve readability.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Generate code to handle output feed cancellation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Fix client code for output feed cancellation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Infrastructure for input feed processing.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Generate code for input feed readers.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Improve readability.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Code for operations with input feeds.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Generate declatation of implementation interface.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. ServerLogic depends on implementation interface.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Generate empty implementation interface.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Fix linters.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Avoid processing `feed_cancel_` when not generated.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Log error when trying to cancel a non-feed request.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23069. Cancel requests before terminating thread pool.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23079. Change dll export macro.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23079. Remove unnecessary namespace aliasing.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23079. Remove detail namespace in server implementation.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23079. Avoid nested structures (not supported by Swig).
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Fix build after rebase.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Update dds-types-test submodule.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Add created interfaces to context.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Fix generation of interfaces with inheritance.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Avoid generation of code for nested interfaces.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Fix build with non-namespaced interfaces.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Do not generate type support for nested.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Add IDL from review.
* Refs #23153. Filter replies from different writers.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Always generate PubSubTypes.
This fixes link issues when we have an IDL that includes another IDL where all the structures are declared as nested.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Fix generation of `using namespace ...`
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Fix generation of test code.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
* Refs #23153. Update submodules.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
---------
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>@nested (#470)1 parent 93e08c0 commit 7d9011d
File tree
27 files changed
+3480
-55
lines changed- src/main/java/com/eprosima
- fastcdr/idl/templates
- fastdds
- idl
- grammar
- templates
- thirdparty
27 files changed
+3480
-55
lines changedLines changed: 32 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 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 | + | |
17 | 49 | | |
18 | 50 | | |
19 | 51 | | |
| |||
Lines changed: 96 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
36 | 39 | | |
37 | 40 | | |
38 | 41 | | |
| |||
54 | 57 | | |
55 | 58 | | |
56 | 59 | | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
57 | 73 | | |
58 | 74 | | |
59 | 75 | | |
| |||
108 | 124 | | |
109 | 125 | | |
110 | 126 | | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
111 | 191 | | |
112 | 192 | | |
113 | 193 | | |
114 | 194 | | |
115 | 195 | | |
116 | | - | |
| 196 | + | |
117 | 197 | | |
118 | 198 | | |
| 199 | + | |
119 | 200 | | |
120 | 201 | | |
121 | 202 | | |
122 | 203 | | |
123 | 204 | | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
124 | 211 | | |
125 | 212 | | |
126 | 213 | | |
| |||
849 | 936 | | |
850 | 937 | | |
851 | 938 | | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
| 946 | + | |
852 | 947 | | |
853 | 948 | | |
854 | 949 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
802 | 802 | | |
803 | 803 | | |
804 | 804 | | |
| 805 | + | |
805 | 806 | | |
806 | 807 | | |
807 | 808 | | |
808 | 809 | | |
| 810 | + | |
| 811 | + | |
| 812 | + | |
| 813 | + | |
| 814 | + | |
809 | 815 | | |
810 | 816 | | |
811 | 817 | | |
| |||
1014 | 1020 | | |
1015 | 1021 | | |
1016 | 1022 | | |
1017 | | - | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
| 1031 | + | |
1018 | 1032 | | |
1019 | 1033 | | |
1020 | 1034 | | |
| |||
1030 | 1044 | | |
1031 | 1045 | | |
1032 | 1046 | | |
1033 | | - | |
| 1047 | + | |
| 1048 | + | |
| 1049 | + | |
1034 | 1050 | | |
1035 | | - | |
1036 | | - | |
1037 | | - | |
1038 | | - | |
1039 | | - | |
1040 | | - | |
| 1051 | + | |
| 1052 | + | |
1041 | 1053 | | |
1042 | | - | |
1043 | 1054 | | |
1044 | 1055 | | |
1045 | 1056 | | |
| |||
1048 | 1059 | | |
1049 | 1060 | | |
1050 | 1061 | | |
| 1062 | + | |
| 1063 | + | |
| 1064 | + | |
| 1065 | + | |
| 1066 | + | |
| 1067 | + | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
| 1077 | + | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
| 1093 | + | |
| 1094 | + | |
| 1095 | + | |
| 1096 | + | |
| 1097 | + | |
| 1098 | + | |
| 1099 | + | |
1051 | 1100 | | |
1052 | 1101 | | |
1053 | 1102 | | |
| |||
Lines changed: 27 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 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 | + | |
0 commit comments