Hi,

I've looked a bit more about what has been moved to aspects and it is not
only the plugin but all the displaySearch functions that were added to the
XWiki Core objects and classes.

I cannot +1 the removal of all displaySearch functions. There is a lot of
work on this code to generate search forms for each fields.

I can accept that we remove the QueryPlugin itself but I believe we should
keep:

- the XWikiCriteria class
- the XWikiQuery class
- the code in the XWiki objects and fields

displaySearch is a function that each property needs to define.

The rest of the code in the XWiki class or the QueryPlugin itself can be
removed as we can reimplement this easily in a groovy class or in some
other component. But the code in the XWiki fields cannot be implement
anywhere but in these classes.

The XWikiQuery or XWikiCriteria classes can be renamed if there is a
confusion but they are needed to represent a Query object which can be
passed to fields to display the search form.

I'm -1 on the removal of this code and believe it should be move backed
from aspect to real code in the core.

Ludovic


2012/11/17 [email protected] <[email protected]>

>
>
> Envoyé de mon iPad
>
> Le 17 nov. 2012 à 18:05, Vincent Massol <[email protected]> a écrit :
>
> >
> > On Nov 17, 2012, at 1:35 PM, Denis Gervalle <[email protected]> wrote:
> >
> >> On Sat, Nov 17, 2012 at 10:46 AM, Ludovic Dubost <[email protected]>
> wrote:
> >>
> >>> Hi,
> >>>
> >>> The reality right now is that there is no alternative to this code
> that has
> >>> been moved to legacy, at least for part of it.
> >>>
> >>> Let me explain a bit what some of this code is doing.
> >>>
> >>> - it allows to create a java object XWikiQuery which represents an
> XWiki
> >>> Query in Java as a structured object per field. This object stores
> >>> criterias
> >>> - the XWiki Core itself provides a function to display a search field
> for
> >>> each field of an XWiki class (displaySearch) and a function that
> allows to
> >>> retrieve the content of search a search field into an XWikiQuery
> object, as
> >>> well as a function to transform the part concerning the field in the
> >>> XWikiQuery object into an XWQL statement portion
> >>>
> >>
> >> Only really works if that very old patch is applied:
> >> http://jira.xwiki.org/browse/XWIKI-4585
> >>
> >>
> >>> - some functions in XWiki.java (moved to aspects in legacy) also allow
> to
> >>> generate a field to choose the columns and the sort fields for a query
> >>> - the query plugin allows to transform the XWikiQuery object into an
> XWQL
> >>> statement including the sort fields
> >>> - a function in XWiki.java allows in one call to read the data from
> >>> $request, create the XWikiQuery object, transform it in XWQL, run the
> query
> >>> and display the results as an HTML table
> >>> - another function allows just to run the query and velocity code can
> >>> present the results just the way you decide
> >>>
> >>> The end results is a system to build query interfaces dynamically.
> >>>
> >>> We haven't used this code because nobody has been trained on it. But
> still
> >>>
> >>
> >> It is being used in only one of our project. The reason is that the
> >> experience was not good enough to reuse it. This was a really great
> >> feature, but due to the issues and so unexpected limitation (do not
> ask, I
> >> do not remember) if have choosen to leave it alone.
> >>
> >>
> >>> it's very powerful code, and I'd hate to see it go away without a
> >>> replacement. Currently it's not that complex to keep it. Most of the
> code
> >>> is in the XWiki fields anyway. The code in XWikiQuery and in
> QueryPlugin is
> >>> not that complicated as it's just looping over the fields.
> >>>
> >>> On the long run this code has even more capabilities, like being able
> to
> >>> run query aggregates in addition to just listing XWiki documents. This
> >>> could allow to do counting and summing using a UI and even generate a
> graph
> >>> out of the result using the Graph Plugin.
> >>>
> >>
> >> I really agree that we should plan for similar feature, using the new
> >> model, and the new component.
> >>
> >>
> >>>
> >>> Once you activate the QueryPlugin in xwiki.cfg this code still works.
> >>>
> >>
> >> I would not be so sure of that since almost nobody really use the query
> >> plugin that way, or my patch has more success than I thought.
> >>
> >>
> >>> It would be great if somebody from the active committers looked at it
> and
> >>> we could work together to see where this code should be headed. I'm
> >>> available to help understand the code.
> >>>
> >>
> >> If I had seen it so valuable after our first try, I would have do so
> since
> >> long. Moving the plugin to legacy does not means that we loose it. IMO,
> >> keeping this plugin currently cause confusion with the new query
> manager,
> >> which is worse compare to what it really provide. This is why I am +1.
> >>
> >> Now I do agree that the idea should not be lost and that we should
> plane a
> >> replacement for it once the new model is ready. Compare to the general
> rule
> >> which is to keep until we replace, I think it does not apply here, since
> >> almost nobody use the part not replaced by the new query manager (else
> we
> >> would have received more complains about it not working due to
> XWIKI-4585
> >> and more)
> >
> > BTW "keep until replace" is not a current rule of the xwiki project.
> Right now the practice that we have followed instead is: retire/deprecate
> when quality is not high enough and nobody is working on it.
> >
> > We've done this in lots of places. For example with the Calendar
> application, the Photo Album application (retired before we had the gallery
> macro, which isn't exactly similar) and on several others plugins too. And
> we didn't have replacements for those.
> >
> > It's a better rule than "keep until replace" because we want to increase
> XWiki's quality.
> >
> > If a domain has not been worked on for a long time, keeping it won't
> make it better. For that we need to find a committer who can be active on
> the feature and make that part of the roadmap.
> >
> > And again, the user would still be able to install it, and if some
> committer becomes active again on the topic we can revive it.
> >
>
> This is not the case with this code since there are aspects extending them
> XWiki core classes.
> Unless there are ways to try it and improve it this type of stuff will be
> lost. As I said this has potential if done right, this is why core
> committed help to give feedback about how to integrate it with the new APIs
> would be useful
>
> Ludovic
>
>
>
>
> > Thanks
> > -Vincent
> >
> >> Now if anyone is really using it, tell us what you do that is not
> covered
> >> by the new query manager. This could change my vote.
> >>
> >>
> >>> Right now the key functions are:
> >>>
> >>> - the XWikiQuery class
> >>> - QueryPlugin.makeQuery
> >>> - XWiki.createQueryFromRequest
> >>> - XWiki.displaySearch
> >>> - XWiki.displaySearchColumns
> >>> - XWiki.displaySearchOrder
> >>> - and code in each XWiki Field class
> >>>
> >>> less important code is:
> >>>
> >>> - XWiki.search(XWikiQuery)
> >>> - XWiki.searchAsTable(XWikiQuery)
> >>>
> >>> Ludovic
> >>>
> >>>
> >>>
> >>>
> >>> 2012/11/16 Thomas Mortagne <[email protected]>
> >>>
> >>>> On Fri, Nov 16, 2012 at 3:28 PM, Ludovic Dubost <[email protected]>
> >>> wrote:
> >>>>
> >>>>> Can you point to the code of the old query plugin. I'm probably -1
> >>>> because
> >>>>> it contains some code that is usefull to generate Search UIs.
> >>>>> This code should be moved to the new query component before the
> plugin
> >>> is
> >>>>> removed
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>
> https://github.com/xwiki/xwiki-platform/tree/master/xwiki-platform-core/xwiki-platform-legacy/xwiki-platform-legacy-oldcore/src/main/java/com/xpn/xwiki/plugin/query
> >>>>
> >>>> The whole point of moving something to legacy is that it's not used
> >>> anymore
> >>>> and we provide alternative for it, if there is missing feature in the
> >>> query
> >>>> module it should listed and added.
> >>>>
> >>>>
> >>>>> Ludovic
> >>>>>
> >>>>>
> >>>>> 2012/11/16 Eduard Moraru <[email protected]>
> >>>>>
> >>>>>> +1
> >>>>>>
> >>>>>> Thanks,
> >>>>>> Eduard
> >>>>>>
> >>>>>>
> >>>>>> On Fri, Nov 16, 2012 at 3:02 PM, Thomas Mortagne
> >>>>>> <[email protected]>wrote:
> >>>>>>
> >>>>>>> It is.
> >>>>>>>
> >>>>>>> This plugin is deprecated since a very long time. Look at
> >>>>>>>
> >>> http://extensions.xwiki.org/xwiki/bin/view/Extension/Query+Modulefor
> >>>>>>> informations about the "new" one (which exists since 1.6).
> >>>>>>>
> >>>>>>> On Fri, Nov 16, 2012 at 12:57 PM, crocket <[email protected]
> >>>>
> >>>>>> wrote:
> >>>>>>>
> >>>>>>>> What is the old query plugin? I hope it is not $xwiki.query.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On Fri, Nov 16, 2012 at 7:32 PM, Thomas Mortagne
> >>>>>>>> <[email protected]>wrote:
> >>>>>>>>
> >>>>>>>>> Hi devs,
> >>>>>>>>>
> >>>>>>>>> Following the discussion on
> >>>>>>> http://markmail.org/message/uck6w56gqus2mxswI
> >>>>>>>>> would like to extract the query plugin from
> >>>>>>> xwiki-platform-legacy-oldcore
> >>>>>>>>> and move it to retired repository.
> >>>>>>>>>
> >>>>>>>>> The good things is that we will get rid of 3 jars in standard
> >>> XE
> >>>> by
> >>>>>>> doing
> >>>>>>>>> this.
> >>>>>>>>>
> >>>>>>>>> I plan to do it in 4.4M1.
> >>>>>>>>>
> >>>>>>>>> WDYT ?
> >>>>>>>>>
> >>>>>>>>> Here is my +1
> >>>>>>>>> --
> >>>>>>>>> Thomas Mortagne
> >>>>>>>>> _______________________________________________
> >>>>>>>>> devs mailing list
> >>>>>>>>> [email protected]
> >>>>>>>>> http://lists.xwiki.org/mailman/listinfo/devs
> >>>>>>>>>
> >>>>>>>> _______________________________________________
> >>>>>>>> devs mailing list
> >>>>>>>> [email protected]
> >>>>>>>> http://lists.xwiki.org/mailman/listinfo/devs
> >>>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> --
> >>>>>>> Thomas Mortagne
> >>>>>>> _______________________________________________
> >>>>>>> devs mailing list
> >>>>>>> [email protected]
> >>>>>>> http://lists.xwiki.org/mailman/listinfo/devs
> >>>>>>>
> >>>>>> _______________________________________________
> >>>>>> devs mailing list
> >>>>>> [email protected]
> >>>>>> http://lists.xwiki.org/mailman/listinfo/devs
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> --
> >>>>> Ludovic Dubost
> >>>>> Founder and CEO
> >>>>> Blog: http://blog.ludovic.org/
> >>>>> XWiki: http://www.xwiki.com
> >>>>> Skype: ldubost GTalk: ldubost
> >>>>> _______________________________________________
> >>>>> devs mailing list
> >>>>> [email protected]
> >>>>> http://lists.xwiki.org/mailman/listinfo/devs
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> Thomas Mortagne
> >>>> _______________________________________________
> >>>> devs mailing list
> >>>> [email protected]
> >>>> http://lists.xwiki.org/mailman/listinfo/devs
> >>>>
> >>>
> >>>
> >>>
> >>> --
> >>> Ludovic Dubost
> >>> Founder and CEO
> >>> Blog: http://blog.ludovic.org/
> >>> XWiki: http://www.xwiki.com
> >>> Skype: ldubost GTalk: ldubost
> >>> _______________________________________________
> >>> devs mailing list
> >>> [email protected]
> >>> http://lists.xwiki.org/mailman/listinfo/devs
> >>>
> >>
> >>
> >>
> >> --
> >> Denis Gervalle
> >> SOFTEC sa - CEO
> >> eGuilde sarl - CTO
> >> _______________________________________________
> >> devs mailing list
> >> [email protected]
> >> http://lists.xwiki.org/mailman/listinfo/devs
> >
> > _______________________________________________
> > devs mailing list
> > [email protected]
> > http://lists.xwiki.org/mailman/listinfo/devs
>



-- 
Ludovic Dubost
Founder and CEO
Blog: http://blog.ludovic.org/
XWiki: http://www.xwiki.com
Skype: ldubost GTalk: ldubost
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to