 Chromium Code Reviews
 Chromium Code Reviews Issue 
            2753753007:
    Introduce Identity Service and its initial usage  (Closed)
    
  
    Issue 
            2753753007:
    Introduce Identity Service and its initial usage  (Closed) 
  | DescriptionIntroduce Identity Service and its initial usage
This CL introduces the Identity Service and converts the implementation
of the chrome.identity.GetProfileUserInfo() extension function to use
the new service. Notable points:
- The Identity Service is embedded in //chrome rather than //content,
  as it needs access to per-Profile classes with //chrome-level
  factories.
- The initial API is simply enough to satisfy the needs of the initial
  consumer. We will build out this API by incrementally converting
  further consumers.
- In the long term, the //components/signin classes on which the
  Identity Service depends will be folded into the Identity Service
  implementation, and their consumers will be converted to consume the
  Identity Service.
- The Identity Service makes use of the existing AccountId Mojo struct.
  It extends that struct to be nullable, as the Identity Service needs
  to be able to convey to a requesting client that the user is not
  signed in. Note that a separate HasPrimaryAccount() => bool method
  would not suffice here: since the communication is asynchronous, the
  user could always have signed out by the time that the Identity
  Service receives the GetPrimaryAccountId() call.
BUG=683120, 683124
TEST=Install a Chrome extension with the identity and identity.email
permissions in its manifest. Go to chrome://extensions, enable developer mode,
and inspect the background page of the above app. At the JS console that that
brings up, execute:
chrome.identity.getProfileUserInfo((account) => {console.log(account)})
Verify that the printout corresponds to the information of the account
being used for sync.
Review-Url: https://codereview.chromium.org/2753753007
Cr-Commit-Position: refs/heads/master@{#459410}
Committed: https://chromium.googlesource.com/chromium/src/+/b85bd3b039159890285ab7df4bf280f89cd9980f
   Patch Set 1 #Patch Set 2 : Make AccountId nullable #Patch Set 3 : Self-review #
      Total comments: 15
      
     Patch Set 4 : Rebase #Patch Set 5 : Response to reviews #Messages
    Total messages: 40 (24 generated)
     |