Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(393)

Side by Side Diff: extensions/browser/api/printer_provider/printer_provider_api.cc

Issue 1201063002: Set up the infrastructure for Extension event metrics. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebaaaaase Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 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 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 "extensions/browser/api/printer_provider/printer_provider_api.h" 5 #include "extensions/browser/api/printer_provider/printer_provider_api.h"
6 6
7 #include <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 509 matching lines...) Expand 10 before | Expand all | Expand 10 after
520 // NULLed out. Save the pointer before passing it to the requests, as it will 520 // NULLed out. Save the pointer before passing it to the requests, as it will
521 // be needed later on. 521 // be needed later on.
522 int request_id = pending_get_printers_requests_.Add(callback); 522 int request_id = pending_get_printers_requests_.Add(callback);
523 523
524 scoped_ptr<base::ListValue> internal_args(new base::ListValue); 524 scoped_ptr<base::ListValue> internal_args(new base::ListValue);
525 // Request id is not part of the public API, but it will be massaged out in 525 // Request id is not part of the public API, but it will be massaged out in
526 // custom bindings. 526 // custom bindings.
527 internal_args->AppendInteger(request_id); 527 internal_args->AppendInteger(request_id);
528 528
529 scoped_ptr<Event> event( 529 scoped_ptr<Event> event(
530 new Event(core_api::printer_provider::OnGetPrintersRequested::kEventName, 530 new Event(events::UNKNOWN,
531 core_api::printer_provider::OnGetPrintersRequested::kEventName,
531 internal_args.Pass())); 532 internal_args.Pass()));
532 // This callback is called synchronously during |BroadcastEvent|, so 533 // This callback is called synchronously during |BroadcastEvent|, so
533 // Unretained is safe. 534 // Unretained is safe.
534 event->will_dispatch_callback = 535 event->will_dispatch_callback =
535 base::Bind(&PrinterProviderAPIImpl::WillRequestPrinters, 536 base::Bind(&PrinterProviderAPIImpl::WillRequestPrinters,
536 base::Unretained(this), request_id); 537 base::Unretained(this), request_id);
537 538
538 event_router->BroadcastEvent(event.Pass()); 539 event_router->BroadcastEvent(event.Pass());
539 } 540 }
540 541
(...skipping 17 matching lines...) Expand all
558 559
559 int request_id = pending_capability_requests_[extension_id].Add(callback); 560 int request_id = pending_capability_requests_[extension_id].Add(callback);
560 561
561 scoped_ptr<base::ListValue> internal_args(new base::ListValue); 562 scoped_ptr<base::ListValue> internal_args(new base::ListValue);
562 // Request id is not part of the public API, but it will be massaged out in 563 // Request id is not part of the public API, but it will be massaged out in
563 // custom bindings. 564 // custom bindings.
564 internal_args->AppendInteger(request_id); 565 internal_args->AppendInteger(request_id);
565 internal_args->AppendString(internal_printer_id); 566 internal_args->AppendString(internal_printer_id);
566 567
567 scoped_ptr<Event> event(new Event( 568 scoped_ptr<Event> event(new Event(
569 events::UNKNOWN,
568 core_api::printer_provider::OnGetCapabilityRequested::kEventName, 570 core_api::printer_provider::OnGetCapabilityRequested::kEventName,
569 internal_args.Pass())); 571 internal_args.Pass()));
570 572
571 event_router->DispatchEventToExtension(extension_id, event.Pass()); 573 event_router->DispatchEventToExtension(extension_id, event.Pass());
572 } 574 }
573 575
574 void PrinterProviderAPIImpl::DispatchPrintRequested( 576 void PrinterProviderAPIImpl::DispatchPrintRequested(
575 const PrinterProviderPrintJob& job, 577 const PrinterProviderPrintJob& job,
576 const PrinterProviderAPI::PrintCallback& callback) { 578 const PrinterProviderAPI::PrintCallback& callback) {
577 std::string extension_id; 579 std::string extension_id;
(...skipping 27 matching lines...) Expand all
605 607
606 print_job.content_type = job.content_type; 608 print_job.content_type = job.content_type;
607 print_job.title = base::UTF16ToUTF8(job.job_title); 609 print_job.title = base::UTF16ToUTF8(job.job_title);
608 int request_id = pending_print_requests_[extension_id].Add(job, callback); 610 int request_id = pending_print_requests_[extension_id].Add(job, callback);
609 611
610 scoped_ptr<base::ListValue> internal_args(new base::ListValue); 612 scoped_ptr<base::ListValue> internal_args(new base::ListValue);
611 // Request id is not part of the public API and it will be massaged out in 613 // Request id is not part of the public API and it will be massaged out in
612 // custom bindings. 614 // custom bindings.
613 internal_args->AppendInteger(request_id); 615 internal_args->AppendInteger(request_id);
614 internal_args->Append(print_job.ToValue().release()); 616 internal_args->Append(print_job.ToValue().release());
615 scoped_ptr<Event> event( 617 scoped_ptr<Event> event(new Event(
616 new Event(core_api::printer_provider::OnPrintRequested::kEventName, 618 events::UNKNOWN, core_api::printer_provider::OnPrintRequested::kEventName,
617 internal_args.Pass())); 619 internal_args.Pass()));
618 event_router->DispatchEventToExtension(extension_id, event.Pass()); 620 event_router->DispatchEventToExtension(extension_id, event.Pass());
619 } 621 }
620 622
621 const PrinterProviderPrintJob* PrinterProviderAPIImpl::GetPrintJob( 623 const PrinterProviderPrintJob* PrinterProviderAPIImpl::GetPrintJob(
622 const Extension* extension, 624 const Extension* extension,
623 int request_id) const { 625 int request_id) const {
624 auto it = pending_print_requests_.find(extension->id()); 626 auto it = pending_print_requests_.find(extension->id());
625 if (it == pending_print_requests_.end()) 627 if (it == pending_print_requests_.end())
626 return nullptr; 628 return nullptr;
627 return it->second.GetPrintJob(request_id); 629 return it->second.GetPrintJob(request_id);
(...skipping 18 matching lines...) Expand all
646 UsbGuidMap::Get(browser_context_)->GetIdFromGuid(device->guid()); 648 UsbGuidMap::Get(browser_context_)->GetIdFromGuid(device->guid());
647 usb_device.vendor_id = device->vendor_id(); 649 usb_device.vendor_id = device->vendor_id();
648 usb_device.product_id = device->product_id(); 650 usb_device.product_id = device->product_id();
649 651
650 scoped_ptr<base::ListValue> internal_args(new base::ListValue); 652 scoped_ptr<base::ListValue> internal_args(new base::ListValue);
651 // Request id is not part of the public API and it will be massaged out in 653 // Request id is not part of the public API and it will be massaged out in
652 // custom bindings. 654 // custom bindings.
653 internal_args->AppendInteger(request_id); 655 internal_args->AppendInteger(request_id);
654 internal_args->Append(usb_device.ToValue().release()); 656 internal_args->Append(usb_device.ToValue().release());
655 scoped_ptr<Event> event(new Event( 657 scoped_ptr<Event> event(new Event(
658 events::UNKNOWN,
656 core_api::printer_provider::OnGetUsbPrinterInfoRequested::kEventName, 659 core_api::printer_provider::OnGetUsbPrinterInfoRequested::kEventName,
657 internal_args.Pass())); 660 internal_args.Pass()));
658 event_router->DispatchEventToExtension(extension_id, event.Pass()); 661 event_router->DispatchEventToExtension(extension_id, event.Pass());
659 } 662 }
660 663
661 void PrinterProviderAPIImpl::OnGetPrintersResult( 664 void PrinterProviderAPIImpl::OnGetPrintersResult(
662 const Extension* extension, 665 const Extension* extension,
663 int request_id, 666 int request_id,
664 const PrinterProviderInternalAPIObserver::PrinterInfoVector& result) { 667 const PrinterProviderInternalAPIObserver::PrinterInfoVector& result) {
665 base::ListValue printer_list; 668 base::ListValue printer_list;
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
761 return new PrinterProviderAPIImpl(context); 764 return new PrinterProviderAPIImpl(context);
762 } 765 }
763 766
764 // static 767 // static
765 std::string PrinterProviderAPI::GetDefaultPrintError() { 768 std::string PrinterProviderAPI::GetDefaultPrintError() {
766 return core_api::printer_provider_internal::ToString( 769 return core_api::printer_provider_internal::ToString(
767 core_api::printer_provider_internal::PRINT_ERROR_FAILED); 770 core_api::printer_provider_internal::PRINT_ERROR_FAILED);
768 } 771 }
769 772
770 } // namespace extensions 773 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698