Home | History | Annotate | Download | only in local_discovery
      1 // Copyright 2013 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 "chrome/browser/ui/webui/local_discovery/local_discovery_ui_handler.h"
      6 
      7 #include "base/bind.h"
      8 #include "base/values.h"
      9 #include "content/public/browser/web_ui.h"
     10 
     11 LocalDiscoveryUIHandler::LocalDiscoveryUIHandler()
     12     : action_callback_(base::Bind(&LocalDiscoveryUIHandler::OnNewDevice,
     13                                   base::Unretained(this))) {
     14   content::AddActionCallback(action_callback_);
     15 }
     16 
     17 LocalDiscoveryUIHandler::~LocalDiscoveryUIHandler() {
     18   content::RemoveActionCallback(action_callback_);
     19 }
     20 
     21 void LocalDiscoveryUIHandler::RegisterMessages() {}
     22 
     23 void LocalDiscoveryUIHandler::OnNewDevice(const std::string& name) {
     24   // TODO(gene): Once we receive information about new locally discovered
     25   // device, we should add it to the page.
     26   // Here is an example how to do it:
     27   //
     28   // base::StringValue service_name(name);
     29   //
     30   // base::DictionaryValue info;
     31   // info.SetString("domain", "domain.local");
     32   // info.SetString("port", "80");
     33   // info.SetString("ip", "XXX.XXX.XXX.XXX");
     34   // info.SetString("metadata", "metadata\nmetadata");
     35   // info.SetString("lastSeen", "unknown");
     36   // info.SetString("registered", "not registered");
     37   //
     38   // base::StringValue domain("domain.local");
     39   // base::StringValue port("80");
     40   // base::StringValue ip("XXX.XXX.XXX.XXX");
     41   // base::StringValue metadata("metadata<br>metadata");
     42   // base::StringValue lastSeen("unknown");
     43   // base::StringValue registered("not registered");
     44   //
     45   // web_ui()->CallJavascriptFunction("onServiceUpdate", service_name, info);
     46 }
     47