[jboss-svn-commits] JBL Code SVN: r35764 - in labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src: main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Oct 27 09:01:25 EDT 2010
Author: velias
Date: 2010-10-27 09:01:24 -0400 (Wed, 27 Oct 2010)
New Revision: 35764
Modified:
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfig.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FISHEYEValueSource.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FishEyeCallException.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRACallException.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRAValueSource.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/test/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfigTest.java
Log:
Improved exception handling on FISHEYE calls - messages in exception now contains FishEye key used on call
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfig.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfig.java 2010-10-27 09:43:20 UTC (rev 35763)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfig.java 2010-10-27 13:01:24 UTC (rev 35764)
@@ -74,4 +74,45 @@
this.path = StringUtils.trimToNull(path);
}
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(getName());
+ if (getPath() != null) {
+ sb.append(":").append(getPath());
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((name == null) ? 0 : name.hashCode());
+ result = prime * result + ((path == null) ? 0 : path.hashCode());
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ FishEyeRepositoryConfig other = (FishEyeRepositoryConfig) obj;
+ if (name == null) {
+ if (other.name != null)
+ return false;
+ } else if (!name.equals(other.name))
+ return false;
+ if (path == null) {
+ if (other.path != null)
+ return false;
+ } else if (!path.equals(other.path))
+ return false;
+ return true;
+ }
+
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FISHEYEValueSource.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FISHEYEValueSource.java 2010-10-27 09:43:20 UTC (rev 35763)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FISHEYEValueSource.java 2010-10-27 13:01:24 UTC (rev 35764)
@@ -132,16 +132,17 @@
int statusCode = client.executeMethod(method);
if (statusCode != HttpStatus.SC_OK) {
- throw new FishEyeCallException("Http code: " + method.getStatusCode() + " and message: "
+ throw new FishEyeCallException("HTTP code: " + method.getStatusCode() + " and message: "
+ method.getStatusLine());
}
return processResponse(method.getResponseBody());
} catch (FishEyeCallException e) {
+ e.setFeKey(id);
throw e;
} catch (Exception e) {
- throw new FishEyeCallException(e);
+ throw new FishEyeCallException(id, e);
} finally {
method.releaseConnection();
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FishEyeCallException.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FishEyeCallException.java 2010-10-27 09:43:20 UTC (rev 35763)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/FishEyeCallException.java 2010-10-27 13:01:24 UTC (rev 35764)
@@ -1,5 +1,7 @@
package org.jboss.community.sbs.plugin.reports.monthly.valuesource;
+import org.jboss.community.sbs.plugin.reports.monthly.config.FishEyeRepositoryConfig;
+
/**
* Exception used when FISHEYE call fails.
*
@@ -8,29 +10,65 @@
public class FishEyeCallException extends Exception {
/**
- * @param message
- * @param cause
+ * FISHEYE Key call failed for.
*/
- public FishEyeCallException(String message, Throwable cause) {
- super(formatMessage(message), cause);
- }
+ private FishEyeRepositoryConfig feKey = null;
/**
* @param message
*/
public FishEyeCallException(String message) {
- super(formatMessage(message));
+ super(message);
}
/**
* @param cause
*/
public FishEyeCallException(Throwable cause) {
- super(formatMessage(cause != null ? cause.getMessage() : "Unknown cause"), cause);
+ super(cause);
}
- private static String formatMessage(String message) {
- return "FISHEYE HTTP call failed: " + (message != null ? message : "");
+ /**
+ * @param feKey FISHEYE Key call failed for.
+ * @param cause
+ */
+ public FishEyeCallException(FishEyeRepositoryConfig feKey, Throwable cause) {
+ super(cause);
+ setFeKey(feKey);
}
+ /**
+ * @return the feKey
+ */
+ public FishEyeRepositoryConfig getFeKey() {
+ return feKey;
+ }
+
+ /**
+ * Set FISHEYE Key call failed for.
+ *
+ * @param feKey the feKey to set
+ */
+ public void setFeKey(FishEyeRepositoryConfig feKey) {
+ this.feKey = feKey;
+ }
+
+ @Override
+ public String getMessage() {
+
+ StringBuilder sb = new StringBuilder();
+ sb.append("FISHEYE HTTP call failed");
+
+ if (feKey != null) {
+ sb.append(" for key ").append(feKey);
+ }
+
+ String message = super.getMessage();
+ if (message != null) {
+ sb.append(": ").append(message);
+ }
+
+ return sb.toString();
+ }
+
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRACallException.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRACallException.java 2010-10-27 09:43:20 UTC (rev 35763)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRACallException.java 2010-10-27 13:01:24 UTC (rev 35764)
@@ -9,28 +9,30 @@
/**
* @param message
- * @param cause
*/
- public JIRACallException(String message, Throwable cause) {
- super(formatMessage(message), cause);
- }
-
- /**
- * @param message
- */
public JIRACallException(String message) {
- super(formatMessage(message));
+ super(message);
}
/**
* @param cause
*/
public JIRACallException(Throwable cause) {
- super(formatMessage(cause != null ? cause.getMessage() : "Unknown cause"), cause);
+ super(cause);
}
- private static String formatMessage(String message) {
- return "JIRA HTTP call failed: " + (message != null ? message : "");
+ @Override
+ public String getMessage() {
+
+ StringBuilder sb = new StringBuilder();
+ sb.append("JIRA HTTP call failed");
+
+ String message = super.getMessage();
+ if (message != null) {
+ sb.append(": ").append(message);
+ }
+
+ return sb.toString();
}
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRAValueSource.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRAValueSource.java 2010-10-27 09:43:20 UTC (rev 35763)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/monthly/valuesource/JIRAValueSource.java 2010-10-27 13:01:24 UTC (rev 35764)
@@ -152,7 +152,7 @@
int statusCode = client.executeMethod(method);
if (statusCode != HttpStatus.SC_OK) {
- throw new JIRACallException("Http code: " + method.getStatusCode() + " and message: " + method.getStatusLine());
+ throw new JIRACallException("HTTP code: " + method.getStatusCode() + " and message: " + method.getStatusLine());
}
return processResponse(method.getResponseBody());
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/test/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfigTest.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/test/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfigTest.java 2010-10-27 09:43:20 UTC (rev 35763)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/test/java/org/jboss/community/sbs/plugin/reports/monthly/config/FishEyeRepositoryConfigTest.java 2010-10-27 13:01:24 UTC (rev 35764)
@@ -98,4 +98,63 @@
Assert.assertEquals("REPO", tested.getName());
}
+ @Test
+ public void testToString() {
+ FishEyeRepositoryConfig tested = new FishEyeRepositoryConfig("ORG");
+
+ Assert.assertEquals("ORG", tested.toString());
+
+ tested.setPath("/path");
+ Assert.assertEquals("ORG:/path", tested.toString());
+
+ }
+
+ @Test
+ public void testHashCode() {
+
+ FishEyeRepositoryConfig tested1a = new FishEyeRepositoryConfig("ORG");
+ FishEyeRepositoryConfig tested1b = new FishEyeRepositoryConfig("ORG");
+
+ // repo name only tests
+ Assert.assertEquals(tested1a.hashCode(), tested1b.hashCode());
+
+ // repo and path
+ tested1a.setPath("/path");
+ tested1b.setPath("/path");
+ Assert.assertEquals(tested1a.hashCode(), tested1b.hashCode());
+ }
+
+ @Test
+ public void testEquals() {
+ FishEyeRepositoryConfig tested1a = new FishEyeRepositoryConfig("ORG");
+ FishEyeRepositoryConfig tested1b = new FishEyeRepositoryConfig("ORG");
+ FishEyeRepositoryConfig tested2 = new FishEyeRepositoryConfig("ORG1");
+
+ Assert.assertFalse(tested1a.equals(null));
+ Assert.assertFalse(tested1a.equals("ORG"));
+
+ // repo name only tests
+ Assert.assertTrue(tested1a.equals(tested1b));
+ Assert.assertTrue(tested1b.equals(tested1a));
+ Assert.assertTrue(tested1a.equals(tested1a));
+ Assert.assertFalse(tested1a.equals(tested2));
+ Assert.assertFalse(tested2.equals(tested1a));
+
+ // repo and path tests
+ tested1a.setPath("/path");
+ Assert.assertFalse(tested1a.equals(null));
+ Assert.assertTrue(tested1a.equals(tested1a));
+
+ Assert.assertFalse(tested1a.equals(tested1b));
+ Assert.assertFalse(tested1b.equals(tested1a));
+
+ tested1b.setPath("/path2");
+ Assert.assertFalse(tested1a.equals(tested1b));
+ Assert.assertFalse(tested1b.equals(tested1a));
+
+ tested1b.setPath("/path");
+ Assert.assertTrue(tested1a.equals(tested1b));
+ Assert.assertTrue(tested1b.equals(tested1a));
+ }
+
}
More information about the jboss-svn-commits
mailing list