The ICAAN Operational Profile dictates that a notice be added to the RDAP search results response when there are more objects than the server's chosen result set size. This CL (hopefully the last one) handles the fixes for entity (contact and registrar) searches.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=135494283
Very few flows actually check the phase. Push the checks down to the leaf
flows so that we can remove the inherited code from ResourceFlow and replace
it with utility methods. In the process, document and test two places that
throw the exception but did not previously test it.
This introduces a temporary hack in BaseDomainCreateFlow that does something
specific for DomainApplicationCreateFlow. It will go away literally tomorrow
when I flatten that flow.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=135480538
The ICAAN Operational Profile dictates that a notice be added to the RDAP search results response when there are more objects than the server's chosen result set size. This CL handles the fixes for nameserver searches.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=135411617
The ICAAN Operational Profile dictates that a notice be added to the RDAP search results response when there are more objects than the server's chosen result set size. This CL handles the fixes for domain searches.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=135407203
This fixes a whole mess of Eclipse warnings about a Closeable not calling
close().
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=135407085
This is how it should be in every test, but we used to not be
so careful about this. I had to touch this file anyways, so
I fixed it here.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=135387267
Almost all uses were in test classes, which I replaced with clock.nowUTC().
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134993149
TESTED=I deployed it on alpha, renamed some hosts, and verified that
the [] ran as expected.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134991941
This applies lessons learned from the async batch DNS refresh action, in
particular making testing more robust.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134833523
TestExtraLogicManager is pretty kludgy, and should be replaced with injection, mocking, etc. But in the meantime, using a dedicated error to signal its success, rather than IllegalArgumentException as was done before, at least makes things a little easier to follow.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134832315
This CL fixes a bug introduced in [] which caused an exception to be thrown when an attempt was made to update a domain without a fee extension, even if the update was free, as it usually is. The fee extension should only be required if the update is not free.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134830250
This change consolidates gtech_tool into registry_tool. Since App Engine has
no actual ACLs on the remote API (any access is essentially root access), we're
removing this to avoid giving the impression to users that gtech_tool is truly
locked down from a security perspective compared to registry_tool.
In addition to merging GtechTool.COMMAND_MAP into RegistryTool.COMMAND_MAP, this
change also removes the {create,update}_sandbox_tld commands (which only made
sense for gtech_tool) and removes references to gtech_tool in the documentation.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134828710
It was already doing this for domains and hosts, and that it wasn't doing it for
contacts was confusing and caused me to experience a difficult-to-track-down
error in writing new code.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134827468
Use ordered sets to make sure that we don't pick up the same domain more than once if we find more than one of its nameservers, while preserving the order in which the domains are found. Add tests to make sure it works.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134821458
They were taking a DateTime "now", which would seem like it would be the time of
when the resource was deleted, but it was actually the time by which the
resource was deleted, with the actual deletion time being hardcoded to a day
prior. The confusion was evident because a fair number of tests were passing
the wrong thing. I renamed the parameter "deletionTime" to make it exactly
clear what it's doing and fixed up some callsites where necessary.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134818032
This will replace the existing DnsRefreshForHostRenameAction.
This is stage one of a three stage migration process. It adds the new queue and
[] but doesn't call them yet. Stage two will cut over to using the new
functionality, and stage three will remove the old functionality.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134793963
This improves the tests by:
1) Adding tests for alphabetical ordering of the command maps, to keep them
organized, and fixing existing mis-orderings. Note that this is a no-op
test for RegistryTool since it uses ImmutableSortedMap (to resort the
commands after inserting GtechTool.COMMAND_MAP), but it'll be relevant
in the upcoming CL when they get merged. I changed GtechTool.COMMAND_MAP
to use regular ImmutableMap.
2) Checking that RegistryTool.COMMAND_MAP (the full map, after the existing
GtechTool.COMMAND_MAP has been merged in) contains the exact same set of
commands as all the concrete classes implementing Command that we can find.
This is a stronger test than what we had before, which just checked that
every Command class appeared in RegistryTool (i.e. that RegistryTool's
commands are a superset of all Commands found). You'd think that it'd be
impossible for RegistryTool to contain commands that aren't in the set of
Commands we found, but it is if we're not searching for commands properly,
which we weren't (we were only checking within the .tools package and not
within any subpackages (e.g. tools.javascrap). This has now been fixed.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134451859
Now it lives alongside the delete prober data action, as well as any future
batch/maintenance tasks that should run periodically.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134435668
The Stackdriver API requires that the end time always be greater than the start
time for cumulative metric points.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134396192
Also creates a new package named 'batch' to house it.
TESTED=I deployed it to alpha, sent a POST request to the task URL, and it
successfully ran the [].
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134332999
This was added in [] but is not actually necessary - the exDate
in the EppOutput is already checked by the response XML comparison step.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134296246
This refactors the GetEppResourceCommand hierarchy a bit so that instead of
using the type param on the class to do implicit loading (which doesn't
work that well any more for domain applications anyway), we just do the
loading in each child class and rely on the parent class only for printing
and setting common flags.
I did this to make it possible for loadByForeignKey() to have strong typing
(in a future CL), but I think this changes stands on its own merits for
making the logic here more straightforward and actually somewhat shorter.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134115072
This reworks the logic in RefreshDnsAction by factoring out a few
helper methods so the core logic is simpler and more straightforward.
Also added a couple tests to DnsInjectionTest that seemed worth having
for symmetry.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134110706
Eclipse (with Guide) is bothering me very much that it cannot infer the intended
type for ImmutableList.of() from the argument type that the calling function
defines. Adding explicit type parameters to get rid of the annoying exclamations
marks in Eclipse.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134105086
The reason field is 1:1 mapped to skus in billing reports. Need to add a new reason for EAP for this type of billing event for reporting to work correctly. Also map that reason to the correct SKU.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=134005364
When custom effective date is passed in the check command, the response should
contain that date as an acknowledgemant that the check is performed at a time
different from now.
Also when the fee(s) returned contains a validDateRange (i. e. EAP fees that
are only valid during a certain period), the response will contain a notAfter
field which is the date after which the quoted fee(s) are no longer valid. (i.
e. the earliest of the end dates of all fees that would expire.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=133989775
These were historically separate due to the old flow
structure, but now they should be one exception.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=133984858
It is replaced by loadByForeignKey(), which does the same thing that
loadByUniqueId() did for contacts, hosts, and domains, and also
loadDomainApplication(), which loads domain application by ROID. This eliminates
the ugly mode-switching of attemping to load by other foreign key or ROID.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=133980156