Add WHOIS disclaimer text to ConfigModule

This fixes #23 for @parsoj by allowing a custom disclaimer to be
specified via dependency injection modules.

By making the disclaimer part of the dependency injection graph, it can
come from anywhere.

For example, if I was Donuts, I would have my own repository. I'd use an
external http_archive() repository for Domain Registry. Then I would
write my own Dagger @Component for each App Engine module. My Component
would have a list of Dagger Modules, which I copied from the Domain
Registry version. Then I would swap out ConfigModule with my own
DonutsConfigModule, which provides the same values.

So long as a method exists that @Provides @Config("whoisRegistry"), and
the module containing it is listed in the @Component, the dependency
injection graph becomes valid and complete for the whois package
(provided other dependencies are met.)

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=128082921
This commit is contained in:
Justine Tunney 2016-07-21 11:18:06 -07:00
parent 2c9567e183
commit e82a40a2fb
34 changed files with 149 additions and 310 deletions

View file

@ -22,13 +22,14 @@ public interface WhoisResponse {
/**
* Returns a plain text WHOIS response.
*
* @param preferUnicode if {@code false} will cause the output to be converted to ASCII
* whenever possible; for example, converting IDN hostname labels to punycode. However
* certain things (like a domain registrant name with accent marks) will be returned
* "as is". If the WHOIS client has told us they're able to receive UTF-8 (such as with
* HTTP) then this field should be set to {@code true}.
* @param preferUnicode if {@code false} will cause the output to be converted to ASCII whenever
* possible; for example, converting IDN hostname labels to punycode. However certain things
* (like a domain registrant name with accent marks) will be returned "as is". If the WHOIS
* client has told us they're able to receive UTF-8 (such as with HTTP) then this field should
* be set to {@code true}.
* @param disclaimer text to show at bottom of output
*/
String getPlainTextOutput(boolean preferUnicode);
String getPlainTextOutput(boolean preferUnicode, String disclaimer);
/**
* Returns the time at which this response was created.