Lines Matching full:transaction
128 // Whether a transaction can join parallel writing or not is a function of the
129 // transaction as well as the current writers (if present). This enum
134 // Used as the default value till the transaction is in initial headers
137 // The transaction creates a writers object. This is only logged for
140 // The transaction joins existing writers.
142 // The transaction cannot join existing writers since either itself or
145 // The transaction cannot join existing writers since either itself or
148 // The transaction cannot join existing writers since it does not have cache
151 // Writers does not exist and the transaction does not need to create one
224 // after the transaction has completed its headers phase.
241 std::unique_ptr<HttpTransaction>* transaction) override;
305 class Transaction; variable
312 friend class Transaction; variable
326 using TransactionList = std::list<raw_ptr<Transaction, CtnExperimental>>;
328 std::unordered_set<raw_ptr<Transaction, CtnExperimental>>;
334 // phase is allowed for one transaction at a time so that if it doesn't match
339 // A transaction goes through these state transitions.
383 const Transaction* headers_transaction() const { in headers_transaction()
391 // Returns true if a transaction is currently writing the response body.
400 bool TransactionInReaders(Transaction* transaction) const;
410 // Checks if a transaction can be added to `add_to_entry_queue_`. If yes, it
411 // will invoke the Cache IO callback of the transaction. It will take a
412 // transaction from add_to_entry_queue and make it a headers_transaction, if
416 // Removes `transaction` from the `add_to_entry_queue_`.
417 bool RemovePendingTransaction(Transaction* transaction);
427 Transaction* transaction,
430 // Returns true if this transaction can write headers to the entry.
431 bool CanTransactionWriteResponseHeaders(Transaction* transaction,
455 // It is set to true when a transaction is added to an entry so that other,
462 // Transaction currently in the headers phase, either validating the
465 raw_ptr<Transaction> headers_transaction_ = nullptr;
498 Transaction* transaction,
511 // provided transaction to use the object. Returns an error code.
512 // |transaction| will be notified via its Cache IO callback if this method
513 // returns ERR_IO_PENDING. The transaction is free to use the backend
515 int GetBackendForTransaction(Transaction* transaction);
521 // Dooms the entry selected by |key|. |transaction| will be notified via its
523 // currently in use or not. If entry is in use and the invoking transaction
526 int DoomEntry(const std::string& key, Transaction* transaction);
528 // Dooms the entry selected by |key|. |transaction| will be notified via its
531 int AsyncDoomEntry(const std::string& key, Transaction* transaction);
559 // does not already exist, returning an ActiveEntry in |*entry|. |transaction|
565 Transaction* transaction);
568 // in |*entry|. |transaction| will be notified via its Cache IO callback if
574 Transaction* transaction);
577 // ActiveEntry in |*entry|. |transaction| will be notified via its Cache IO
581 Transaction* transaction);
583 // Adds a transaction to an ActiveEntry. This method returns ERR_IO_PENDING
584 // and the transaction will be notified about completion via a callback to
588 Transaction* transaction);
590 // Transaction invokes this when its response headers phase is complete
591 // If the transaction is responsible for writing the response body,
593 // returned and the transaction will be notified about completion via its
597 Transaction* transaction,
600 // Called when the transaction has finished working with this entry.
601 // |entry_is_complete| is true if the transaction finished reading/writing
604 Transaction* transaction,
624 // Called when the transaction has received a non-matching response to
625 // validation and it's not the transaction responsible for writing the
636 // Checks if a transaction can be added to the entry. If yes, it will
637 // invoke the Cache IO callback of the transaction. This is a helper function
638 // for OnProcessQueuedTransactions. It will take a transaction from
647 // Returns if the transaction can join other transactions for writing to
651 Transaction* transaction);
653 // Invoked when a transaction that has already completed the response headers
655 // callback of the transaction. This is a helper function for
659 // Returns the LoadState of the provided pending transaction.
660 LoadState GetLoadStateForPendingTransaction(const Transaction* transaction);
662 // Removes the transaction |transaction|, from the pending list of an entry
664 void RemovePendingTransaction(Transaction* transaction);
666 // Removes the transaction |transaction|, from the pending list of
669 Transaction* transaction);