Commit d01130ce authored by rch@chromium.org's avatar rch@chromium.org

Remove several usages of linked_ptr in spdy land.


Review URL: https://chromiumcodereview.appspot.com/10763011

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146062 0039d316-1c4b-4281-b951-d872f2087c98
parent 054e7bb2
......@@ -98,9 +98,9 @@ bool BufferedSpdyFramer::OnControlFrameHeaderData(SpdyStreamId stream_id,
// Indicates end-of-header-block.
CHECK(header_buffer_valid_);
const linked_ptr<SpdyHeaderBlock> headers(new SpdyHeaderBlock);
SpdyHeaderBlock headers;
bool parsed_headers = spdy_framer_.ParseHeaderBlockInBuffer(
header_buffer_, header_buffer_used_, headers.get());
header_buffer_, header_buffer_used_, &headers);
if (!parsed_headers) {
visitor_->OnStreamError(
stream_id, "Could not parse Spdy Control Frame Header.");
......
......@@ -10,7 +10,6 @@
#include "base/basictypes.h"
#include "base/gtest_prod_util.h"
#include "base/memory/linked_ptr.h"
#include "base/memory/scoped_ptr.h"
#include "net/base/net_export.h"
#include "net/spdy/spdy_framer.h"
......@@ -36,17 +35,17 @@ class NET_EXPORT_PRIVATE BufferedSpdyFramerVisitorInterface {
uint8 credential_slot,
bool fin,
bool unidirectional,
const linked_ptr<SpdyHeaderBlock>& headers) = 0;
const SpdyHeaderBlock& headers) = 0;
// Called after all the header data for SYN_REPLY control frame is received.
virtual void OnSynReply(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) = 0;
const SpdyHeaderBlock& headers) = 0;
// Called after all the header data for HEADERS control frame is received.
virtual void OnHeaders(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) = 0;
const SpdyHeaderBlock& headers) = 0;
// Called when data is received.
// |stream_id| The stream receiving data.
......
......@@ -43,29 +43,29 @@ class TestBufferedSpdyVisitor : public BufferedSpdyFramerVisitorInterface {
uint8 credential_slot,
bool fin,
bool unidirectional,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
header_stream_id_ = stream_id;
EXPECT_NE(header_stream_id_, SpdyFramer::kInvalidStream);
syn_frame_count_++;
headers_ = *headers;
headers_ = headers;
}
void OnSynReply(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
header_stream_id_ = stream_id;
EXPECT_NE(header_stream_id_, SpdyFramer::kInvalidStream);
syn_reply_frame_count_++;
headers_ = *headers;
headers_ = headers;
}
void OnHeaders(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
header_stream_id_ = stream_id;
EXPECT_NE(header_stream_id_, SpdyFramer::kInvalidStream);
headers_frame_count_++;
headers_ = *headers;
headers_ = headers;
}
void OnStreamFrameData(SpdyStreamId stream_id,
......
......@@ -43,29 +43,29 @@ class TestBufferedSpdyVisitor : public BufferedSpdyFramerVisitorInterface {
uint8 credential_slot,
bool fin,
bool unidirectional,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
header_stream_id_ = stream_id;
EXPECT_NE(header_stream_id_, SpdyFramer::kInvalidStream);
syn_frame_count_++;
headers_ = *headers;
headers_ = headers;
}
void OnSynReply(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
header_stream_id_ = stream_id;
EXPECT_NE(header_stream_id_, SpdyFramer::kInvalidStream);
syn_reply_frame_count_++;
headers_ = *headers;
headers_ = headers;
}
void OnHeaders(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
header_stream_id_ = stream_id;
EXPECT_NE(header_stream_id_, SpdyFramer::kInvalidStream);
headers_frame_count_++;
headers_ = *headers;
headers_ = headers;
}
void OnStreamFrameData(SpdyStreamId stream_id,
......
......@@ -10,7 +10,6 @@
#include "base/bind.h"
#include "base/compiler_specific.h"
#include "base/logging.h"
#include "base/memory/linked_ptr.h"
#include "base/message_loop.h"
#include "base/metrics/field_trial.h"
#include "base/metrics/histogram.h"
......@@ -536,7 +535,7 @@ int SpdySession::WriteSynStream(
RequestPriority priority,
uint8 credential_slot,
SpdyControlFlags flags,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
// Find our stream
if (!IsStreamActive(stream_id))
return ERR_INVALID_SPDY_STREAM;
......@@ -550,7 +549,7 @@ int SpdySession::WriteSynStream(
buffered_spdy_framer_->CreateSynStream(
stream_id, 0,
ConvertRequestPriorityToSpdyPriority(priority, GetProtocolVersion()),
credential_slot, flags, false, headers.get()));
credential_slot, flags, false, &headers));
// We enqueue all SYN_STREAM frames at the same priority to ensure
// that we do not send them out-of-order.
// http://crbug.com/111708
......@@ -563,7 +562,7 @@ int SpdySession::WriteSynStream(
if (net_log().IsLoggingAllEvents()) {
net_log().AddEvent(
NetLog::TYPE_SPDY_SESSION_SYN_STREAM,
base::Bind(&NetLogSpdySynCallback, headers.get(),
base::Bind(&NetLogSpdySynCallback, &headers,
(flags & CONTROL_FLAG_FIN) != 0,
(flags & CONTROL_FLAG_UNIDIRECTIONAL) != 0,
stream_id, 0));
......@@ -1274,12 +1273,12 @@ void SpdySession::OnSynStream(SpdyStreamId stream_id,
uint8 credential_slot,
bool fin,
bool unidirectional,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
if (net_log_.IsLoggingAllEvents()) {
net_log_.AddEvent(
NetLog::TYPE_SPDY_SESSION_PUSHED_SYN_STREAM,
base::Bind(&NetLogSpdySynCallback,
headers.get(), fin, unidirectional,
&headers, fin, unidirectional,
stream_id, associated_stream_id));
}
......@@ -1307,7 +1306,7 @@ void SpdySession::OnSynStream(SpdyStreamId stream_id,
// TODO(mbelshe): DCHECK that this is a GET method?
// Verify that the response had a URL for us.
GURL gurl = GetUrlFromHeaderBlock(*headers, GetProtocolVersion(), true);
GURL gurl = GetUrlFromHeaderBlock(headers, GetProtocolVersion(), true);
if (!gurl.is_valid()) {
ResetStream(stream_id, PROTOCOL_ERROR,
"Pushed stream url was invalid: " + gurl.spec());
......@@ -1369,7 +1368,7 @@ void SpdySession::OnSynStream(SpdyStreamId stream_id,
stream->set_response_received();
// Parse the headers.
if (!Respond(*headers, stream))
if (!Respond(headers, stream))
return;
base::StatsCounter push_requests("spdy.pushed_streams");
......@@ -1378,12 +1377,12 @@ void SpdySession::OnSynStream(SpdyStreamId stream_id,
void SpdySession::OnSynReply(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
if (net_log().IsLoggingAllEvents()) {
net_log().AddEvent(
NetLog::TYPE_SPDY_SESSION_SYN_REPLY,
base::Bind(&NetLogSpdySynCallback,
headers.get(), fin, false,// not unidirectional
&headers, fin, false,// not unidirectional
stream_id, 0));
}
......@@ -1406,17 +1405,17 @@ void SpdySession::OnSynReply(SpdyStreamId stream_id,
}
stream->set_response_received();
Respond(*headers, stream);
Respond(headers, stream);
}
void SpdySession::OnHeaders(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
if (net_log().IsLoggingAllEvents()) {
net_log().AddEvent(
NetLog::TYPE_SPDY_SESSION_HEADERS,
base::Bind(&NetLogSpdySynCallback,
headers.get(), fin, /*unidirectional=*/false,
&headers, fin, /*unidirectional=*/false,
stream_id, 0));
}
......@@ -1430,7 +1429,7 @@ void SpdySession::OnHeaders(SpdyStreamId stream_id,
CHECK_EQ(stream->stream_id(), stream_id);
CHECK(!stream->cancelled());
int rv = stream->OnHeaders(*headers);
int rv = stream->OnHeaders(headers);
if (rv < 0) {
DCHECK_NE(rv, ERR_IO_PENDING);
const SpdyStreamId stream_id = stream->stream_id();
......
......@@ -13,7 +13,6 @@
#include <string>
#include "base/gtest_prod_util.h"
#include "base/memory/linked_ptr.h"
#include "base/memory/ref_counted.h"
#include "base/memory/weak_ptr.h"
#include "net/base/io_buffer.h"
......@@ -165,7 +164,7 @@ class NET_EXPORT SpdySession : public base::RefCounted<SpdySession>,
RequestPriority priority,
uint8 credential_slot,
SpdyControlFlags flags,
const linked_ptr<SpdyHeaderBlock>& headers);
const SpdyHeaderBlock& headers);
// Write a CREDENTIAL frame to the session.
int WriteCredentialFrame(const std::string& origin,
......@@ -488,15 +487,15 @@ class NET_EXPORT SpdySession : public base::RefCounted<SpdySession>,
uint8 credential_slot,
bool fin,
bool unidirectional,
const linked_ptr<SpdyHeaderBlock>& headers) OVERRIDE;
const SpdyHeaderBlock& headers) OVERRIDE;
virtual void OnSynReply(
SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) OVERRIDE;
const SpdyHeaderBlock& headers) OVERRIDE;
virtual void OnHeaders(
SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) OVERRIDE;
const SpdyHeaderBlock& headers) OVERRIDE;
// --------------------------
// Helper methods for testing
......
......@@ -671,7 +671,7 @@ int SpdyStream::DoSendHeaders() {
CHECK(request_.get());
int result = session_->WriteSynStream(
stream_id_, priority_, slot_, flags,
request_);
*request_);
if (result != ERR_IO_PENDING)
return result;
......
......@@ -121,24 +121,24 @@ SMInterface* SpdySM::FindOrMakeNewSMConnectionInterface(
int SpdySM::SpdyHandleNewStream(
SpdyStreamId stream_id,
SpdyPriority priority,
const linked_ptr<SpdyHeaderBlock>& headers,
const SpdyHeaderBlock& headers,
std::string &http_data,
bool* is_https_scheme) {
*is_https_scheme = false;
VLOG(2) << ACCEPTOR_CLIENT_IDENT << "SpdySM: OnSyn("
<< stream_id << ")";
VLOG(2) << ACCEPTOR_CLIENT_IDENT << "SpdySM: # headers: "
<< headers->size();
<< headers.size();
SpdyHeaderBlock::iterator url = headers->find("url");
SpdyHeaderBlock::iterator method = headers->find("method");
if (url == headers->end() || method == headers->end()) {
SpdyHeaderBlock::const_iterator url = headers.find("url");
SpdyHeaderBlock::const_iterator method = headers.find("method");
if (url == headers.end() || method == headers.end()) {
VLOG(2) << ACCEPTOR_CLIENT_IDENT << "SpdySM: didn't find method or url "
<< "or method. Not creating stream";
return 0;
}
SpdyHeaderBlock::iterator scheme = headers->find("scheme");
SpdyHeaderBlock::const_iterator scheme = headers.find("scheme");
if (scheme->second.compare("https") == 0) {
*is_https_scheme = true;
}
......@@ -159,12 +159,12 @@ int SpdySM::SpdyHandleNewStream(
std::string filename = EncodeURL(uri, host, method->second);
NewStream(stream_id, priority, filename);
} else {
SpdyHeaderBlock::iterator version = headers->find("version");
SpdyHeaderBlock::const_iterator version = headers.find("version");
http_data += method->second + " " + uri + " " + version->second + "\r\n";
VLOG(1) << ACCEPTOR_CLIENT_IDENT << "Request: " << method->second << " "
<< uri << " " << version->second;
for (SpdyHeaderBlock::iterator i = headers->begin();
i != headers->end(); ++i) {
for (SpdyHeaderBlock::const_iterator i = headers.begin();
i != headers.end(); ++i) {
http_data += i->first + ": " + i->second + "\r\n";
VLOG(2) << ACCEPTOR_CLIENT_IDENT << i->first.c_str() << ":"
<< i->second.c_str();
......@@ -204,7 +204,7 @@ void SpdySM::OnSynStream(SpdyStreamId stream_id,
uint8 credential_slot,
bool fin,
bool unidirectional,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
std::string http_data;
bool is_https_scheme;
int ret = SpdyHandleNewStream(stream_id, priority, headers, http_data,
......@@ -238,7 +238,7 @@ void SpdySM::OnSynStream(SpdyStreamId stream_id,
void SpdySM::OnSynReply(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
// TODO(willchan): if there is an error parsing headers, we
// should send a RST_STREAM.
VLOG(2) << ACCEPTOR_CLIENT_IDENT << "SpdySM: OnSynReply("
......@@ -247,7 +247,7 @@ void SpdySM::OnSynReply(SpdyStreamId stream_id,
void SpdySM::OnHeaders(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) {
const SpdyHeaderBlock& headers) {
VLOG(2) << ACCEPTOR_CLIENT_IDENT << "SpdySM: OnHeaders("
<< stream_id << ")";
}
......
......@@ -52,7 +52,7 @@ class SpdySM : public BufferedSpdyFramerVisitorInterface,
std::string server_port);
int SpdyHandleNewStream(SpdyStreamId stream_id,
SpdyPriority priority,
const linked_ptr<SpdyHeaderBlock>& headers,
const SpdyHeaderBlock& headers,
std::string& http_data,
bool* is_https_scheme);
......@@ -67,17 +67,17 @@ class SpdySM : public BufferedSpdyFramerVisitorInterface,
uint8 credential_slot,
bool fin,
bool unidirectional,
const linked_ptr<SpdyHeaderBlock>& headers) OVERRIDE;
const SpdyHeaderBlock& headers) OVERRIDE;
// Called after all the header data for SYN_REPLY control frame is received.
virtual void OnSynReply(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) OVERRIDE;
const SpdyHeaderBlock& headers) OVERRIDE;
// Called after all the header data for HEADERS control frame is received.
virtual void OnHeaders(SpdyStreamId stream_id,
bool fin,
const linked_ptr<SpdyHeaderBlock>& headers) OVERRIDE;
const SpdyHeaderBlock& headers) OVERRIDE;
// Called when data is received.
// |stream_id| The stream receiving data.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment