source: sandbox/newExpressoMail/newExpressoMail/Assetic/Asset/AssetCollectionInterface.php @ 7265

Revision 7265, 1.7 KB checked in by gustavo, 12 years ago (diff)

Ticket #0000 - Criado novo modulo para o desenvolvimento do novo ExpressoMail?

  • Property svn:executable set to *
Line 
1<?php
2
3/*
4 * This file is part of the Assetic package, an OpenSky project.
5 *
6 * (c) 2010-2012 OpenSky Project Inc
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12namespace Assetic\Asset;
13
14/**
15 * An asset collection.
16 *
17 * @author Kris Wallsmith <kris.wallsmith@gmail.com>
18 */
19interface AssetCollectionInterface extends AssetInterface, \Traversable
20{
21    /**
22     * Returns all child assets.
23     *
24     * @return array An array of AssetInterface objects
25     */
26    public function all();
27
28    /**
29     * Adds an asset to the current collection.
30     *
31     * @param AssetInterface $asset An asset
32     */
33    public function add(AssetInterface $asset);
34
35    /**
36     * Removes a leaf.
37     *
38     * @param AssetInterface $leaf      The leaf to remove
39     * @param Boolean        $graceful  Whether the failure should return false or throw an exception
40     *
41     * @return Boolean Whether the asset has been found
42     *
43     * @throws \InvalidArgumentException If the asset cannot be found
44     */
45    public function removeLeaf(AssetInterface $leaf, $graceful = false);
46
47    /**
48     * Replaces an existing leaf with a new one.
49     *
50     * @param AssetInterface $needle      The current asset to replace
51     * @param AssetInterface $replacement The new asset
52     * @param Boolean        $graceful  Whether the failure should return false or throw an exception
53     *
54     * @return Boolean Whether the asset has been found
55     *
56     * @throws \InvalidArgumentException If the asset cannot be found
57     */
58    public function replaceLeaf(AssetInterface $needle, AssetInterface $replacement, $graceful = false);
59}
Note: See TracBrowser for help on using the repository browser.