]> git.mxchange.org Git - core.git/blobdiff - framework/main/interfaces/registry/class_Register.php
Continued:
[core.git] / framework / main / interfaces / registry / class_Register.php
index 3fc6b55b21943a18f441e7ab365809dc61fc78cd..8e2daa03abb118682295a99fce78ca70031364b7 100644 (file)
@@ -1,16 +1,16 @@
 <?php
 // Own namespace
-namespace CoreFramework\Registry;
+namespace Org\Mxchange\CoreFramework\Registry;
 
 // Import framework stuff
-use CoreFramework\Generic\FrameworkInterface;
+use Org\Mxchange\CoreFramework\Generic\FrameworkInterface;
 
 /**
  * An interface for registries
  *
  * @author             Roland Haeder <webmaster@shipsimu.org>
  * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2017 Core Developer Team
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2023 Core Developer Team
  * @license            GNU GPL 3.0 or any newer version
  * @link               http://www.shipsimu.org
  *
@@ -34,7 +34,7 @@ interface Register extends FrameworkInterface {
         * @param       $instanceKey    The key holding an instance in registry
         * @return      $exists                 Whether the key exists in registry
         */
-       function instanceExists ($instanceKey);
+       function instanceExists (string $instanceKey);
 
        /**
         * Adds/overwrites a new instance to the registry at the given key
@@ -43,14 +43,55 @@ interface Register extends FrameworkInterface {
         * @param       $objectInstance         An instance we shall store
         * @return      void
         */
-       function addInstance ($instanceKey, Registerable $objectInstance);
+       function addInstance (string $instanceKey, Registerable $objectInstance);
+
+       /**
+        * Getter for whole generic registry
+        *
+        * @return      $instanceRegistry       The whole generic registry array
+        */
+       function getGenericRegistry ();
+
+       /**
+        * Getter for whole instance registry
+        *
+        * @return      $instanceRegistry       The whole instance registry array
+        */
+       function getInstanceRegistry ();
+
+       /**
+        * Adds a new entry to the given list name. If you want to add objects
+        * please use addInstance() and getInstance() instead.
+        *
+        * @param       $key    The key to identify the whole list
+        * @param       $value  The value to be stored
+        * @return      void
+        */
+       function addEntry (string $key, $value);
+
+       /**
+        * Getter for entries or "sub entries"
+        *
+        * @return      $entries        An array with entries from this registry
+        */
+       function getEntries (string $key = NULL);
+
+       /**
+        * "Getter" for an array of all entries for given key
+        *
+        * @param       $arrayKey       The array (key) to look in
+        * @param       $lookFor        The key to look for
+        * @return      $entry          An array with all keys
+        */
+       function getArrayFromKey (string $arrayKey, string $lookFor);
 
        /**
         * Gets a registered instance or null if not found
         *
         * @param       $instanceKey            The key to identify the instance
         * @return      $objectInstance         An instance we shall store
+        * @throws      NullPointerException    If the requested key is not found
         */
-       function getInstance ($instanceKey);
+       function getInstance (string $instanceKey);
 
 }