Invert enforcement patterns when needed 28/69928/1
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 28 Feb 2018 15:03:09 +0000 (16:03 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Thu, 22 Mar 2018 22:10:08 +0000 (23:10 +0100)
commit403961966767167e535e23b6d38d3b14cf8a7709
treed911d80153f60e10bc8e22bd7bc53462532a0c4d
parent0ca7e3eb5d95fd151386b06330931682793d5bf1
Invert enforcement patterns when needed

RFC7950 and yang-model-api defines pattern modifier invert-match,
which needs to be taken into account when validating incoming strings.

Mutate the pattern we expose to the codegen such that it captures
the inversion operation. This code is closely related to generated
code and string formats used therein, hence the beef of the
implementation lives in BindingMapping.

JIRA: MDSAL-314
Change-Id: Ie29745d3343f565ac6b1b5716b1ec38dd0f09bc9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit e809976bed3033047c72bf8fa094ef950f41f55f)
binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/mdsal/binding/yang/types/TypeProviderImpl.java
binding/yang-binding/src/main/java/org/opendaylight/yangtools/yang/binding/BindingMapping.java
binding2/mdsal-binding2-generator-impl/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/yang/types/TypeGenHelper.java
binding2/mdsal-binding2-util/src/main/java/org/opendaylight/mdsal/binding/javav2/util/BindingMapping.java