public function BaseMemcacheProfilerStorage::write in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/symfony/http-kernel/Profiler/BaseMemcacheProfilerStorage.php \Symfony\Component\HttpKernel\Profiler\BaseMemcacheProfilerStorage::write()
Saves a Profile.
Parameters
Profile $profile A Profile instance:
Return value
bool Write operation successful
Overrides ProfilerStorageInterface::write
File
- vendor/symfony/ http-kernel/ Profiler/ BaseMemcacheProfilerStorage.php, line 155 
Class
- BaseMemcacheProfilerStorage
- Base Memcache storage for profiling information in a Memcache.
Namespace
Symfony\Component\HttpKernel\ProfilerCode
public function write(Profile $profile) {
  $data = array(
    'token' => $profile
      ->getToken(),
    'parent' => $profile
      ->getParentToken(),
    'children' => array_map(function ($p) {
      return $p
        ->getToken();
    }, $profile
      ->getChildren()),
    'data' => $profile
      ->getCollectors(),
    'ip' => $profile
      ->getIp(),
    'method' => $profile
      ->getMethod(),
    'url' => $profile
      ->getUrl(),
    'time' => $profile
      ->getTime(),
  );
  $profileIndexed = false !== $this
    ->getValue($this
    ->getItemName($profile
    ->getToken()));
  if ($this
    ->setValue($this
    ->getItemName($profile
    ->getToken()), $data, $this->lifetime)) {
    if (!$profileIndexed) {
      // Add to index
      $indexName = $this
        ->getIndexName();
      $indexRow = implode("\t", array(
        $profile
          ->getToken(),
        $profile
          ->getIp(),
        $profile
          ->getMethod(),
        $profile
          ->getUrl(),
        $profile
          ->getTime(),
        $profile
          ->getParentToken(),
        $profile
          ->getStatusCode(),
      )) . "\n";
      return $this
        ->appendValue($indexName, $indexRow, $this->lifetime);
    }
    return true;
  }
  return false;
}