namespace Org\Mxchange\CoreFramework\Application;
// Import framework stuff
+use Org\Mxchange\CoreFramework\Controller\Controller;
+use Org\Mxchange\CoreFramework\Manager\ManageableApplication;
use Org\Mxchange\CoreFramework\Object\BaseFrameworkSystem;
use Org\Mxchange\CoreFramework\Registry\GenericRegistry;
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
abstract class BaseApplication extends BaseFrameworkSystem {
+ /**
+ * The version number of this application
+ */
+ private $appVersion = '';
+
+ /**
+ * The human-readable name for this application
+ */
+ private $appName = '';
+
+ /**
+ * The short uni*-like name for this application
+ */
+ private $shortName = '';
+
+ /**
+ * Own singleton instance of this application helper
+ */
+ private static $applicationInstance = NULL;
+
+ /**
+ * A controller instance
+ */
+ private $controllerInstance = NULL;
+
/**
* Protected constructor
*
GenericRegistry::getRegistry()->addInstance('application', $this);
}
+ /**
+ * Getter for own instance
+ *
+ * @return $applicationInstance An instance of a ManageableApplication class
+ */
+ public static final function getApplicationInstance () {
+ return self::$applicationInstance;
+ }
+
+ /**
+ * Setter for own instance
+ *
+ * @param $applicationInstance An instance of a ManageableApplication class
+ */
+ public static final function setApplicationInstance (ManageableApplication $applicationInstance) {
+ self::$applicationInstance = $applicationInstance;
+ }
+
+ /**
+ * Setter for controller instance (this surely breaks a bit the MVC patterm)
+ *
+ * @param $controllerInstance An instance of the controller
+ * @return void
+ */
+ public final function setControllerInstance (Controller $controllerInstance) {
+ $this->controllerInstance = $controllerInstance;
+ }
+
+ /**
+ * Getter for controller instance (this surely breaks a bit the MVC patterm)
+ *
+ * @return $controllerInstance An instance of the controller
+ */
+ public final function getControllerInstance () {
+ return $this->controllerInstance;
+ }
+
+ /**
+ * Getter for the version number
+ *
+ * @return $appVersion The application's version number
+ */
+ public final function getAppVersion () {
+ return $this->appVersion;
+ }
+
+ /**
+ * Setter for the version number
+ *
+ * @param $appVersion The application's version number
+ * @return void
+ */
+ public final function setAppVersion (string $appVersion) {
+ // Cast and set it
+ $this->appVersion = $appVersion;
+ }
+
+ /**
+ * Getter for human-readable name
+ *
+ * @return $appName The application's human-readable name
+ */
+ public final function getAppName () {
+ return $this->appName;
+ }
+
+ /**
+ * Setter for human-readable name
+ *
+ * @param $appName The application's human-readable name
+ * @return void
+ */
+ public final function setAppName (string $appName) {
+ // Cast and set it
+ $this->appName = $appName;;
+ }
+
+ /**
+ * Getter for short uni*-like name
+ *
+ * @return $shortName The application's short uni*-like name
+ */
+ public final function getAppShortName () {
+ return $this->shortName;
+ }
+
+ /**
+ * Setter for short uni*-like name
+ *
+ * @param $shortName The application's short uni*-like name
+ * @return void
+ */
+ public final function setAppShortName (string $shortName) {
+ // Cast and set it
+ $this->shortName = (string) $shortName;
+ }
+
}