<div dir="ltr"><div><div>Hi Martin,<br><br></div>I&#39;d like to address this with the same approach as suggested by Idan for Commands [1] .<br></div><ol><li>It preserves the support for postConstruct() which is implemented explicitly in your patch by setup() method.</li><li>The suggested patch allows to define the classes as mutable - where the affect of it is unknown and probably not welcome.<br></li><li>It blocks queries from any future treatment of the parameters are creation time.</li></ol><p>Having a single c&#39;tor which expects both parameters will solve that issue, same as done for the commands.<br></p><div><br>[1] <a href="https://gerrit.ovirt.org/#/c/52657/">https://gerrit.ovirt.org/#/c/52657/</a><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 26, 2016 at 11:01 AM, Martin Mucha <span dir="ltr">&lt;<a href="mailto:mmucha@redhat.com" target="_blank">mmucha@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I got another bug about missing constructor:<br>
<br>
public …(P parameters, EngineContext engineContext) {<br>
        super(parameters, engineContext);<br>
}<br>
<br>
so I looked into:<br>
org.ovirt.engine.core.bll.QueriesCommandBase<br>
<br>
and it seems, that sole &#39;problem&#39; is with initialization of user in @PostConstruct method. It seems, that we can easily set all those fields via setters, and user initialization can be done later, for example before calling executeQueryCommand in:<br>
org.ovirt.engine.core.bll.QueriesCommandBase#executeCommand<br>
<br>
doing this will move us closer to CDI and avoid errors because of forgotten constructor. Is there a obstacle blocking us from doing this?<br>
<br>
thanks,<br>
Mar.<br>
<br>
Edit: I had some time left so I tried to implement it, and it seems to be working. It&#39;s big patch, but mostly there&#39;s just constructors removal. Actual changes are in:<br>
<br>
QueriesCommandBase<br>
CommandsFactory<br>
RegisterVdsQuery<br>
GetAllTemplateBasedEntityQuery<br>
GetAllInstanceTypesQuery<br>
GetAllVmTemplatesQuery<br>
GetAllImageTypesQuery<br>
<br>
and test files.<br>
_______________________________________________<br>
Devel mailing list<br>
<a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
<a href="http://lists.ovirt.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.ovirt.org/mailman/listinfo/devel</a></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature"><div dir="ltr"><div>Regards,<br></div>Moti<br></div></div>
</div>