ciscoo / cxf-codegen-gradle

Gradle plugin to generate Java artifacts from WSDL
Apache License 2.0
26 stars 6 forks source link

Introduce new task type #25

Closed ciscoo closed 2 years ago

ciscoo commented 2 years ago

The current API to create tasks is delegated to the extension. It was modeled heavily after the Maven plugin configuration:

<configuration>
    <wsdlOptions>
        <wsdlOption>
            <wsdl>${basedir}/src/main/resources/wsdl/myService.wsdl</wsdl>
        </wsdlOption>
    </wsdlOptions>
</configuration>
cxfCodegen {
    wsdl2java {
        register("myService") {
            wsdl.set(file("/src/main/resources/wsdl/myService.wsdl"))
        }
    }
}

This was done to provide a familiar API to those that were coming from Maven to Gradle. However, there are some downsides to this approach:

Additionally, a custom task with tighter/stronger coupling to the tool options should resolve https://github.com/ciscoo/cxf-codegen-gradle/issues/7.

Finally, the current API will be deprecated in favor of the new task type.

ciscoo commented 2 years ago

Work on this issue has be ongoing for the last few months off/on. Specifically for #7, it has solved the compatibility issues with the Micronaut plugin.