mirror of
https://github.com/google/nomulus
synced 2026-02-03 19:42:39 +00:00
Simplify the fee extensions.
I added shared base classes to all of the Fee extension types that make it possible to fully ignore the version in the flows. (You ask for a FeeCreateCommandExtension, for example, and you get one without having to worry about which). This is an improvement over the old code that asked you to provide a list of possible fee extensions and then ask for the first one in preference order. As part of this I was able to make the Fee implementation a bit simpler as well. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=137992390
This commit is contained in:
@@ -14,19 +14,22 @@
|
||||
|
||||
package google.registry.model.domain.fee;
|
||||
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
|
||||
/**
|
||||
* Interface for individual fee extension items in Check commands. These are derived from the more
|
||||
* general query items (which cover Info commands as well), but may also contain a domain name,
|
||||
* depending on the version of the fee extension.
|
||||
*/
|
||||
public interface FeeCheckCommandExtensionItem extends FeeQueryCommandExtensionItem {
|
||||
@XmlTransient
|
||||
public abstract class FeeCheckCommandExtensionItem extends FeeQueryCommandExtensionItem {
|
||||
|
||||
/** True if this version of the fee extension supports domain names in Check items. */
|
||||
public boolean isDomainNameSupported();
|
||||
public abstract boolean isDomainNameSupported();
|
||||
|
||||
/** The domain name being checked; throws an exception if domain names are not supported. */
|
||||
public String getDomainName() throws UnsupportedOperationException;
|
||||
public abstract String getDomainName();
|
||||
|
||||
/** Create a builder for a matching fee check response item. */
|
||||
public FeeCheckResponseExtensionItem.Builder createResponseBuilder();
|
||||
public abstract FeeCheckResponseExtensionItem.Builder<?> createResponseBuilder();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user