Home | History | Annotate | Download | only in http

Lines Matching refs:pending_op

190   BackendCallback(HttpCache* cache, PendingOp* pending_op)
191 : cache_(cache), pending_op_(pending_op) {}
198 // The callback was cancelled so we should delete the pending_op that
390 PendingOp* pending_op = pending_it->second;
391 delete pending_op->writer;
397 static_cast<BackendCallback*>(pending_op->callback);
404 delete pending_op->callback;
407 STLDeleteElements(&pending_op->pending_queue);
409 delete pending_op;
507 PendingOp* pending_op = GetPendingOp("");
508 if (pending_op->writer) {
510 pending_op->pending_queue.push_back(item.release());
514 DCHECK(pending_op->pending_queue.empty());
516 pending_op->writer = item.release();
517 BackendCallback* my_callback = new BackendCallback(this, pending_op);
518 pending_op->callback = my_callback;
520 int rv = backend_factory_->CreateBackend(net_log_, &pending_op->backend,
523 pending_op->writer->ClearCallback();
538 PendingOp* pending_op = GetPendingOp("");
539 DCHECK(pending_op->writer);
540 pending_op->pending_queue.push_back(item);
610 PendingOp* pending_op = GetPendingOp(key);
611 if (pending_op->writer) {
612 pending_op->pending_queue.push_back(item);
616 DCHECK(pending_op->pending_queue.empty());
618 pending_op->writer = item;
619 BackendCallback* my_callback = new BackendCallback(this, pending_op);
620 pending_op->callback = my_callback;
701 void HttpCache::DeletePendingOp(PendingOp* pending_op) {
703 if (pending_op->disk_entry)
704 key = pending_op->disk_entry->GetKey();
713 if (it->second == pending_op) {
719 DCHECK(pending_op->pending_queue.empty());
721 delete pending_op;
733 PendingOp* pending_op = GetPendingOp(key);
734 if (pending_op->writer) {
735 pending_op->pending_queue.push_back(item);
739 DCHECK(pending_op->pending_queue.empty());
741 pending_op->writer = item;
742 BackendCallback* my_callback = new BackendCallback(this, pending_op);
743 pending_op->callback = my_callback;
745 int rv = disk_cache_->OpenEntry(key, &(pending_op->disk_entry), my_callback);
759 PendingOp* pending_op = GetPendingOp(key);
760 if (pending_op->writer) {
761 pending_op->pending_queue.push_back(item);
765 DCHECK(pending_op->pending_queue.empty());
767 pending_op->writer = item;
768 BackendCallback* my_callback = new BackendCallback(this, pending_op);
769 pending_op->callback = my_callback;
771 int rv = disk_cache_->CreateEntry(key, &(pending_op->disk_entry),
962 bool HttpCache::RemovePendingTransactionFromPendingOp(PendingOp* pending_op,
964 if (pending_op->writer->Matches(trans)) {
965 pending_op->writer->ClearTransaction();
966 pending_op->writer->ClearEntry();
969 WorkItemList& pending_queue = pending_op->pending_queue;
1020 void HttpCache::OnIOComplete(int result, PendingOp* pending_op) {
1021 WorkItemOperation op = pending_op->writer->operation();
1025 return OnBackendCreated(result, pending_op);
1027 scoped_ptr<WorkItem> item(pending_op->writer);
1037 key = pending_op->disk_entry->GetKey();
1038 entry = ActivateEntry(pending_op->disk_entry);
1042 pending_op->disk_entry->Doom();
1043 pending_op->disk_entry->Close();
1044 pending_op->disk_entry = NULL;
1051 // pending_op, the new request will be appended to the end of the list, and
1061 pending_items.swap(pending_op->pending_queue);
1062 DeletePendingOp(pending_op);
1109 void HttpCache::OnBackendCreated(int result, PendingOp* pending_op) {
1110 scoped_ptr<WorkItem> item(pending_op->writer);
1115 pending_op->callback = NULL;
1116 disk_cache::Backend* backend = pending_op->backend;
1127 if (!pending_op->pending_queue.empty()) {
1128 WorkItem* pending_item = pending_op->pending_queue.front();
1129 pending_op->pending_queue.pop_front();
1134 pending_op->writer = pending_item;
1139 result, pending_op));
1142 DeletePendingOp(pending_op);