1 <?php
2 /* --------------------------------------------------------------
3 CustomerCountryRepositoryInterface.inc.php 2015-02-18 gm
4 Gambio GmbH
5 http://www.gambio.de
6 Copyright (c) 2015 Gambio GmbH
7 Released under the GNU General Public License (Version 2)
8 [http://www.gnu.org/licenses/gpl-2.0.html]
9 --------------------------------------------------------------
10 */
11
12 /**
13 * Interface CustomerCountryRepositoryInterface
14 *
15 * @category System
16 * @package Customer
17 * @subpackage Interfaces
18 */
19 interface CustomerCountryRepositoryInterface
20 {
21
22 /**
23 * Method to get a customer country with a given country ID
24 *
25 * @param IdType $countryId
26 *
27 * @return CustomerCountryInterface
28 */
29 public function getById(IdType $countryId);
30
31
32 /**
33 * Method to find a country if exists else return null
34 *
35 * @param IdType $countryId
36 *
37 * @return CustomerCountry|null
38 */
39 public function findById(IdType $countryId);
40
41
42 /**
43 * Get country by name.
44 *
45 * @param \CustomerCountryNameInterface $countryName
46 *
47 * @return CustomerCountry
48 *
49 * @throws Exception If the country could not be found.
50 */
51 public function getByName(CustomerCountryNameInterface $countryName);
52 }