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
|
<?php
/* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */
namespace Symfony\Component\Translation\Catalogue;
use Symfony\Component\Translation\MessageCatalogueInterface;
/** * Represents an operation on catalogue(s). * * An instance of this interface performs an operation on one or more catalogues and * stores intermediate and final results of the operation. * * The first catalogue in its argument(s) is called the 'source catalogue' or 'source' and * the following results are stored: * * Messages: also called 'all', are valid messages for the given domain after the operation is performed. * * New Messages: also called 'new' (new = all ∖ source = {x: x ∈ all ∧ x ∉ source}). * * Obsolete Messages: also called 'obsolete' (obsolete = source ∖ all = {x: x ∈ source ∧ x ∉ all}). * * Result: also called 'result', is the resulting catalogue for the given domain that holds the same messages as 'all'. * * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com> */ interface OperationInterface { /** * Returns domains affected by operation. * * @return array */ public function getDomains();
/** * Returns all valid messages ('all') after operation. * * @param string $domain * * @return array */ public function getMessages($domain);
/** * Returns new messages ('new') after operation. * * @param string $domain * * @return array */ public function getNewMessages($domain);
/** * Returns obsolete messages ('obsolete') after operation. * * @param string $domain * * @return array */ public function getObsoleteMessages($domain);
/** * Returns resulting catalogue ('result'). * * @return MessageCatalogueInterface */ public function getResult(); }
|