1//
2//  Copyright (C) 2015 Google, Inc.
3//
4//  Licensed under the Apache License, Version 2.0 (the "License");
5//  you may not use this file except in compliance with the License.
6//  You may obtain a copy of the License at:
7//
8//  http://www.apache.org/licenses/LICENSE-2.0
9//
10//  Unless required by applicable law or agreed to in writing, software
11//  distributed under the License is distributed on an "AS IS" BASIS,
12//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13//  See the License for the specific language governing permissions and
14//  limitations under the License.
15//
16
17#include <bluetooth/characteristic.h>
18
19namespace bluetooth {
20Characteristic::Characteristic(const Characteristic& other) {
21  handle_ = other.handle_;
22  uuid_ = other.uuid_;
23  properties_ = other.properties_;
24  permissions_ = other.permissions_;
25  descriptors_ = other.descriptors_;
26}
27
28Characteristic& Characteristic::operator=(const Characteristic& other) {
29  if (*this == other) return *this;
30
31  handle_ = other.handle_;
32  uuid_ = other.uuid_;
33  properties_ = other.properties_;
34  permissions_ = other.permissions_;
35  descriptors_ = other.descriptors_;
36
37  return *this;
38}
39
40bool Characteristic::Equals(const Characteristic& other) const {
41  return handle_ == other.handle_ && uuid_ == other.uuid_ &&
42         properties_ == other.properties_ &&
43         permissions_ == other.permissions_ &&
44         descriptors_ == other.descriptors_;
45}
46
47bool Characteristic::operator==(const Characteristic& rhs) const {
48  return Equals(rhs);
49}
50
51bool Characteristic::operator!=(const Characteristic& rhs) const {
52  return !Equals(rhs);
53}
54}
55