This is an automated email from the ASF dual-hosted git repository.
robertlazarski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/axis-axis2-c-core.git
The following commit(s) were added to refs/heads/master by this push:
new d44beb938 native codegen doc updates
d44beb938 is described below
commit d44beb9381033b7f57cef1f1ecbdcf390dec3758
Author: Robert Lazarski <[email protected]>
AuthorDate: Mon Nov 24 04:34:42 2025 -1000
native codegen doc updates
---
tools/codegen/native/test/ADB_FEATURE_PARITY.md | 23 +++++++++++++++--------
1 file changed, 15 insertions(+), 8 deletions(-)
diff --git a/tools/codegen/native/test/ADB_FEATURE_PARITY.md
b/tools/codegen/native/test/ADB_FEATURE_PARITY.md
index d56cc29a1..08bcc47d3 100644
--- a/tools/codegen/native/test/ADB_FEATURE_PARITY.md
+++ b/tools/codegen/native/test/ADB_FEATURE_PARITY.md
@@ -44,9 +44,9 @@ if (strcmp(argv[i + 1], "adb") != 0 && strcmp(argv[i + 1],
"none") != 0) {
|------------------|----------------|----------------|----------------------|
| **Basic XSD Types** | ✅ Full (35+ types) | 🔄 Partial | **HIGH** - Core
functionality |
| **Complex Types** | ✅ Full | 🔄 Basic | **HIGH** - Essential for real
services |
-| **Arrays/Collections** | ✅ Full | 🔄 Basic | **HIGH** - Common in web
services |
-| **Enumerations** | ✅ Full | 🔄 Basic | **MEDIUM** - Type safety feature |
-| **Choice Elements** | ✅ Full | 🔄 Basic | **MEDIUM** - Advanced XSD feature |
+| **Arrays/Collections** | ✅ Full | 🔄 Single-dimension (Nested arrays
intentionally not implemented - see NESTED_ARRAYS_ANALYSIS.md) | **HIGH** -
Common in web services |
+| **Enumerations** | ✅ Full | ✅ Full | **COMPLETED** - Numeric and string
enumeration support implemented |
+| **Choice Elements** | ✅ Full | ✅ Full | **COMPLETED** - Complex nested
choice support implemented |
| **Namespaces** | ✅ Full | 🔄 Partial | **HIGH** - Required for interop |
| **Optional Elements** | ✅ Full | 🔄 Partial | **HIGH** - minOccurs=0 common |
| **Restrictions** | ✅ Full | ❌ Not implemented | **MEDIUM** - XSD validation |
@@ -119,9 +119,11 @@ if (strcmp(argv[i + 1], "adb") != 0 && strcmp(argv[i + 1],
"none") != 0) {
- 🔄 Dynamic array handling (maxOccurs > 1, unbounded) - Basic support
implemented
- 🔄 Proper namespace handling and qualification - Partial implementation
-### Phase 3: Advanced Features (PARTIALLY COMPLETED ✅)
-- ✅ Enumeration type safety and validation (test framework implemented)
-- ✅ Choice element handling (test framework implemented)
+### Phase 3: Advanced Features (COMPLETED ✅)
+- ✅ Enumeration type safety and validation (FULLY IMPLEMENTED with numeric
enumeration support)
+- ✅ Choice element handling (FULLY IMPLEMENTED with complex nested choice
support)
+- ✅ Complex Choice Elements (FULLY IMPLEMENTED - nested sequences, arrays, and
complex types)
+- ✅ Numeric Enumerations (FULLY IMPLEMENTED - integer, byte, and other numeric
base types)
- ✅ Attribute processing (AXIS2C-1614: Required attribute validation
implemented)
- ✅ Error handling and validation (Comprehensive error handling across all
AXIS2C fixes)
- 🔄 MTOM feature analysis (AXIS2C-1679: Architecture comparison with Java
completed, implementation roadmap defined)
@@ -131,6 +133,7 @@ if (strcmp(argv[i + 1], "adb") != 0 && strcmp(argv[i + 1],
"none") != 0) {
- ❌ Union type support
- ❌ Type extension/inheritance
- ❌ Recursive type handling
+- ❌ Nested Arrays (Arrays of Arrays) - Intentionally not implemented - see
NESTED_ARRAYS_ANALYSIS.md
- 🔄 MTOM attachment support (AXIS2C-1679: Analysis completed, implementation
needed)
- ❌ Any type dynamic content
@@ -173,13 +176,17 @@ if (strcmp(argv[i + 1], "adb") != 0 && strcmp(argv[i +
1], "none") != 0) {
The Axis2/C native generator provides a solid foundation for ADB support with
working basic functionality. The implementation focuses correctly on ADB as the
core Apache Axis TLP invention, providing the most important databinding
capability.
-Current status: **Phase 1 COMPLETED ✅, Phase 2 SUBSTANTIALLY COMPLETED ✅,
Phase 3 PARTIALLY COMPLETED ✅**
+Current status: **Phase 1 COMPLETED ✅, Phase 2 SUBSTANTIALLY COMPLETED ✅,
Phase 3 COMPLETED ✅**
-**Major Accomplishments (2024-11-21):**
+**Major Accomplishments (2025-11-24):**
- ✅ **9 Critical AXIS2C Issues Resolved** - AXIS2C-1373, 1515, 1614, 1616,
1617, 1658, 1679, 1685, 1699
- ✅ **Comprehensive Test Coverage** - 90+ test scenarios covering all major
ADB features
+- ✅ **Complex Choice Elements** - FULLY IMPLEMENTED with nested sequences,
arrays, and complex types
+- ✅ **Numeric Enumerations** - FULLY IMPLEMENTED with integer, byte, and other
numeric base types
+- ✅ **Nested Arrays Analysis** - Comprehensive cost-benefit analysis
documenting intentional non-implementation
- ✅ **Memory Safety Validated** - Extensive regression testing prevents memory
leaks
- ✅ **Interoperability Ensured** - Java XSL template parity through native C
implementation
- ✅ **Production Ready** - Robust error handling and validation throughout
+- ✅ **Apache Standards Compliance** - Clean test output with professional
presentation
The native generator now provides **production-level ADB support** with most
essential features implemented and thoroughly tested. Priority can shift to
specialized features (Phase 4) or performance optimization.