/**
  * Add an insertion to the buffer.
  *
  * @param phpcassa\ColumnFamily $column_family an initialized
  *        ColumnFamily instance
  * @param mixed $key the row key
  * @param mixed[] $columns an array of columns to insert, whose format
  *        should match $column_family->insert_format
  * @param int $timestamp an optional timestamp (default is "now", when
  *        this function is called, not when send() is called)
  * @param int $ttl a TTL to apply to all columns inserted here
  */
 public function insert($column_family, $key, $columns, $timestamp = null, $ttl = null)
 {
     if (!empty($columns)) {
         if ($timestamp === null) {
             $timestamp = Clock::get_time();
         }
         $key = $column_family->pack_key($key);
         $mut_list = $column_family->make_mutation($columns, $timestamp, $ttl);
         $this->enqueue($key, $column_family, $mut_list);
     }
     return $this;
 }