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 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
<?php
/* --------------------------------------------------------------
CountryServiceInterface.inc.php 2016-07-04
Gambio GmbH
http://www.gambio.de
Copyright (c) 2016 Gambio GmbH
Released under the GNU General Public License (Version 2)
[http://www.gnu.org/licenses/gpl-2.0.html]
--------------------------------------------------------------
*/
/**
* Interface CountryServiceInterface
*
* @category System
* @package Customer
* @subpackage Interfaces
*/
interface CountryServiceInterface
{
/**
* Method to get a country with a given id
*
* @param IdType $id
*
* @return CustomerCountryInterface
*/
public function getCountryById(IdType $id);
/**
* Method to get a country with a given name and country
*
* @param CustomerCountryZoneNameInterface|string $p_zoneName
* @param CustomerCountryInterface $customerCountry
*
* @return CustomerCountryZoneInterface
*/
public function getCountryZoneByNameAndCountry($p_zoneName, CustomerCountryInterface $customerCountry);
/**
* This method returns a CustomerCountryZone object if found. Otherwise null will be returned.
*
* @param CustomerCountryZoneNameInterface|string $p_zoneName
* @param CustomerCountryInterface $customerCountry
*
* @return CustomerCountryZoneInterface|null
*/
public function findCountryZoneByNameAndCountry($p_zoneName, CustomerCountryInterface $customerCountry);
/**
* Method to check if a country zone exists in a country
*
* @param CustomerCountryZoneInterface $customerCountryZone
* @param CustomerCountryInterface $customerCountry
*
* @return bool
*/
public function countryZoneExistsInCountry(CustomerCountryZoneInterface $customerCountryZone,
CustomerCountryInterface $customerCountry);
/**
* Method to check if a country has country zones
*
* @param CustomerCountryInterface $customerCountry
*
* @return bool
*/
public function countryHasCountryZones(CustomerCountryInterface $customerCountry);
/**
* This method will return a new CustomerCountryZone object representing an unknown country zone.
*
* @param string $p_zoneName
*
* @return CustomerCountryZone
*/
public function getUnknownCountryZoneByName($p_zoneName);
/**
* This method will return an array of CustomerCountryZone objects found by the country ID. If the country has
* no zones, an empty array will be returned
*
* @param IdType $countryId
*
* @return array of CustomerCountryZone objects
*/
public function findCountryZonesByCountryId(IdType $countryId);
/**
* Get country by name.
*
* @param string $p_countryName
*
* @return CustomerCountryInterface
*/
public function getCountryByName($p_countryName);
/**
* Find country by name.
*
* @param string $p_countryName
*
* @return CustomerCountryInterface
*/
public function findCountryByName($p_countryName);
}