ssl_request_info.h revision 513209b27ff55e2841eac0e4120199c23acce758
1// Copyright (c) 2010 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#ifndef CHROME_BROWSER_SSL_SSL_REQUEST_INFO_H_ 6#define CHROME_BROWSER_SSL_SSL_REQUEST_INFO_H_ 7#pragma once 8 9#include <string> 10 11#include "base/ref_counted.h" 12#include "googleurl/src/gurl.h" 13#include "webkit/glue/resource_type.h" 14 15// SSLRequestInfo wraps up the information SSLPolicy needs about a request in 16// order to update our security IU. SSLRequestInfo is RefCounted in case we 17// need to deal with the request asynchronously. 18class SSLRequestInfo : public base::RefCounted<SSLRequestInfo> { 19 public: 20 SSLRequestInfo(const GURL& url, 21 ResourceType::Type resource_type, 22 const std::string& frame_origin, 23 const std::string& main_frame_origin, 24 int child_id, 25 int ssl_cert_id, 26 int ssl_cert_status); 27 28 const GURL& url() const { return url_; } 29 ResourceType::Type resource_type() const { return resource_type_; } 30 const std::string& frame_origin() const { return frame_origin_; } 31 const std::string& main_frame_origin() const { return main_frame_origin_; } 32 int child_id() const { return child_id_; } 33 int ssl_cert_id() const { return ssl_cert_id_; } 34 int ssl_cert_status() const { return ssl_cert_status_; } 35 36 private: 37 friend class base::RefCounted<SSLRequestInfo>; 38 39 virtual ~SSLRequestInfo(); 40 41 GURL url_; 42 ResourceType::Type resource_type_; 43 std::string frame_origin_; 44 std::string main_frame_origin_; 45 int child_id_; 46 int ssl_cert_id_; 47 int ssl_cert_status_; 48 49 DISALLOW_COPY_AND_ASSIGN(SSLRequestInfo); 50}; 51 52#endif // CHROME_BROWSER_SSL_SSL_REQUEST_INFO_H_ 53