aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2012-12-29 15:56:48 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2012-12-29 15:56:48 +0100
commit1b83af30a4e935f2037a6e9153cb438c29adfbfc (patch)
tree4b885fe232512d3c4c22c99d004ce202ec7638f6 /src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
parentf39b6c813dfa8ad97de4f8a35aaf21ee1408b6d4 (diff)
downloadesper-testing-1b83af30a4e935f2037a6e9153cb438c29adfbfc.tar.gz
esper-testing-1b83af30a4e935f2037a6e9153cb438c29adfbfc.tar.bz2
esper-testing-1b83af30a4e935f2037a6e9153cb438c29adfbfc.tar.xz
esper-testing-1b83af30a4e935f2037a6e9153cb438c29adfbfc.zip
o Starting on a generic paging component.
o Showing recent jobs on the jenkins server page.
Diffstat (limited to 'src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java')
-rw-r--r--src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java27
1 files changed, 27 insertions, 0 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 8d32dbe..117d91d 100644
--- a/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
+++ b/src/main/java/io/trygvis/esper/testing/jenkins/JenkinsDao.java
@@ -10,6 +10,7 @@ import java.util.*;
import java.util.List;
import static fj.data.Option.*;
+import static io.trygvis.esper.testing.Util.toList;
import static io.trygvis.esper.testing.Util.toUuidArray;
import static io.trygvis.esper.testing.util.sql.SqlOption.fromRs;
import static java.lang.System.*;
@@ -96,6 +97,10 @@ public class JenkinsDao {
}
};
+ // -----------------------------------------------------------------------
+ // Server
+ // -----------------------------------------------------------------------
+
public List<JenkinsServerDto> selectServers(boolean enabledOnly) throws SQLException {
String sql = "SELECT " + JENKINS_SERVER + " FROM jenkins_server";
@@ -121,6 +126,10 @@ public class JenkinsDao {
}
}
+ // -----------------------------------------------------------------------
+ // Job
+ // -----------------------------------------------------------------------
+
public SqlOption<JenkinsJobDto> selectJob(UUID uuid) throws SQLException {
try (PreparedStatement s = c.prepareStatement("SELECT " + JENKINS_JOB + " FROM jenkins_job WHERE uuid=?")) {
s.setString(1, uuid.toString());
@@ -128,6 +137,16 @@ 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 LIMIT ? OFFSET ?")) {
+ int i = 1;
+ s.setString(i++, server.toString());
+ s.setInt(i++, page.count.orSome(10));
+ s.setInt(i, page.startIndex.orSome(0));
+ return toList(s, jenkinsJob);
+ }
+ }
+
public SqlOption<JenkinsJobDto> selectJobByUrl(URI url) throws SQLException {
try (PreparedStatement s = c.prepareStatement("SELECT " + JENKINS_JOB + " FROM jenkins_job WHERE url=?")) {
s.setString(1, url.toASCIIString());
@@ -161,6 +180,10 @@ public class JenkinsDao {
}
}
+ // -----------------------------------------------------------------------
+ // Build
+ // -----------------------------------------------------------------------
+
public SqlOption<JenkinsBuildDto> selectBuildByEntryId(String id) throws SQLException {
try (PreparedStatement s = c.prepareStatement("SELECT " + JENKINS_BUILD + " FROM jenkins_build WHERE entry_id=?")) {
int i = 1;
@@ -190,6 +213,10 @@ public class JenkinsDao {
}
}
+ // -----------------------------------------------------------------------
+ // User
+ // -----------------------------------------------------------------------
+
public UUID insertUser(UUID server, String absoluteUrl) throws SQLException {
try (PreparedStatement s = c.prepareStatement("INSERT INTO jenkins_user(" + JENKINS_USER + ") VALUES(?, ?, ?, ?)")) {
UUID uuid = UUID.randomUUID();