diff --git a/pom.xml b/pom.xml index a743314..65dd170 100644 --- a/pom.xml +++ b/pom.xml @@ -34,5 +34,15 @@ guava 14.0.1 + + org.apache.xmlrpc + xmlrpc-client + 3.1.3 + + + com.google.guava + guava + 14.0.1 + \ No newline at end of file diff --git a/src/main/java/com/j2bugzilla/api/Bugzilla.java b/src/main/java/com/j2bugzilla/api/Bugzilla.java index 2c23f80..2163ed6 100644 --- a/src/main/java/com/j2bugzilla/api/Bugzilla.java +++ b/src/main/java/com/j2bugzilla/api/Bugzilla.java @@ -3,6 +3,7 @@ import java.net.URI; import java.util.ServiceLoader; import java.util.Set; +import com.j2bugzilla.api.ConnectionException; /** * The {@code Bugzilla} class is the entry point into the API. This class adheres to the SPI contract. @@ -11,7 +12,7 @@ * * @author Tom */ -public abstract class Bugzilla { +public abstract class Bugzilla{ /** * Loads and returns a new instance of {@link Bugzilla} to provide access to the various diff --git a/src/main/java/com/j2bugzilla/api/ConnectionException.java b/src/main/java/com/j2bugzilla/api/ConnectionException.java new file mode 100644 index 0000000..2d0a2f8 --- /dev/null +++ b/src/main/java/com/j2bugzilla/api/ConnectionException.java @@ -0,0 +1,45 @@ +/* + * Copyright 2011 Thomas Golden + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.j2bugzilla.api; + +/** + * ConnectionException is thrown any time there is an error trying to access + * the Bugzilla installation over the network. It may be a network-related problem such as + * a timeout or malformed URL, or it may be an underlying XML-RPC exception, but it + * generally indicates that any further Bugzilla calls will fail. + * + * ConnectionException will always be a wrapper for a nested Exception which + * indicates the cause of the error. + * @author Tom + * + */ +public class ConnectionException extends RuntimeException { + + /** + * Eclipse-generated SUID + */ + private static final long serialVersionUID = 2957676868743832929L; + + /** + * Public constructor which calls super() + * @param message A custom error message describing the issue + * @param cause The root cause of the exception + */ + public ConnectionException(String message, Throwable cause) { + super(message, cause); + } + +} diff --git a/src/main/java/com/j2bugzilla/api/SearchBy.java b/src/main/java/com/j2bugzilla/api/SearchBy.java index e21ef2e..0508dd7 100644 --- a/src/main/java/com/j2bugzilla/api/SearchBy.java +++ b/src/main/java/com/j2bugzilla/api/SearchBy.java @@ -81,7 +81,7 @@ public enum SearchBy { private final String name; /** - * Creates a new {@link SearchLimiter} with the + * Creates a new {@link SearchBy} with the * designated name * @param name The name Bugzilla expects for this search limiter */ @@ -92,8 +92,7 @@ public enum SearchBy { * Get the name Bugzilla expects for this search limiter * @return A String representing the search limiter */ - String getName() { + public String getName() { return this.name; } - }