Plop
A simple logging library for PHP
RecordFactory.php
1 <?php
2 /*
3  This file is part of Plop, a simple logging library for PHP.
4 
5  Copyright © 2010-2014 François Poirotte
6 
7  Plop is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  Plop is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with Plop. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 namespace Plop;
22 
29 {
30  protected $interpolator;
31 
32  public function __construct(\Plop\InterpolatorInterface $interpolator = null)
33  {
34  if ($interpolator === null) {
35  $interpolator = new \Plop\Interpolator\Percent();
36  }
37  $this->interpolator = $interpolator;
38  }
39 
41  public function createRecord(
42  $loggerNamespace,
43  $loggerClass,
44  $loggerMethod,
45  $namespace,
46  $class,
47  $method,
48  $level,
49  $filename,
50  $lineno,
51  $msg,
52  array $args,
53  \Exception $exception = null
54  ) {
55  $record = new \Plop\Record(
56  $loggerNamespace,
57  $loggerClass,
58  $loggerMethod,
59  $namespace,
60  $class,
61  $method,
62  $level,
63  $filename,
64  $lineno,
65  $msg,
66  $args,
67  $this->interpolator,
68  $exception
69  );
70  return $record;
71  }
72 }
An interface for a factory that produces instances that implement the Plop::RecordInterface interface...
A factory that creates log records as new instances of the Plop::Record class.
createRecord($loggerNamespace, $loggerClass, $loggerMethod, $namespace, $class, $method, $level, $filename, $lineno, $msg, array $args,\Exception $exception=null)
This exception is thrown by Plop whenever a problem is detected.
Definition: Exception.php:30