| OLD | NEW | 
|    1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #include "chrome/browser/chromeos/login/ownership_service.h" |    5 #include "chrome/browser/chromeos/login/ownership_service.h" | 
|    6  |    6  | 
|    7 #include "base/file_path.h" |    7 #include "base/file_path.h" | 
|    8 #include "base/file_util.h" |    8 #include "base/file_util.h" | 
|    9 #include "base/lazy_instance.h" |    9 #include "base/lazy_instance.h" | 
|   10 #include "base/synchronization/lock.h" |   10 #include "base/synchronization/lock.h" | 
| (...skipping 14 matching lines...) Expand all  Loading... | 
|   25   return g_ownership_service.Pointer(); |   25   return g_ownership_service.Pointer(); | 
|   26 } |   26 } | 
|   27  |   27  | 
|   28 OwnershipService::OwnershipService() |   28 OwnershipService::OwnershipService() | 
|   29     : manager_(new OwnerManager), |   29     : manager_(new OwnerManager), | 
|   30       utils_(OwnerKeyUtils::Create()), |   30       utils_(OwnerKeyUtils::Create()), | 
|   31       policy_(NULL), |   31       policy_(NULL), | 
|   32       ownership_status_(OWNERSHIP_UNKNOWN) { |   32       ownership_status_(OWNERSHIP_UNKNOWN) { | 
|   33   notification_registrar_.Add( |   33   notification_registrar_.Add( | 
|   34       this, |   34       this, | 
|   35       NotificationType::OWNER_KEY_FETCH_ATTEMPT_SUCCEEDED, |   35       chrome::OWNER_KEY_FETCH_ATTEMPT_SUCCEEDED, | 
|   36       NotificationService::AllSources()); |   36       NotificationService::AllSources()); | 
|   37 } |   37 } | 
|   38  |   38  | 
|   39 OwnershipService::~OwnershipService() {} |   39 OwnershipService::~OwnershipService() {} | 
|   40  |   40  | 
|   41 void OwnershipService::Prewarm() { |   41 void OwnershipService::Prewarm() { | 
|   42   // Note that we cannot prewarm in constructor because in current codebase |   42   // Note that we cannot prewarm in constructor because in current codebase | 
|   43   // object is created before spawning threads. |   43   // object is created before spawning threads. | 
|   44   if (g_ownership_service == this) { |   44   if (g_ownership_service == this) { | 
|   45     // Start getting ownership status. |   45     // Start getting ownership status. | 
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  142       BrowserThread::FILE, FROM_HERE, |  142       BrowserThread::FILE, FROM_HERE, | 
|  143       NewRunnableFunction(&OwnershipService::TryVerifyAttempt, |  143       NewRunnableFunction(&OwnershipService::TryVerifyAttempt, | 
|  144                           this, |  144                           this, | 
|  145                           thread_id, |  145                           thread_id, | 
|  146                           data, |  146                           data, | 
|  147                           signature, |  147                           signature, | 
|  148                           d)); |  148                           d)); | 
|  149   return; |  149   return; | 
|  150 } |  150 } | 
|  151  |  151  | 
|  152 void OwnershipService::Observe(NotificationType type, |  152 void OwnershipService::Observe(int type, | 
|  153                                const NotificationSource& source, |  153                                const NotificationSource& source, | 
|  154                                const NotificationDetails& details) { |  154                                const NotificationDetails& details) { | 
|  155   if (type.value == NotificationType::OWNER_KEY_FETCH_ATTEMPT_SUCCEEDED) { |  155   if (type == chrome::OWNER_KEY_FETCH_ATTEMPT_SUCCEEDED) { | 
|  156     SetStatus(OWNERSHIP_TAKEN); |  156     SetStatus(OWNERSHIP_TAKEN); | 
|  157     notification_registrar_.RemoveAll(); |  157     notification_registrar_.RemoveAll(); | 
|  158   } else { |  158   } else { | 
|  159     NOTREACHED(); |  159     NOTREACHED(); | 
|  160   } |  160   } | 
|  161 } |  161 } | 
|  162  |  162  | 
|  163 bool OwnershipService::CurrentUserIsOwner() { |  163 bool OwnershipService::CurrentUserIsOwner() { | 
|  164   // If this user has the private key associated with the owner's |  164   // If this user has the private key associated with the owner's | 
|  165   // public key, this user is the owner. |  165   // public key, this user is the owner. | 
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  229   SetStatus(status); |  229   SetStatus(status); | 
|  230 } |  230 } | 
|  231  |  231  | 
|  232 void OwnershipService::SetStatus(Status new_status) { |  232 void OwnershipService::SetStatus(Status new_status) { | 
|  233   DCHECK(new_status == OWNERSHIP_TAKEN || new_status == OWNERSHIP_NONE); |  233   DCHECK(new_status == OWNERSHIP_TAKEN || new_status == OWNERSHIP_NONE); | 
|  234   base::AutoLock lk(ownership_status_lock_); |  234   base::AutoLock lk(ownership_status_lock_); | 
|  235   ownership_status_ = new_status; |  235   ownership_status_ = new_status; | 
|  236 } |  236 } | 
|  237  |  237  | 
|  238 }  // namespace chromeos |  238 }  // namespace chromeos | 
| OLD | NEW |