-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathimportqueuedblogger.php
More file actions
98 lines (90 loc) · 3.35 KB
/
importqueuedblogger.php
File metadata and controls
98 lines (90 loc) · 3.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Import queue. This class overrides provider claass and ensures queue status is maintained.
*
* @package dhimport_importqueue
* @author Remote-Learner.net Inc
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @copyright (C) 2015 Remote Learner.net Inc http://www.remote-learner.net
*/
require_once($CFG->dirroot.'/local/datahub/lib/rlip_importprovider_csv.class.php');
/**
* Logger which saves messages to importqueuelog.
*/
class importqueuedblogger extends rlip_fslogger {
/**
* @var int $queueid Queue id of import.
*/
private $queueid = 0;
/**
* Filesystem logger constructor.
*
* @param int $queueid Id of queued import.
*/
public function __construct($queueid) {
$this->queueid = $queueid;
$this->fileplugin = null;
$this->manual = false;
}
/**
* Log a message to the log file - used internally only (use log_success or
* log_failure instead for external calls)
*
* @param string $message The message to long
* @param int $timestamp The timestamp to associate the message with, or 0
* for the current time
* @param string $filename The name of the import / export file we are
* reporting on
* @param int $line Line number in file.
* @param boolean $success true if the operation was a success, otherwise
* false
* @return boolean true if the operation was a success, otherwise
* false
*/
protected function log($message, $timestamp = 0, $filename = null, $line = null,
$success = false) {
global $CFG, $DB;
$message = $this->customize_record($message, $timestamp, $filename, $line, $success);
if (empty($timestamp)) {
// Default to current time if time not specified.
$timestamp = time();
}
$logentry = new stdClass();
$logentry->timecreated = $timestamp;
$logentry->message = $message;
$logentry->line = $line;
$logentry->queueid = $this->queueid;
if (empty($filename)) {
$filename = $this->queueid;
}
$logentry->filename = $filename;
$logentry->queueid = $this->queueid;
if ($success) {
$logentry->status = 1;
} else {
$logentry->status = 0;
}
$DB->insert_record('dhimport_importqueuelog', $logentry);
return true;
}
/**
* Perform any cleanup that the logger needs to do
*/
public function close() {
// Overriden to prevent closing of file handle that does not exist.
}
}