Alternative with @Configurable

We should perhaps not show the two alternatives in the same file, because it looks complicated  and I don't think both alternatives will not be used in same project. I can break out this alternative to a separate file, if that is what we prefer.