1<?php
2/**
3 * MantisBT - A PHP based bugtracking system
4 *
5 * MantisBT is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * MantisBT is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with MantisBT.  If not, see <http://www.gnu.org/licenses/>.
17 *
18 * @copyright Copyright 2002  MantisBT Team - mantisbt-dev@lists.sourceforge.net
19 */
20
21/**
22 * Import XML interface
23 */
24interface ImportXml_Interface {
25	/**
26	  * Read stream until current item finishes, processing the data found
27	  *
28	  * @param XMLreader $p_reader XML Reader.
29	  * @return void
30	  */
31	public function process( XMLreader $p_reader );
32
33	/**
34	  * Update the old_id => new_id conversion map
35	  *
36	  * This function works on a Mapper object, storing the
37	  * type/old_id/new_id triplet for later use.
38	  * Import Classes for items not needing this info can use an empty implementation
39	  *
40	  * @param ImportXml_Mapper $p_mapper XML Mapper.
41	  * @return void
42	  */
43	public function update_map( ImportXml_Mapper $p_mapper );
44}
45