aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java
diff options
context:
space:
mode:
authorMaxim Epishchev <epishev@garant.ru>2016-02-03 14:34:44 +0300
committerMaxim Epishchev <epishev@garant.ru>2016-02-03 14:34:44 +0300
commit340c1c44bad78992ec49746d3776c3cff1a96fbd (patch)
tree722b0cc5d457a02e4e8fd283216fcec1b3e16a5b /src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java
parent4b880c7045ebf42974f833ffe9b11084c86c3408 (diff)
downloadbbprb-340c1c44bad78992ec49746d3776c3cff1a96fbd.tar.gz
Limit size "key" field in BitBucket POST API
Refactoring method ApiClient::computeAPIKey() to check maximum size of computed key. Now field size contolled by special constant ApiClient::MAX_KEY_SIZE_BB_API. This changes will resolve, in my opinion, issue with continuously rebuilding: method ApiClient::hasBuildStatus() fail and PR's are always trigger new builds.
Diffstat (limited to 'src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java')
-rw-r--r--src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java b/src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java
index c5d4159..d337796 100644
--- a/src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java
+++ b/src/main/java/bitbucketpullrequestbuilder/bitbucketpullrequestbuilder/BitbucketPullRequestsBuilder.java
@@ -2,10 +2,15 @@ package bitbucketpullrequestbuilder.bitbucketpullrequestbuilder;
import bitbucketpullrequestbuilder.bitbucketpullrequestbuilder.bitbucket.Pullrequest;
import hudson.model.AbstractProject;
+
+import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
import java.util.Collection;
+import java.util.logging.Level;
import java.util.logging.Logger;
+
import org.apache.commons.codec.binary.Hex;
/**
@@ -54,12 +59,20 @@ public class BitbucketPullRequestsBuilder {
return this.project;
}
+ /**
+ * Return MD5 hashed full project name or full project name, if MD5 hash provider inaccessible
+ * @return unique project id
+ */
public String getProjectId() {
try {
final MessageDigest MD5 = MessageDigest.getInstance("MD5");
return new String(Hex.encodeHex(MD5.digest(this.project.getFullName().getBytes("UTF-8"))));
- } catch (Exception exc) {
- logger.severe(exc.toString());
+ } catch (NoSuchAlgorithmException exc) {
+ logger.log(Level.WARNING, "Failed to produce hash", exc);
+ exc.printStackTrace();
+ } catch (UnsupportedEncodingException exc) {
+ logger.log(Level.WARNING, "Failed to produce hash", exc);
+ exc.printStackTrace();
}
return this.project.getFullName();
}