Kawai Wiki

Rev

Rev 79 | Rev 86 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 79 Rev 80
Line 4... Line 4...
4
import java.sql.ResultSet;
4
import java.sql.ResultSet;
-
 
5
import java.util.ArrayList;
5
import java.util.LinkedList;
6
import java.util.LinkedList;
6
import java.util.List;
7
import java.util.List;
7
8
8
import org.kawai.dao.PageDAO;
9
import org.kawai.dao.PageDAO;
9
import org.kawai.model.Language;
10
import org.kawai.model.Language;
Line 342... Line 343...
342
        }
343
        }
343
       
344
       
344
        @Override
345
        @Override
345
        public List<Revision> loadRevisions(String name, Language lang) {
346
        public List<Revision> loadRevisions(String name, Language lang) {
346
               
347
               
347
                Revision r = new Revision();
-
 
348
                r.setName(name);
-
 
349
                r.setLanguageId(lang.getId());
-
 
-
 
348
                PreparedStatement stmt = null;
-
 
349
                ResultSet rset = null;
350
               
350
               
351
                return session.loadList(r, "revision desc");
-
 
-
 
351
                try {
-
 
352
                       
-
 
353
                        StringBuilder query = new StringBuilder(256);
-
 
354
                        query.append("select ").append(session.buildSelect(Revision.class, "r"));
-
 
355
                        query.append(", ").append(session.buildSelect(User.class, "u"));
-
 
356
                        query.append(" from Revisions r join Users u on r.user_id = u.id");
-
 
357
                        query.append(" where r.name = ? and r.language_id = ?");
-
 
358
                        query.append(" order by revision desc");
-
 
359
                        query.append(" limit 50");
-
 
360
                       
-
 
361
                        stmt = conn.prepareStatement(query.toString());
-
 
362
                        stmt.setString(1, name);
-
 
363
                        stmt.setInt(2, lang.getId());
-
 
364
                       
-
 
365
                        rset = stmt.executeQuery();
-
 
366
                       
-
 
367
                        List<Revision> revisions = new ArrayList<Revision>(50);
-
 
368
                       
-
 
369
                        while(rset.next()) {
-
 
370
                               
-
 
371
                                Revision r = new Revision();
-
 
372
                               
-
 
373
                                session.populateBean(rset, r, "r");
-
 
374
                               
-
 
375
                                User u = new User();
-
 
376
                               
-
 
377
                                session.populateBean(rset, u, "u");
-
 
378
                               
-
 
379
                                r.setUser(u);
-
 
380
                               
-
 
381
                                revisions.add(r);
-
 
382
                        }
-
 
383
                       
-
 
384
                        return revisions;
-
 
385
                } catch(Exception e) {
-
 
386
                        throw new RuntimeException(e);
-
 
387
                } finally {
-
 
388
                        close(stmt, rset);
-
 
389
                }
352
        }
390
        }
353
}
391
}