I'm afraid that I don't understand the idea. There are already config properties that enable fail-fast validation that detect orphaned supporting methods (and other checks besides). Why do we need an annotation to ask for this to be done? It just adds clutter in my view?
D. On Sun, 22 Sep 2019, 21:07 Brian K, <harvestmoon...@gmail.com> wrote: > I like the @Support annotation, not @Action, because validate is not an > action. > > Most of my frustration on this front has been inadvertently creating a > supporting function. like: > addChild(Child child){...} > > Can these patterns be optional when the annotations are active? Maybe a > isis.properties switch? > > Thanks! > Brian > > On Sun, Sep 22, 2019 at 3:19 AM Andi Huber <ahu...@apache.org> wrote: > > > If we would not have the freedom of introducing a new annotation, > > @Action(type=Supporting) > > would be a good choice as well, but we also have supporting methods for > > Properties and Collections! > > > > But since we have @Action, @Property and @Collection all with good > > justification to stand and represent their own kind, we might as well > > introduce a new one here!? > > > > I was also thinking about @Model, which is a bit more generic and may > > allow for more flexible use later on. > > > > On 2019/09/22 08:47:20, "Rade, Joerg / Kuehne + Nagel / HAM GI-DP" > > <joerg.r...@kuehne-nagel.com> wrote: > > > Hi Andi, > > > > > > I like the idea of using an annotation, because it makes the > programming > > model more consistent. > > > > > > Maybe @Action(type=Supporting) ? > > > > > > -j > > > -----Ursprüngliche Nachricht----- > > > Von: Andi Huber [mailto:ahu...@apache.org] > > > Gesendet: Sonntag, 22. September 2019 10:01 > > > An: users@isis.apache.org > > > Betreff: Extending the Programming Model with @Support? > > > > > > Hi folks, > > > > > > we are still making progress towards Apache Isis Version 2. While most > > of the work goes into technical topics that stay under the hood, like > > decoupling from JDO, there are also some changes to the programming > model, > > that will affect you and require migration of your domain-code. > > > > > > We have no concrete release plan yet, we thought maybe October for a > > preview, we'll see. > > > > > > Anyway I do have a questions regarding the programming model: > > > > > > Have you ever run into the issue of misspelling a supporting-method > > within your domain-code > > > eg. verifyMyAction(...) instead of correct validateMyAction(...) then > > spending some time to troubleshot this? What an inconvenience! > > > > > > My proposed solution to this is to introduce a new annotation to make a > > contract with the domain-model (meta-model) : > > > > > > @Action > > > public void myAction() { > > > > > > } > > > > > > @Support // <-- to enforce a contract with the domain-model > > > public boolean hideMyAction() { > > > ... > > > } > > > > > > * The 'hideMyAction' method is termed 'supporting-method'. We have lots > > of variants of these. (validateX, disableX, ...) > > > * This contract allows for a check whether the intended > > supporting-method gets picked up by the framework and is not ignored. > That > > way we can emit a validation failure, if a support-method is misspelled > or > > does have any other deficiencies. > > > * The @Support annotation is optional, does not require you to migrate > > your domain-code. > > > > > > Do you like the concept? Should we use a better name for the > annotation? > > Can we reuse/repurpose any existing annotation? > > > > > > Any thoughts? > > > > > > Cheers, Andi > > > > > > Kühne + Nagel (AG & Co.) KG > > > Rechtsform: Kommanditgesellschaft, Bremen HRA 21928, USt-IdNr.: DE > > 812773878. > > > Geschäftsleitung Kühne + Nagel (AG & Co.) KG: Holger Ketz (Vors. ), > > Martin Brinkmann, Lars-Olof Grün, Matthias Knicky, Nicholas Minde, > Johannes > > Trimborn, Lars Wedel, Matthias Weiner. > > > Persönlich haftende Gesellschafterin: Kühne & Nagel A.G., Rechtsform: > > Aktiengesellschaft nach luxemburgischem Recht, HR-Nr.: B 18745, > > Geschäftsführendes Verwaltungsratsmitglied: Karl Gernandt. > > > Geschäftsleitung Region Europa: Dr. Hansjörg Rodi (Vors.), Mart Ambur, > > Tom Ban, Dominic Edmonds, Thierry Held, Uwe Hött, Richard Huhn, > Jan-Hendrik > > Köstergarten, Heiko Schuhmacher. > > > > > > Wir arbeiten ausschließlich auf Grundlage der Allgemeinen Deutschen > > Spediteurbedingungen 2017 (ADSp 2017). Hinweis: Die ADSp 2017 weichen in > > Ziffer 23 hinsichtlich des Haftungshöchstbetrages für Güterschäden (§ 431 > > HGB) vom Gesetz ab, indem sie die Haftung bei multimodalen Transporten > > unter Einschluss einer Seebeförderung und bei unbekanntem Schadenort auf > 2 > > SZR/kg und im Übrigen die Regelhaftung von 8,33 SZR/kg zusätzlich auf > 1,25 > > Millionen Euro je Schadenfall sowie 2,5 Millionen Euro je > Schadenereignis, > > mindestens aber 2 SZR/kg, beschränken. Die ADSp sind auf unserer Webseite > > als Download erhältlich. Auf Anfrage senden wir Ihnen diese auch gerne > zu. > > > > > >