1 // Copyright 2015 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "base/process/port_provider_mac.h" 6 7 namespace base { 8 PortProvider()9PortProvider::PortProvider() : lock_(), observer_list_() {} ~PortProvider()10PortProvider::~PortProvider() {} 11 AddObserver(Observer * observer)12void PortProvider::AddObserver(Observer* observer) { 13 base::AutoLock l(lock_); 14 observer_list_.AddObserver(observer); 15 } 16 RemoveObserver(Observer * observer)17void PortProvider::RemoveObserver(Observer* observer) { 18 base::AutoLock l(lock_); 19 observer_list_.RemoveObserver(observer); 20 } 21 NotifyObservers(ProcessHandle process)22void PortProvider::NotifyObservers(ProcessHandle process) { 23 base::AutoLock l(lock_); 24 FOR_EACH_OBSERVER(Observer, observer_list_, OnReceivedTaskPort(process)); 25 } 26 27 } // namespace base 28