Replace base::Timer with behavior-specific timers in gcm/ and gcm_driver/

This CL replaces base::Timer with its subclasses.
As base::Timer changes its behavior subject to its construction time
flags, that makes hard to see the actual timer behavior, especially
it's unclear when a timer is injected from other components.
Also, that OnceCallback support of base::Timer is hard to implement on
the dynamically determined invocation pattern.

Bug: 850247
Change-Id: I525b47094e6b3173c018927fba250b9fa9071b76
Reviewed-by: Dan Erat <>
Reviewed-by: Peter Beverloo <>
Commit-Queue: Taiju Tsuiki <>
Cr-Original-Commit-Position: refs/heads/master@{#572946}
Cr-Mirrored-Commit: b6c66b26dba3551150ad3b8156c080540cc43b10
2 files changed