[Wikitech-l] API architecture

2010-09-22 Thread Dmitriy Sintsov
Hi! I am developing my API extension. It's enumerating revisions, but in a different way (not like in ApiQueryRevisions class). Also, it can optionally create xml dumps via WikiExporter, like API action=queryexportexportnowrap (so I need to change output printer to raw mode sometimes). Because

Re: [Wikitech-l] API architecture

2010-09-22 Thread Roan Kattouw
2010/9/22 Dmitriy Sintsov ques...@rambler.ru: But, I don't need to query in conjunction. Ok, I've derived from ApiBase class (my own API action). Then, it starts to fail on huge amount of generally useful methods, like SQL query building methods (addJoinConds, addWhereRange) and list

Re: [Wikitech-l] API architecture

2010-09-22 Thread Roan Kattouw
2010/9/22 Roan Kattouw roan.katt...@gmail.com: I understand that not every ApiBase derived class needs these, but many could have. Why not make inheritance chain like this: ApiBase - ApiListBase - ApiQueryBase Actually, let's just put that stuff in ApiBase so every module can use it easily.

Re: [Wikitech-l] API architecture

2010-09-22 Thread Chad
On Wed, Sep 22, 2010 at 8:17 AM, Roan Kattouw roan.katt...@gmail.com wrote: 2010/9/22 Roan Kattouw roan.katt...@gmail.com: I understand that not every ApiBase derived class needs these, but many could have. Why not make inheritance chain like this: ApiBase - ApiListBase - ApiQueryBase

Re: [Wikitech-l] API architecture

2010-09-22 Thread Roan Kattouw
2010/9/22 Chad innocentkil...@gmail.com: I disagree. Things that work currently with ApiBase would continue to, and things extending ApiQueryBase wouldn't notice a difference if a few of their methods were moved up a level to a new ApiListBase. Moving a few methods from ApiQueryBase up to

Re: [Wikitech-l] API architecture

2010-09-22 Thread Chad
On Wed, Sep 22, 2010 at 8:28 AM, Roan Kattouw roan.katt...@gmail.com wrote: 2010/9/22 Chad innocentkil...@gmail.com: I disagree. Things that work currently with ApiBase would continue to, and things extending ApiQueryBase wouldn't notice a difference if a few of their methods were moved up a

Re: [Wikitech-l] API architecture

2010-09-22 Thread Dmitriy Sintsov
* Roan Kattouw roan.katt...@gmail.com [Wed, 22 Sep 2010 14:16:06 +0200]: ApiBase - ApiListBase - ApiQueryBase where ApiListBase would have at least these nice SQL query buliding methods but also the possibility to override the default printer? Why these methods are limited to

Re: [Wikitech-l] API architecture

2010-09-22 Thread Roan Kattouw
2010/9/22 Dmitriy Sintsov ques...@rambler.ru: 2. I don't have core commit access only extension commit access, however I don't feel like MW guru, so I don't even want to request it. I'll probably file a bug. You can submit patches on Bugzilla too :) Roan Kattouw (Catrope)