Moti Asayag has posted comments on this change. Change subject: core: introduce context pattern ......................................................................
Patch Set 34: (1 comment) http://gerrit.ovirt.org/#/c/28829/34/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/context/CommandContext.java File backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/context/CommandContext.java: Line 48: } Line 49: Line 50: public CommandContext setCompensationContext(CompensationContext compensationContext) { Line 51: this.compensationContext = compensationContext; Line 52: return this; > this is very nice notation to allow: i specified the list of my concerns regarding this in the message on patch level. while it makes code easier to write, it makes it less clear to read (as i noticed while reviewing) we tend to think of methods as responsible for a single action, while here a setter does 2 operations. By looking at the setter signature one might wonder if this is a new instance or the existing instance modified. this is more a matter of style. I'd like to see other approach rather than using the setter to return the instance, i.e. VdcQueryParametersBase.withoutRefresh() which the same sesmantics could be expanded to CommandContext: public class CommandContext ... { ... public void setCompensationContext (CompensationContext ctx) { this.ctx = ctx; } public CommandContext withCompensationContext (CompensationContext ctx) { setCompensationContext(ctx); return this; } public CommandContext withoutCompensationContext () { setCompensationContext(null); return this; } ... } and using it from CommandBase as: runInternalAction(..., dupContext().withoutCompensationContext ()) I find the separation between the setters to "withXXX" or "withoutXXX" clearer. thoughts ? Line 53: } Line 54: Line 55: public CommandContext resetCompensationContext() { Line 56: return setCompensationContext(new DefaultCompensationContext()); -- To view, visit http://gerrit.ovirt.org/28829 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I310f5f77fff78b3232ee77fe63791425fd521516 Gerrit-PatchSet: 34 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Yair Zaslavsky <[email protected]> Gerrit-Reviewer: Alon Bar-Lev <[email protected]> Gerrit-Reviewer: Arik Hadas <[email protected]> Gerrit-Reviewer: Moti Asayag <[email protected]> Gerrit-Reviewer: Omer Frenkel <[email protected]> Gerrit-Reviewer: Oved Ourfali <[email protected]> Gerrit-Reviewer: Ravi Nori <[email protected]> Gerrit-Reviewer: Roy Golan <[email protected]> Gerrit-Reviewer: Tal Nisan <[email protected]> Gerrit-Reviewer: Yair Zaslavsky <[email protected]> Gerrit-Reviewer: [email protected] Gerrit-Reviewer: oVirt Jenkins CI Server Gerrit-HasComments: Yes _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
