aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java')
-rwxr-xr-xsrc/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java b/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
index f8291b5..bd85e89 100755
--- a/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
+++ b/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
@@ -91,7 +91,7 @@ public class JenkinsDao {
String sql = "SELECT " + JENKINS_SERVER + " FROM jenkins_server";
if (enabledOnly) {
- sql += " WHERE enabled=true";
+ sql += " WHERE enabled=TRUE";
}
sql += " ORDER BY url";
@@ -119,10 +119,22 @@ public class JenkinsDao {
}
}
- public List<JenkinsJobDto> selectJobsByServer(UUID server, PageRequest page) throws SQLException {
- try (PreparedStatement s = c.prepareStatement("SELECT " + JENKINS_JOB + " FROM jenkins_job WHERE server=? ORDER BY created_date DESC LIMIT ? OFFSET ?")) {
+ public List<JenkinsJobDto> selectJobsByServer(UUID server, PageRequest page, Option<String> name) throws SQLException {
+ String sql = "SELECT " + JENKINS_JOB + " FROM jenkins_job WHERE server=?";
+
+ if (name.isSome()) {
+ sql += " AND lower(display_name) LIKE '%' || lower(?) || '%'";
+ }
+
+ sql += orderBy(ifEmpty(page.orderBy, "created_date-"), "created_date");
+ sql += " LIMIT ? OFFSET ?";
+
+ try (PreparedStatement s = c.prepareStatement(sql)) {
int i = 1;
s.setString(i++, server.toString());
+ if (name.isSome()) {
+ s.setString(i++, name.some());
+ }
s.setInt(i++, page.count.orSome(10));
s.setInt(i, page.startIndex.orSome(0));
return toList(s, jenkinsJob);