73 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
namespace nur\mapper\base\oobd;
 | 
						|
 | 
						|
/**
 | 
						|
 * Class IOobdManager: un gestionnaire de données out-of-band
 | 
						|
 */
 | 
						|
interface IOobdManager {
 | 
						|
  /** obtenir l'instance partagée, ou null s'il n'y en a pas */
 | 
						|
  function getSharedOobdManager(): ?IOobdManager;
 | 
						|
 | 
						|
  /** spécifier l'instance partagée */
 | 
						|
  function setSharedOobdManager(IOobdManager $sharedOobdManager);
 | 
						|
 | 
						|
  /** s'assurer de l'existence d'une instance partagée */
 | 
						|
  function ensureSharedOobdManager(): void;
 | 
						|
 | 
						|
  /** vérifier si la valeur spécifiée existe */
 | 
						|
  function hasOvalue(string $name): bool;
 | 
						|
 | 
						|
  /** obtenir la valeur spécifiée, ou $default si elle n'existe pas */
 | 
						|
  function getOvalue(string $name, $default=null);
 | 
						|
 | 
						|
  /**
 | 
						|
   * spécifier la valeur
 | 
						|
   *
 | 
						|
   * si $value est une valeur booléenne, le traitement est particulier: la
 | 
						|
   * valeur courante n'est modifiée que si elle ne vaut pas exactement true.
 | 
						|
   * cela permet de spécifier un flag qui ne change plus une fois qu'il reçoit
 | 
						|
   * la valeur vraie
 | 
						|
   *
 | 
						|
   * si $shared==true, attaquer l'éventuelle instance partagée. sinon, c'est la
 | 
						|
   * valeur locale qui est modifiée.
 | 
						|
   *
 | 
						|
   * retourner la valeur finale du paramètre
 | 
						|
   */
 | 
						|
  function setOvalue(string $name, $value, bool $shared=true);
 | 
						|
 | 
						|
  /**
 | 
						|
   * incrémenter la valeur. si la valeur n'existait pas au préalable, considèrer
 | 
						|
   * que sa valeur était zéro
 | 
						|
   *
 | 
						|
   * si $shared==true, attaquer l'éventuelle instance partagée. sinon, c'est la
 | 
						|
   * valeur locale qui est modifiée.
 | 
						|
   *
 | 
						|
   * retourner la valeur finale du paramètre
 | 
						|
   */
 | 
						|
  function incOvalue(string $name, bool $shared=true): int;
 | 
						|
 | 
						|
  /**
 | 
						|
   * décrémenter la valeur. si la valeur n'existait pas au préalable, considèrer
 | 
						|
   * que sa valeur était zéro
 | 
						|
   *
 | 
						|
   * si $shared==true, attaquer l'éventuelle instance partagée. sinon, c'est la
 | 
						|
   * valeur locale qui est modifiée.
 | 
						|
   *
 | 
						|
   * retourner la valeur finale du paramètre
 | 
						|
   */
 | 
						|
  function decOvalue(string $name, bool $shared=true): int;
 | 
						|
 | 
						|
  /**
 | 
						|
   * spécifier la valeur de façon inconditionnelle
 | 
						|
   *
 | 
						|
   * si $value===null, la valeur courante est supprimée. il n'y a pas de
 | 
						|
   * traitement particulier si $value est une valeur booléenne
 | 
						|
   *
 | 
						|
   * si $shared==true, attaquer l'éventuelle instance partagée. sinon, c'est la
 | 
						|
   * valeur locale qui est modifiée.
 | 
						|
   *
 | 
						|
   * retourner la valeur finale du paramètre
 | 
						|
   */
 | 
						|
  function resetOvalue(string $name, $value=null, bool $shared=true);
 | 
						|
}
 |