[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-active
Subject: Re: Review Request 112899: add support for the forum in bodega-client(1 of 2)
From: "Aaron J. Seigo" <aseigo () kde ! org>
Date: 2013-09-24 11:06:52
Message-ID: 20130924110652.23572.46986 () vidsolbach ! de
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/112899/#review40665
-----------------------------------------------------------
This patch is incorrect from start to finish, I'm afraid. As has been noted several \
times now, the fact that bodega is using discourse as the forum software must be \
encapsulated inside of the bodega server. The only place this can "leak" is in the \
forum URL to be handed to a full web browser for when the user wishes to interact \
fully with the forums.
However, *all* access to the forums from a bodega client *must* be done via bodega \
server API. It must *never* touch discourse directly as that leads to several \
problems:
* we can never switch away from discourse easily, should we decide that is necessary
* we end up with exactly the sort of problems seen in ForumCategoryJob where instead \
of getting a self-contained response it has to do multiple trips, not use the Session \
object and do hacks around the jobFinished signal as a result
To summarize:
* there needs to be API in bodega-server that allows one to fetch postings from the \
forum related to an asset; this API needs to support paging so that only the first \
few responses can be fetched and then more on demand
* the client-side code needs to use this server-side API rather than discourse \
directly
I am very certain we have had this exact discussion before.
lib/bodega/assetoperations.cpp
<http://git.reviewboard.kde.org/r/112899/#comment29937>
so as soon as the asset info is retrieved, the forumJobModel, even if nothing is \
showing the forum responses, is immediately sent off to fetch all the responses?
unlike the ratings model which does make sense as part of AssetOperations, i \
don't see why the forum model must be.
lib/bodega/assetoperations.cpp
<http://git.reviewboard.kde.org/r/112899/#comment29935>
please: delay initialization of heavy objects such as models until they are \
actually used.
lib/bodega/assetoperations.cpp
<http://git.reviewboard.kde.org/r/112899/#comment29934>
i don't think that was intentional..
lib/bodega/forumjob_p.cpp
<http://git.reviewboard.kde.org/r/112899/#comment29938>
it fetches the *entire* set of discussions and feedback? what happens when an \
asset has 100s of replies and the person is accessing it over e.g. a 3G connection?
as we talked about previously: by default only the most recent responses should \
be fetched and the rest loaded on demand.
lib/bodega/forumjobmodel_p.h
<http://git.reviewboard.kde.org/r/112899/#comment29933>
should just be called ForumModel
lib/bodega/forumjobmodel_p.h
<http://git.reviewboard.kde.org/r/112899/#comment29930>
this data is not unique per-row, it has nothing to do with the forum feedback, i \
do not know why it is here.
lib/bodega/forumjobmodel_p.cpp
<http://git.reviewboard.kde.org/r/112899/#comment29932>
is anything going to use this countChanged signal?
lib/bodega/forumjobmodel_p.cpp
<http://git.reviewboard.kde.org/r/112899/#comment29936>
why would you use a signal for this? just call it directly from setAssetInfo. you \
are making the code more complicated that it needs to be.
lib/bodega/forumjobmodel_p.cpp
<http://git.reviewboard.kde.org/r/112899/#comment29931>
this is mispaired with a beginResetModel in fetchCategory.
worse, if the job fails, nothing gets called. the model will simply "hang".
- Aaron J. Seigo
On Sept. 23, 2013, 3:47 p.m., Giorgos Tsiapaliokas wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/112899/
> -----------------------------------------------------------
>
> (Updated Sept. 23, 2013, 3:47 p.m.)
>
>
> Review request for Bodega.
>
>
> Description
> -------
>
> This patch adds the forumjob and the forumjobmodel.
> The patch doesn't contain any ui bits in order to avoid
> an endless review request. I will open the second one after this one.
>
>
> Diffs
> -----
>
> lib/bodega/CMakeLists.txt 6fd0d0b
> lib/bodega/assetjob.cpp 3423c41
> lib/bodega/assetoperations.h c4ce191
> lib/bodega/assetoperations.cpp b1fd346
> lib/bodega/forumjob_p.h PRE-CREATION
> lib/bodega/forumjob_p.cpp PRE-CREATION
> lib/bodega/forumjobmodel_p.h PRE-CREATION
> lib/bodega/forumjobmodel_p.cpp PRE-CREATION
> lib/bodega/globals.h c696a40
>
> Diff: http://git.reviewboard.kde.org/r/112899/diff/
>
>
> Testing
> -------
>
> It builds.
>
>
> Thanks,
>
> Giorgos Tsiapaliokas
>
>
[Attachment #5 (text/html)]
<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 \
solid;"> <tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://git.reviewboard.kde.org/r/112899/">http://git.reviewboard.kde.org/r/112899/</a>
</td>
</tr>
</table>
<br />
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">This patch is incorrect \
from start to finish, I'm afraid. As has been noted several times now, the fact \
that bodega is using discourse as the forum software must be encapsulated inside of \
the bodega server. The only place this can "leak" is in the forum URL to be \
handed to a full web browser for when the user wishes to interact fully with the \
forums.
However, *all* access to the forums from a bodega client *must* be done via bodega \
server API. It must *never* touch discourse directly as that leads to several \
problems:
* we can never switch away from discourse easily, should we decide that is necessary
* we end up with exactly the sort of problems seen in ForumCategoryJob where instead \
of getting a self-contained response it has to do multiple trips, not use the Session \
object and do hacks around the jobFinished signal as a result
To summarize:
* there needs to be API in bodega-server that allows one to fetch postings from the \
forum related to an asset; this API needs to support paging so that only the first \
few responses can be fetched and then more on demand
* the client-side code needs to use this server-side API rather than discourse \
directly
I am very certain we have had this exact discussion before.</pre>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191533#file191533line82" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/assetoperations.cpp</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">void \
AssetOperations::Private::assetDownloadComplete(NetworkJob *job)</pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">82</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">forumJobModel</span><span class="o">-></span><span \
class="n">setAssetInfo</span><span class="p">(</span><span \
class="n">assetInfo</span><span class="p">);</span></pre></td> </tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">so as soon \
as the asset info is retrieved, the forumJobModel, even if nothing is showing the \
forum responses, is immediately sent off to fetch all the responses?
unlike the ratings model which does make sense as part of AssetOperations, i \
don't see why the forum model must be.</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191533#file191533line130" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/assetoperations.cpp</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">void \
AssetOperations::Private::progressHasChanged(qreal prog)</pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">130</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">d</span><span class="o">-></span><span \
class="n">forumJobModel</span><span class="o">-></span><span \
class="n">setSession</span><span class="p">(</span><span \
class="n">session</span><span class="p">);</span></pre></td> </tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">please: \
delay initialization of heavy objects such as models until they are actually \
used.</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191533#file191533line132" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/assetoperations.cpp</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">void \
AssetOperations::Private::progressHasChanged(qreal prog)</pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">126</font></th> <td bgcolor="#fdfebc" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">AssetJob</span> <span class="o">*</span><span class="n">aj</span> <span \
class="o">=</span> <span class="n">session</span><span class="o">-></span><span \
class="n">asset</span><span class="p">(</span><span class="n">assetId</span><span \
class="p">,</span> <span class="n">AssetJob</span><span class="o">::</span><span \
class="n">Show<span class="hl">Ratings</span></span><span class="hl"> </span><span \
class="o"><span class="hl">|</span></span><span class="hl"> </span><span \
class="n"><span class="hl">AssetJob</span></span><span class="o"><span \
class="hl">::</span></span><span class="n"><span \
class="hl">Show</span>ChangeLog</span><span class="p">);</span></pre></td> <th \
bgcolor="#e9eaa8" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">132</font></th> <td bgcolor="#fdfebc" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">AssetJob</span> <span class="o">*</span><span class="n">aj</span> <span \
class="o">=</span> <span class="n">session</span><span class="o">-></span><span \
class="n">asset</span><span class="p">(</span><span class="n">assetId</span><span \
class="p">,</span> <span class="n">AssetJob</span><span class="o">::</span><span \
class="n">ShowChangeLog</span><span class="p">);</span></pre></td> </tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">i don't \
think that was intentional..</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191535#file191535line68" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/forumjob_p.cpp</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">68</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="k">for</span> <span class="p">(</span><span class="n">itr</span> <span \
class="o">=</span> <span class="n">topics</span><span class="p">.</span><span \
class="n">constBegin</span><span class="p">();</span> <span class="n">itr</span> \
<span class="o">!=</span> <span class="n">topics</span><span class="p">.</span><span \
class="n">constEnd</span><span class="p">();</span> <span class="o">++</span><span \
class="n">itr</span><span class="p">)</span> <span class="p">{</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">69</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">QVariantMap</span> <span class="n">info</span> <span class="o">=</span> \
<span class="n">itr</span><span class="o">-></span><span \
class="n">toMap</span><span class="p">();</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">70</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">ForumCategory</span><span class="o">::</span><span \
class="n">ForumTopic</span> <span class="n">topic</span><span \
class="p">;</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">71</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">topic</span><span class="p">.</span><span class="n">topicName</span> <span \
class="o">=</span> <span class="n">info</span><span class="p">[</span><span \
class="n">QLatin1String</span><span class="p">(</span><span \
class="s">"fancy_title"</span><span class="p">)].</span><span \
class="n">toString</span><span class="p">();</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">72</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">topic</span><span class="p">.</span><span class="n">topicId</span> <span \
class="o">=</span> <span class="n">info</span><span class="p">[</span><span \
class="n">QLatin1String</span><span class="p">(</span><span \
class="s">"id"</span><span class="p">)].</span><span \
class="n">toString</span><span class="p">();</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">73</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">topic</span><span class="p">.</span><span class="n">topicSlug</span> <span \
class="o">=</span> <span class="n">info</span><span class="p">[</span><span \
class="n">QLatin1String</span><span class="p">(</span><span \
class="s">"slug"</span><span class="p">)].</span><span \
class="n">toString</span><span class="p">();</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">74</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">m_category</span><span class="p">.</span><span class="n">topics</span><span \
class="p">.</span><span class="n">append</span><span class="p">(</span><span \
class="n">topic</span><span class="p">);</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">75</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">QUrl</span> <span class="n">url</span> <span class="o">=</span> <span \
class="n">QLatin1String</span><span class="p">(</span><span \
class="s">"http://localhost:3000/t/"</span><span class="p">)</span> <span \
class="o">+</span> <span class="n">topic</span><span class="p">.</span><span \
class="n">topicSlug</span> <span class="o">+</span> <span \
class="n">QLatin1String</span><span class="p">(</span><span \
class="s">"/"</span><span class="p">)</span> <span class="o">+</span> <span \
class="n">topic</span><span class="p">.</span><span class="n">topicId</span> <span \
class="o">+</span> <span class="n">QLatin1String</span><span class="p">(</span><span \
class="s">".json"</span><span class="p">);</span> <span \
class="c1">//FIXME</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">76</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">qDebug</span><span class="p">()</span> <span class="o"><<</span> \
<span class="n">url</span><span class="p">;</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">77</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">ForumTopicJob</span> <span class="o">*</span><span \
class="n">topicJob</span> <span class="o">=</span> <span class="k">new</span> <span \
class="n">ForumTopicJob</span><span class="p">(</span><span class="n">get</span><span \
class="p">(</span><span class="n">url</span><span class="p">),</span> <span \
class="n">m_session</span><span class="p">);</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">78</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">79</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">connect</span><span class="p">(</span><span class="n">topicJob</span><span \
class="p">,</span> <span class="n">SIGNAL</span><span class="p">(</span><span \
class="n">jobFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)),</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">80</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="k">this</span><span class="p">,</span> <span class="n">SLOT</span><span \
class="p">(</span><span class="n">topicFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)));</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">81</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="p">}</span></pre></td> </tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">it fetches \
the *entire* set of discussions and feedback? what happens when an asset has 100s of \
replies and the person is accessing it over e.g. a 3G connection?
as we talked about previously: by default only the most recent responses should be \
fetched and the rest loaded on demand.</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191536#file191536line31" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/forumjobmodel_p.h</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">31</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">class</span> <span class="n">ForumJobModel</span> <span class="o">:</span> \
<span class="n">public</span> <span class="n">QAbstractItemModel</span></pre></td> \
</tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">should just \
be called ForumModel</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191536#file191536line39" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/forumjobmodel_p.h</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">39</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetIdRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">100</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">40</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetLicenseRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">101</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">41</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetPartnerIdRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">102</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">42</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetPartnerNameRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">103</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">43</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetNameRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">104</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">44</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetVersionRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">105</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">45</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetFilenameRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">106</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">46</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetDescriptionRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">107</span><span class="p">,</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">47</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">AssetPointsRole</span> <span class="o">=</span> <span \
class="n">Qt</span><span class="o">::</span><span class="n">UserRole</span> <span \
class="o">+</span> <span class="mi">108</span><span class="p">,</span></pre></td> \
</tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">this data \
is not unique per-row, it has nothing to do with the forum feedback, i do not know \
why it is here.</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191537#file191537line49" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/forumjobmodel_p.cpp</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">49</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">connect</span><span class="p">(</span><span class="k">this</span><span \
class="p">,</span> <span class="n">SIGNAL</span><span class="p">(</span><span \
class="n">rowsInserted</span><span class="p">(</span><span \
class="n">QModelIndex</span><span class="p">,</span><span class="kt">int</span><span \
class="p">,</span><span class="kt">int</span><span class="p">)),</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">50</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="k">this</span><span class="p">,</span> <span \
class="n">SIGNAL</span><span class="p">(</span><span \
class="n">countChanged</span><span class="p">()));</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">51</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">connect</span><span class="p">(</span><span class="k">this</span><span \
class="p">,</span> <span class="n">SIGNAL</span><span class="p">(</span><span \
class="n">rowsRemoved</span><span class="p">(</span><span \
class="n">QModelIndex</span><span class="p">,</span><span class="kt">int</span><span \
class="p">,</span><span class="kt">int</span><span class="p">)),</span></pre></td> \
</tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">52</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="k">this</span><span class="p">,</span> <span \
class="n">SIGNAL</span><span class="p">(</span><span \
class="n">countChanged</span><span class="p">()));</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">53</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">connect</span><span class="p">(</span><span class="k">this</span><span \
class="p">,</span> <span class="n">SIGNAL</span><span class="p">(</span><span \
class="n">modelReset</span><span class="p">()),</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">54</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="k">this</span><span class="p">,</span> <span \
class="n">SIGNAL</span><span class="p">(</span><span \
class="n">countChanged</span><span class="p">()));</span></pre></td> </tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">is anything \
going to use this countChanged signal?</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191537#file191537line55" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/forumjobmodel_p.cpp</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">55</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span \
class="n">connect</span><span class="p">(</span><span class="k">this</span><span \
class="p">,</span> <span class="n">SIGNAL</span><span class="p">(</span><span \
class="n">assetInfoChanged</span><span class="p">()),</span></pre></td> </tr>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">56</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="k">this</span><span class="p">,</span> <span class="n">SLOT</span><span \
class="p">(</span><span class="n">fetchCategory</span><span \
class="p">()));</span></pre></td> </tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">why would \
you use a signal for this? just call it directly from setAssetInfo. you are making \
the code more complicated that it needs to be.</pre> </div>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;"> <thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;"> <a \
href="http://git.reviewboard.kde.org/r/112899/diff/2/?file=191537#file191537line228" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/forumjobmodel_p.cpp</a> <span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th> <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td> <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">228</font></th> <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> \
<span class="n">endInsertRows</span><span class="p">();</span></pre></td> </tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">this is \
mispaired with a beginResetModel in fetchCategory.
worse, if the job fails, nothing gets called. the model will simply \
"hang".</pre> </div>
<br />
<p>- Aaron J.</p>
<br />
<p>On September 23rd, 2013, 3:47 p.m. UTC, Giorgos Tsiapaliokas wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" \
style="background-image: \
url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); \
background-position: left top; background-repeat: repeat-x; border: 1px black \
solid;"> <tr>
<td>
<div>Review request for Bodega.</div>
<div>By Giorgos Tsiapaliokas.</div>
<p style="color: grey;"><i>Updated Sept. 23, 2013, 3:47 p.m.</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0"> <tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">This patch adds the forumjob and the forumjobmodel. The patch \
doesn't contain any ui bits in order to avoid an endless review request. I will \
open the second one after this one. </pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0"> <tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">It builds. </pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>lib/bodega/CMakeLists.txt <span style="color: grey">(6fd0d0b)</span></li>
<li>lib/bodega/assetjob.cpp <span style="color: grey">(3423c41)</span></li>
<li>lib/bodega/assetoperations.h <span style="color: grey">(c4ce191)</span></li>
<li>lib/bodega/assetoperations.cpp <span style="color: grey">(b1fd346)</span></li>
<li>lib/bodega/forumjob_p.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>lib/bodega/forumjob_p.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>lib/bodega/forumjobmodel_p.h <span style="color: \
grey">(PRE-CREATION)</span></li>
<li>lib/bodega/forumjobmodel_p.cpp <span style="color: \
grey">(PRE-CREATION)</span></li>
<li>lib/bodega/globals.h <span style="color: grey">(c696a40)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/112899/diff/" style="margin-left: \
3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>
_______________________________________________
Active mailing list
Active@kde.org
https://mail.kde.org/mailman/listinfo/active
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic