<commit_before>'use strict';

var Formidable = require('formidable').IncomingForm
  , debug = require('debug')('bigpipe:page')
  , FreeList = require('freelist').FreeList
  , qs = require('querystring')
  , Route = require('routable')
  , async = require('async')
  , fuse = require('fusing')
  , path = require('path')
  , fs = require('fs');

/**
 * The methods that needs data buffering.
 *
 * @type {Array}
 * @api private
 */
var operations = ['post', 'put'];

/**
 * A simple object representation of a given page.
 *
 * @constructor
 * @api public
 */
function Page(pipe) {
  this.fuse();

  var writable = this.writable
    , readable = this.readable;

  readable('compiler', pipe.compiler);        // Asset management.
  readable('temper', pipe.temper);            // Reference to our template composer.
  readable('pipe', pipe);                     // Actual pipe instance.

  writable('flushed', false);                 // Is the queue flushed.
  writable('ended', false);                   // Is the page ended.
  writable('disabled', []);                   // Contains all disable pagelets.
  writable('enabled', []);                    // Contains all enabled pagelets.<commit_msg>[fix] DELETE and PATCH also require buffering<commit_after>'use strict';

var Formidable = require('formidable').IncomingForm
  , debug = require('debug')('bigpipe:page')
  , FreeList = require('freelist').FreeList
  , qs = require('querystring')
  , Route = require('routable')
  , async = require('async')
  , fuse = require('fusing')
  , path = require('path')
  , fs = require('fs');

/**
 * The methods that needs data buffering.
 *
 * @type {Array}
 * @api private
 */
var operations = 'POST, PUT, DELETE, PATCH'.split(', ').toLowerCase();

/**
 * A simple object representation of a given page.
 *
 * @constructor
 * @api public
 */
function Page(pipe) {
  this.fuse();

  var writable = this.writable
    , readable = this.readable;

  readable('compiler', pipe.compiler);        // Asset management.
  readable('temper', pipe.temper);            // Reference to our template composer.
  readable('pipe', pipe);                     // Actual pipe instance.

  writable('flushed', false);                 // Is the queue flushed.
  writable('ended', false);                   // Is the page ended.
  writable('disabled', []);                   // Contains all disable pagelets.
  writable('enabled', []);                    // Contains all enabled pagelets.
{'fraction_non_alphanumeric': 0.15331435542903618, 'fraction_numerical': 0.0, 'mean_word_length': 2.649851632047478, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2569389', 'n_tokens_mistral': 722, 'n_tokens_neox': 682, 'n_words': 192}