We use {EPP resource}{action} as the naming scheme everywhere else, so we shoudl do so here too. It's generally nicer for files to group by type of EPP resource (so all of the domain actions are together) than by type of action.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130955192
This CL also adds IncrementableMetric#reset() methods to allow resetting the
value and start timestamp of IncrementableMetrics.
This is necessary because some backends, like Stackdriver, use non-monotonic
changes in cumulative metric values to detect timeseries restarts. Tracking and
re-setting the start timestamp allows users to track mostly monotonic metrics
which may have non-monotonic discontinuities.
See https://cloud.google.com/monitoring/api/ref_v3/rest/v3/TimeSeries#Point for
more details.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130795229
It's superseded by RequestHandler's processing of @Action(requireLogin = true), and is no longer used anywhere:
[]
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130788873
This change enforces that IncrementableMetrics should only monotonically
increase in value, and adds a new increment() method to increment by one, which is slightly faster than incrementBy (due to a lack of non-negative checking) in the common case that the counter should only be incremented by one.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130578421
Add additional logic to handle cases when a MetricDescriptor is already defined
on the server, fix an NPE in related code, and add additional tests to ensure
that TimeSeries created from native MetricPoints are well-formed.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130555708
This change enforces URL-like metric names to match the behavior of
Stackdriver. The StackdriverWriter no longer prepends a slash, which was a
crutch.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130537347
According to the ICAAN operation profile:
2.1.7. Registries MUST support lookup for entities with the registrar role within other objects using the handle (as described in 3.1.5 of RFC7482). The handle of the entity with the registrar role MUST be equal to IANA Registrar ID. The entity with the registrar role in the RDAP response MUST contain a publicIDs member to identify the IANA Registrar ID from the IANA’s Registrar ID registry. The type value of the publicID object MUST be equal to IANA Registrar ID.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130452501
See b/30806813 for more context. Copied from there: This appears to be happening if we get an EPP domain create command that is missing any contacts (but has a registrant; with no registrant we exercise a different codepath). In that case, JAXB leaves the contacts field on the Create null, and we try to pass it into Sets.union() as a result of Corey's refactoring in [] that changed contact loading to load the contacts and registrant all at once. The fix is just to apply nullToEmpty() first.
Note that it's always an error to try to create a domain without any non-registrant contacts, but that's supposed to happen later on in BaseDomainCreateFlow.verifyCreateIsAllowed() via validateRequiredContactsPresent(), which will produce a nice error message.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130309019
Adds the ability to search for entities (contacts and registrars) by name.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130305930
The ICANN operational profile says:
1.4.12. An entity object within an RDAP response MUST contain an events
member with the following events:
o An event of eventAction type registration.
o An event of eventAction type last changed. The event of eventAction type last changed MUST be omitted if the Contact Object (as defined in RFC5733) has not been updated since it was created.
o An event of eventAction type last update of RDAP database.
It has similar wording for domains and hosts. The registration and last changed events are already being generated. This CL adds a "last update of RDAP database" event for all three object types. It's very redundant, and I have warned ICANN that "last update" doesn't mean what they might expect in the context of an eventually consistent database, but there we are.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130279688
The instrumentation implementation adds the ability to track counters for dimensional data in the codebase. Instrumentation points will be added to different parts of the codebase in upcoming CLs. The ability to export the data to Stackdriver will also be added in an upcoming CL.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130195199
Support creating domain with gtech_tool, instead of creating temporary epp file
and run execute_epp manually. Also changes CreateContactCommand for consistency.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130127280
This CL adds the hooks necessary to implement TLD-specific flow info and update flow logic. Usage of the hooks follows in a separate CL.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130108832
I forgot to inject the CreateTldCommand/UpdateTldCommand commands, which now
need to be injected so that the list of available DnsWriter implementations is
instantiated. This CL also adds a new DI Set<String> with just the name of the
writer, so that the instantiated writer map (which may have many DI dependencies)
doesn't need to be pulled in.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130042215
According to Gustavo Lozano of ICANN: "In the case of the RDAP profile (gTLD space), the “port43” element is not expected to be used, because Whois/43 tcp will be deprecated in the future." So it sounds like we should not include the port43 element for the moment.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130017966
ECatcher seems to trigger on warnings, even if no exception is thrown (?). This warning doesn't really need to be a warning if it's WAI and not something we're actually going to bother to reach out to registrars about (in this case, 101domain apparently isn't declaring the launch extension, but we let them use it anyway).
If at some point we decide to be stricter about declaring extensions and want to go determine how often this is happening, making it INFO vs WARNING doesn't make that any harder.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130016606
This CL has minimal[*] immediate impact on the targets, but it has two consequences moving forward:
- When [] moves to Java 8, compatible_with=appengine targets will remain on Java 7. (If this target is a non-java_* target, you can ignore this bullet.)
- compatible_with=appengine targets can depend only on other compatible_with=appengine targets. (Fortunately, most common libraries will be compatible_with=appengine: []
This CL is one of thousands in a migration on the critical path for Java 8, so please respond promptly, and, if you are the wrong reviewer, please reassign the CL.
[*] It does mean that your target will go back to being compiled to Java 7 bytecode after its recent switch to Java 8 ([]If your target compiles the same files as another non-compatible_with=appengine target, this CL may break one_definition_test targets.
More information:
[]
Tested:
[] build --nobuild
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129660908
Also had to add an EnumParameter class to support
List<T extends Enum<T>>, as these aren't natively supported by
JCommander (although single Enum parameters are.)
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129464699
The XJC genrule in particular was dirtying /tmp which I believe may have
been causing problems for Donuts.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129451600
This is one of several CLs in a sequence for allowing per-TLD DNS
implementations.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129445641
The plumbing to support different DnsWriter implementations per TLD
using DI will come in a later CL.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129375856
Updates the RDAP code to reflect guidance and confirmation received from various mailing lists.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129254894
This is better than the previous way of using the canonical name of the class,
because the previous way did not allow for refactoring, and also required the
PremiumPricingEngine to live in the model package lest there be circular
dependencies, which does not seem ideal.
Note that, for reasons of backwards compatibility with existing persisted data,
the name of the static premium pricing engine has been set to its canonical
class name, but the class can now be refactored going forward so long as this
string remains unchanged, and any new pricing engine implementations can use
whatever string key they want (it doesn't have to be a canonical class name).
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129215185
These build rules allow Bazel to generate the .ear and .war files which
appcfg.sh (a tool that comes with the App Engine SDK) can then use to
perform a deployment.
Included in this CL are configurations for five separate production
environments: production, sandbox, alpha, crash, and local.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129163010