- add sources.
[platform/framework/web/crosswalk.git] / src / ppapi / shared_impl / socket_option_data.cc
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 "ppapi/shared_impl/socket_option_data.h"
6
7 namespace ppapi {
8
9 SocketOptionData::SocketOptionData() : type_(TYPE_INVALID), value_(0) {
10 }
11
12 SocketOptionData::~SocketOptionData() {
13 }
14
15 SocketOptionData::Type SocketOptionData::GetType() const {
16   return type_;
17 }
18
19 bool SocketOptionData::GetBool(bool* out_value) const {
20   if (!out_value || type_ != TYPE_BOOL)
21     return false;
22   *out_value = value_ != 0;
23   return true;
24 }
25
26 bool SocketOptionData::GetInt32(int32_t* out_value) const {
27   if (!out_value || type_ != TYPE_INT32)
28     return false;
29   *out_value = value_;
30   return true;
31 }
32
33 void SocketOptionData::SetBool(bool value) {
34   type_ = TYPE_BOOL;
35   value_ = value ? 1 : 0;
36 }
37
38 void SocketOptionData::SetInt32(int32_t value) {
39   type_ = TYPE_INT32;
40   value_ = value;
41 }
42
43 }  // namespace ppapi