Closed Ionsight closed 1 year ago
Restriction base
attribute is currently not taken into account as a way to declare an inheritance (I was not aware of that).
This is done within the extension parser on the other hand.
To be fixed I presume :wink:
Restriction
base
attribute is currently not taken into account as a way to declare an inheritance (I was not aware of that).This is done within the extension parser on the other hand.
To be fixed I presume wink
I think I reviewed the code too fast last time, the inheritance from the base attribute should be handled correctly at https://github.com/WsdlToPhp/PackageGenerator/blob/develop/src/Parser/Wsdl/TagRestriction.php#L82. Any chance to get the WSDL? In the meantime, I'll try to create a local test sample
Regardless, do you know a way in which I can solve the issue by changing something (be it manually in the generated files, when configuring or otherwise)?
Change the generated class manually but it will eb rewritten next time you generate the package.
Issue identified, a fix is coming :crossed_fingers:
Class inheritance possibly misbehaving when having restriction tag
When generating from
contactPersonFull ->
contactPersonExportBase ->
contactPersonBase
contactPersonFull:
contactPersonExportBase:
contactPersonBase:
Expectation:
ContactPersonFull
should extend fromContactPersonExportBase
ContactPersonExportBase
should extend fromContactPersonBase
Reality:
ContactPersonFull
extends fromContactPersonExportBase
ContactPersonExportBase
DOES NOT extend fromContactPersonBase
ContactPersonExportBase
extends directly fromAbstractStructBase
Additional context:
It seems that the
restriction
tag is part of the cause.I'm unsure whether this is considered expected behavior, but I’ve tested with the dotnet-svcutil tool for .NET Core, which is behaving like I expect it to.
Regardless, do you know a way in which I can solve the issue by changing something (be it manually in the generated files, when configuring or otherwise)?