Integrate IncrementalBuildSupport 41/103141/71
authorRuslan Kashapov <ruslan.kashapov@pantheon.tech>
Tue, 8 Nov 2022 09:39:35 +0000 (11:39 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Thu, 9 Mar 2023 18:54:25 +0000 (19:54 +0100)
commit626897b9242679d43e4b7de4d6c8a37240450f5d
treea7b10287452f9406e6403324a05c66148d6b6d4f
parent11c84c6ddddea7ca509e864d9887d5649e0a545e
Integrate IncrementalBuildSupport

IncrementalBuildSupport guides incremental/resumed execution, in that it
compares inputs to previous state as well as carefully updating output
to match the intended codegen output.

The process is sensitive to losing previously-generated files, but
allows persistent files to be updated. If some files magically
appear/disappear, we trigger a generation cycle.

JIRA: YANGTOOLS-745
Change-Id: I6f8cbf03a52542e8c20fd1383d459056272f951a
Signed-off-by: Ruslan Kashapov <ruslan.kashapov@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/FileState.java
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/IncrementalBuildSupport.java [new file with mode: 0644]
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/ProcessorModuleReactor.java
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/ProjectFileAccess.java
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/YangToSourcesProcessor.java
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/YangToSourcesState.java