* refactor: update BadgeManagerFactory * refactor: update NetworkContextServiceFactory * refactor: update ElectronExtensionSystemFactory * refactor: update UsbChooserContextFactory * refactor: update UsbHidChooserContextFactory * refactor: update SerialChooserContextFactory * refactor: update FileSystemAccessPermissionContextFactory
		
			
				
	
	
		
			45 lines
		
	
	
	
		
			1.4 KiB
			
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			1.4 KiB
			
		
	
	
	
		
			C++
		
	
	
	
	
	
// Copyright (c) 2022 Microsoft, Inc.
 | 
						|
// Use of this source code is governed by the MIT license that can be
 | 
						|
// found in the LICENSE file.
 | 
						|
 | 
						|
#ifndef ELECTRON_SHELL_BROWSER_USB_USB_CHOOSER_CONTEXT_FACTORY_H_
 | 
						|
#define ELECTRON_SHELL_BROWSER_USB_USB_CHOOSER_CONTEXT_FACTORY_H_
 | 
						|
 | 
						|
#include <memory>
 | 
						|
 | 
						|
#include "components/keyed_service/content/browser_context_keyed_service_factory.h"
 | 
						|
 | 
						|
namespace base {
 | 
						|
template <typename T>
 | 
						|
class NoDestructor;
 | 
						|
}  // namespace base
 | 
						|
 | 
						|
namespace electron {
 | 
						|
 | 
						|
class UsbChooserContext;
 | 
						|
 | 
						|
class UsbChooserContextFactory : public BrowserContextKeyedServiceFactory {
 | 
						|
 public:
 | 
						|
  static UsbChooserContext* GetForBrowserContext(
 | 
						|
      content::BrowserContext* context);
 | 
						|
  static UsbChooserContext* GetForBrowserContextIfExists(
 | 
						|
      content::BrowserContext* context);
 | 
						|
  static UsbChooserContextFactory* GetInstance();
 | 
						|
 | 
						|
  UsbChooserContextFactory(const UsbChooserContextFactory&) = delete;
 | 
						|
  UsbChooserContextFactory& operator=(const UsbChooserContextFactory&) = delete;
 | 
						|
 | 
						|
 private:
 | 
						|
  friend base::NoDestructor<UsbChooserContextFactory>;
 | 
						|
 | 
						|
  UsbChooserContextFactory();
 | 
						|
  ~UsbChooserContextFactory() override;
 | 
						|
 | 
						|
  // BrowserContextKeyedServiceFactory methods:
 | 
						|
  std::unique_ptr<KeyedService> BuildServiceInstanceForBrowserContext(
 | 
						|
      content::BrowserContext* profile) const override;
 | 
						|
};
 | 
						|
 | 
						|
}  // namespace electron
 | 
						|
 | 
						|
#endif  // ELECTRON_SHELL_BROWSER_USB_USB_CHOOSER_CONTEXT_FACTORY_H_
 |