Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 20
0.00% covered (danger)
0.00%
0 / 9
CRAP
0.00% covered (danger)
0.00%
0 / 1
DumpMultiWriter
0.00% covered (danger)
0.00%
0 / 19
0.00% covered (danger)
0.00%
0 / 9
272
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 writeOpenStream
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 writeCloseStream
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 writeOpenPage
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 writeClosePage
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 writeRevision
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 closeRenameAndReopen
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 closeAndRename
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 getFilenames
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
6
1<?php
2/**
3 * Base class for output stream; prints to stdout or buffer or wherever.
4 *
5 * Copyright © 2003, 2005, 2006 Brooke Vibber <bvibber@wikimedia.org>
6 * https://www.mediawiki.org/
7 *
8 * @license GPL-2.0-or-later
9 * @file
10 */
11
12namespace MediaWiki\Export;
13
14/**
15 * @ingroup Dump
16 */
17class DumpMultiWriter {
18    /** @var array */
19    private $sinks;
20    /** @var int */
21    private $count;
22
23    /**
24     * @param array $sinks
25     */
26    public function __construct( $sinks ) {
27        $this->sinks = $sinks;
28        $this->count = count( $sinks );
29    }
30
31    /**
32     * @param string $string
33     */
34    public function writeOpenStream( $string ) {
35        for ( $i = 0; $i < $this->count; $i++ ) {
36            $this->sinks[$i]->writeOpenStream( $string );
37        }
38    }
39
40    /**
41     * @param string $string
42     */
43    public function writeCloseStream( $string ) {
44        for ( $i = 0; $i < $this->count; $i++ ) {
45            $this->sinks[$i]->writeCloseStream( $string );
46        }
47    }
48
49    /**
50     * @param \stdClass $page
51     * @param string $string
52     */
53    public function writeOpenPage( $page, $string ) {
54        for ( $i = 0; $i < $this->count; $i++ ) {
55            $this->sinks[$i]->writeOpenPage( $page, $string );
56        }
57    }
58
59    /**
60     * @param string $string
61     */
62    public function writeClosePage( $string ) {
63        for ( $i = 0; $i < $this->count; $i++ ) {
64            $this->sinks[$i]->writeClosePage( $string );
65        }
66    }
67
68    /**
69     * @param \stdClass $rev
70     * @param string $string
71     */
72    public function writeRevision( $rev, $string ) {
73        for ( $i = 0; $i < $this->count; $i++ ) {
74            $this->sinks[$i]->writeRevision( $rev, $string );
75        }
76    }
77
78    /**
79     * @param array $newnames
80     */
81    public function closeRenameAndReopen( $newnames ) {
82        $this->closeAndRename( $newnames, true );
83    }
84
85    /**
86     * @param array $newnames
87     * @param bool $open
88     */
89    public function closeAndRename( $newnames, $open = false ) {
90        for ( $i = 0; $i < $this->count; $i++ ) {
91            $this->sinks[$i]->closeAndRename( $newnames[$i], $open );
92        }
93    }
94
95    /**
96     * @return array
97     */
98    public function getFilenames() {
99        $filenames = [];
100        for ( $i = 0; $i < $this->count; $i++ ) {
101            $filenames[] = $this->sinks[$i]->getFilenames();
102        }
103        return $filenames;
104    }
105}
106
107/** @deprecated class alias since 1.46 */
108class_alias( DumpMultiWriter::class, 'DumpMultiWriter' );