| 1 | <?php␊ |
| 2 | /* -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */␊ |
| 3 | /*␊ |
| 4 | # ***** BEGIN LICENSE BLOCK *****␊ |
| 5 | # This file is part of InDefero, an open source project management application.␊ |
| 6 | # Copyright (C) 2008-2011 CĂ©ondo Ltd and contributors.␊ |
| 7 | #␊ |
| 8 | # InDefero is free software; you can redistribute it and/or modify␊ |
| 9 | # it under the terms of the GNU General Public License as published by␊ |
| 10 | # the Free Software Foundation; either version 2 of the License, or␊ |
| 11 | # (at your option) any later version.␊ |
| 12 | #␊ |
| 13 | # InDefero is distributed in the hope that it will be useful,␊ |
| 14 | # but WITHOUT ANY WARRANTY; without even the implied warranty of␊ |
| 15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the␊ |
| 16 | # GNU General Public License for more details.␊ |
| 17 | #␊ |
| 18 | # You should have received a copy of the GNU General Public License␊ |
| 19 | # along with this program; if not, write to the Free Software␊ |
| 20 | # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA␊ |
| 21 | #␊ |
| 22 | # ***** END LICENSE BLOCK ***** */␊ |
| 23 | ␊ |
| 24 | /**␊ |
| 25 | * Monotone stdio interface␊ |
| 26 | *␊ |
| 27 | * @author Thomas Keller <me@thomaskeller.biz>␊ |
| 28 | */␊ |
| 29 | interface IDF_Scm_Monotone_IStdio␊ |
| 30 | {␊ |
| 31 | /**␊ |
| 32 | * Constructor␊ |
| 33 | */␊ |
| 34 | public function __construct(IDF_Project $project);␊ |
| 35 | ␊ |
| 36 | /**␊ |
| 37 | * Starts the stdio process and resets the command counter␊ |
| 38 | */␊ |
| 39 | public function start();␊ |
| 40 | ␊ |
| 41 | /**␊ |
| 42 | * Stops the stdio process and closes all pipes␊ |
| 43 | */␊ |
| 44 | public function stop();␊ |
| 45 | ␊ |
| 46 | /**␊ |
| 47 | * Executes a command over stdio and returns its result␊ |
| 48 | *␊ |
| 49 | * @param array Array of arguments␊ |
| 50 | * @param array Array of options as key-value pairs. Multiple options␊ |
| 51 | * can be defined in sub-arrays, like␊ |
| 52 | * "r" => array("123...", "456...")␊ |
| 53 | * @return string␊ |
| 54 | */␊ |
| 55 | public function exec(array $args, array $options = array());␊ |
| 56 | ␊ |
| 57 | /**␊ |
| 58 | * Returns the last out-of-band output for a previously executed␊ |
| 59 | * command as associative array with 'e' (error), 'w' (warning),␊ |
| 60 | * 'p' (progress) and 't' (ticker, unparsed) as keys␊ |
| 61 | *␊ |
| 62 | * @return array␊ |
| 63 | */␊ |
| 64 | public function getLastOutOfBandOutput();␊ |
| 65 | }␊ |
| 66 | ␊ |
| 67 | |