44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /**
 | |
|  * @package   FOF
 | |
|  * @copyright Copyright (c)2010-2022 Nicholas K. Dionysopoulos / Akeeba Ltd
 | |
|  * @license   GNU General Public License version 3, or later
 | |
|  */
 | |
| 
 | |
| namespace  FOF40\Configuration\Domain;
 | |
| 
 | |
| use SimpleXMLElement;
 | |
| 
 | |
| defined('_JEXEC') || die;
 | |
| 
 | |
| /**
 | |
|  * The Interface of a FOF configuration domain class. The methods are used to parse and
 | |
|  * provision sensible information to consumers. The Configuration class acts as an
 | |
|  * adapter to the domain classes.
 | |
|  *
 | |
|  * @since    2.1
 | |
|  */
 | |
| interface DomainInterface
 | |
| {
 | |
| 	/**
 | |
| 	 * Parse the XML data, adding them to the $ret array
 | |
| 	 *
 | |
| 	 * @param   SimpleXMLElement  $xml   The XML data of the component's configuration area
 | |
| 	 * @param   array             &$ret  The parsed data, in the form of a hash array
 | |
| 	 *
 | |
| 	 * @return  void
 | |
| 	 */
 | |
| 	public function parseDomain(SimpleXMLElement $xml, array &$ret): void;
 | |
| 
 | |
| 	/**
 | |
| 	 * Return a configuration variable
 | |
| 	 *
 | |
| 	 * @param   array   &$configuration  Configuration variables (hashed array)
 | |
| 	 * @param   string  $var             The variable we want to fetch
 | |
| 	 * @param   mixed   $default         Default value
 | |
| 	 *
 | |
| 	 * @return  mixed  The variable's value
 | |
| 	 */
 | |
| 	public function get(array &$configuration, string $var, $default = null);
 | |
| }
 |