MDL-62781 question/privacy: fix tests with CodeRunner is installed
[moodle.git] / lib / dtl / string_xml_database_exporter.php
blob1b4133a80f757e0a8ba0454181a980193f4ea1eb
1 <?php
2 // This file is part of Moodle - http://moodle.org/
3 //
4 // Moodle is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // Moodle is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
14 // You should have received a copy of the GNU General Public License
15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>.
17 /**
18 * XML format exporter class to memory storage
20 * @package core_dtl
21 * @copyright 2008 Andrei Bautu
22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
25 defined('MOODLE_INTERNAL') || die();
27 /**
28 * XML format exporter class to memory storage (i.e. a string).
30 class string_xml_database_exporter extends xml_database_exporter {
31 /** @var string String with XML data. */
32 protected $data;
34 /**
35 * Specific output method for the memory XML sink.
36 * @param string $text
38 protected function output($text) {
39 $this->data .= $text;
42 /**
43 * Returns the output of the exporters
44 * @return string XML data from exporter
46 public function get_output() {
47 return $this->data;
50 /**
51 * Specific implementation for memory exporting the database: it clear the buffer
52 * and calls superclass @see database_exporter::export_database().
54 * @throws dbtransfer_exception if any checking (e.g. database schema) fails
55 * @param string $description a user description of the data.
56 * @return void
58 public function export_database($description=null) {
59 $this->data = '';
60 parent::export_database($description);