• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 "net/websockets/websocket_extension.h"
6 
7 #include <string>
8 
9 #include "base/logging.h"
10 
11 namespace net {
12 
Parameter(const std::string & name)13 WebSocketExtension::Parameter::Parameter(const std::string& name)
14     : name_(name) {}
15 
Parameter(const std::string & name,const std::string & value)16 WebSocketExtension::Parameter::Parameter(const std::string& name,
17                                          const std::string& value)
18     : name_(name), value_(value) {
19   DCHECK(!value.empty());
20 }
21 
Equals(const Parameter & other) const22 bool WebSocketExtension::Parameter::Equals(const Parameter& other) const {
23   return name_ == other.name_ && value_ == other.value_;
24 }
25 
WebSocketExtension()26 WebSocketExtension::WebSocketExtension() {}
27 
WebSocketExtension(const std::string & name)28 WebSocketExtension::WebSocketExtension(const std::string& name)
29     : name_(name) {}
30 
~WebSocketExtension()31 WebSocketExtension::~WebSocketExtension() {}
32 
Equals(const WebSocketExtension & other) const33 bool WebSocketExtension::Equals(const WebSocketExtension& other) const {
34   if (name_ != other.name_) return false;
35   if (parameters_.size() != other.parameters_.size()) return false;
36   for (size_t i = 0; i < other.parameters_.size(); ++i) {
37     if (!parameters_[i].Equals(other.parameters_[i]))
38       return false;
39   }
40   return true;
41 }
42 
43 }  // namespace net
44