blob: 48bbe02bcbccb0b518f6c1f8838c9731e918e3ce [file] [log] [blame]
Chris Masone3bd3c8c2011-06-13 08:20:26 -07001// Copyright (c) 2011 The Chromium OS 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 "shill/cellular_service.h"
6
7#include <string>
8
9#include <base/logging.h>
10#include <chromeos/dbus/service_constants.h>
11
12#include "shill/cellular.h"
13#include "shill/control_interface.h"
14#include "shill/device.h"
15#include "shill/device_info.h"
16#include "shill/manager.h"
17#include "shill/shill_event.h"
18
19using std::string;
20
21namespace shill {
22CellularService::CellularService(ControlInterface *control_interface,
23 EventDispatcher *dispatcher,
Chris Masone6791a432011-07-12 13:23:19 -070024 Manager *manager,
Chris Masone2b105542011-06-22 10:58:09 -070025 const CellularRefPtr &device,
Chris Masone3bd3c8c2011-06-13 08:20:26 -070026 const string &name)
Chris Masone6791a432011-07-12 13:23:19 -070027 : Service(control_interface, dispatcher, manager, name),
Chris Masone3bd3c8c2011-06-13 08:20:26 -070028 strength_(0),
mukesh agrawalf60e4062011-05-27 13:13:41 -070029 cellular_(device),
Chris Masone3bd3c8c2011-06-13 08:20:26 -070030 type_(flimflam::kTypeCellular) {
31
Chris Masone27c4aa52011-07-02 13:10:14 -070032 store_.RegisterConstString(flimflam::kActivationStateProperty,
33 &activation_state_);
Chris Masone3bd3c8c2011-06-13 08:20:26 -070034
Chris Masone27c4aa52011-07-02 13:10:14 -070035 store_.RegisterStringmap(flimflam::kCellularApnProperty, &apn_info_);
36 store_.RegisterConstStringmap(flimflam::kCellularLastGoodApnProperty,
37 &last_good_apn_info_);
Chris Masone3bd3c8c2011-06-13 08:20:26 -070038
Chris Masone4d42df82011-07-02 17:09:39 -070039 store_.RegisterConstString(flimflam::kNetworkTechnologyProperty,
40 &network_tech_);
41 store_.RegisterConstString(flimflam::kOperatorNameProperty, &operator_name_);
42 store_.RegisterConstString(flimflam::kOperatorCodeProperty, &operator_code_);
43 store_.RegisterConstString(flimflam::kPaymentURLProperty, &payment_url_);
44 store_.RegisterConstString(flimflam::kRoamingStateProperty, &roaming_state_);
45
Chris Masone27c4aa52011-07-02 13:10:14 -070046 store_.RegisterConstUint8(flimflam::kSignalStrengthProperty, &strength_);
Chris Masone27c4aa52011-07-02 13:10:14 -070047 store_.RegisterConstString(flimflam::kTypeProperty, &type_);
Chris Masone3bd3c8c2011-06-13 08:20:26 -070048}
49
50CellularService::~CellularService() { }
51
52void CellularService::Connect() { }
53
54void CellularService::Disconnect() { }
55
Chris Masone95207da2011-06-29 16:50:49 -070056std::string CellularService::GetDeviceRpcId() {
57 return cellular_->GetRpcIdentifier();
58}
59
Chris Masone3bd3c8c2011-06-13 08:20:26 -070060} // namespace shill