15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2010 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef NET_FTP_FTP_RESPONSE_INFO_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define NET_FTP_FTP_RESPONSE_INFO_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 8eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "base/time/time.h" 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "net/base/host_port_pair.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace net { 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class FtpResponseInfo { 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public: 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FtpResponseInfo(); 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ~FtpResponseInfo(); 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // True if authentication failed and valid authentication credentials are 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // needed. 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool needs_auth; 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The time at which the request was made that resulted in this response. 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // For cached responses, this time could be "far" in the past. 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) base::Time request_time; 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The time at which the response headers were received. For cached 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // responses, this time could be "far" in the past. 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) base::Time response_time; 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Expected content size, in bytes, as reported by SIZE command. Only valid 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // for file downloads. -1 means unknown size. 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int64 expected_content_size; 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // True if the response data is of a directory listing. 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool is_directory_listing; 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Remote address of the socket which fetched this resource. 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) HostPortPair socket_address; 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace net 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // NET_FTP_FTP_RESPONSE_INFO_H_ 44