added support for retry analyzer (submitted by Jeremy)
diff --git a/src/jdk15/org/testng/util/RetryAnalyzerCount.java b/src/jdk15/org/testng/util/RetryAnalyzerCount.java
new file mode 100644
index 0000000..b2f5746
--- /dev/null
+++ b/src/jdk15/org/testng/util/RetryAnalyzerCount.java
@@ -0,0 +1,48 @@
+package org.testng.util;

+

+import org.testng.IRetryAnalyzer;

+import org.testng.ITestResult;

+

+import java.util.concurrent.atomic.AtomicInteger;

+

+/**

+ * An implementation of IRetryAnalyzer that allows you to specify

+ * the maximum number of times you want your test to be retried.

+ * 

+ * @author tocman@gmail.com (Jeremie Lenfant-Engelmann)

+ */

+public abstract class RetryAnalyzerCount implements IRetryAnalyzer {

+

+  // Default retry once.

+  AtomicInteger count = new AtomicInteger(1);

+

+  /**

+   * Set the max number of time the method needs to be retried.

+   * @param count

+   */

+  protected void setCount(int count) {

+    this.count.set(count);

+  }

+

+  /**

+   * Retries the test if count is not 0. 

+   * @param result The result of the test.

+   */

+  public boolean retry(ITestResult result) {

+    boolean retry = false;

+

+    if (count.intValue() > 0) {

+      retry = retryMethod(result);

+      count.decrementAndGet();

+    }

+    return retry;

+  }

+

+  /**

+   * The method implemented by the class that test if the test

+   * must be retried or not.

+   * @param result The result of the test.

+   * @return true if the test must be retried, false otherwise.

+   */

+  public abstract boolean retryMethod(ITestResult result);

+}