Add non-null getters for leaf objects
DTO getters inherently return nullable objects. We have a nonnullFoo()
concept, which is very powerful with Lists/Maps, where we return an
empty collection. This turns out to be very useful for end users, who
can worry about other logic problems instead.
This patch introduces a similar construct for non-complex getters, so
that
container foo {
leaf bar {
type string;
}
}
ends up generating a default method:
interface Foo {
default @NonNull String requireBar() {
// ..
}
}
which nicely throws an exception distinct from NPE and retaining call
site.
JIRA: MDSAL-602
Change-Id: Ia66ee61f51fb9b6eb11aea3736e5246aadad6a3e
Signed-off-by: Kostiantyn Nosach <kostiantyn.nosach@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
15 files changed: