From 39c1aaf705e8e3c274d56ef1fa931a086f729c48 Mon Sep 17 00:00:00 2001 From: Roland Haeder Date: Mon, 21 Nov 2016 21:38:56 +0100 Subject: [PATCH] added files for database format-upgrade Signed-off-by: Roland Haeder --- .../classes/registry/format_upgrade/.htaccess | 1 + .../format_upgrade/database/.htaccess | 1 + .../registry/format_upgrade/database/class_ | 59 +++++++++++++++++++ ...LocalFileDatabaseFormatUpgradeRegistry.php | 59 +++++++++++++++++++ .../registry/format_upgrade/.htaccess | 1 + .../class_RegisterableFormatUpgrade.php | 36 +++++++++++ 6 files changed, 157 insertions(+) create mode 100644 inc/main/classes/registry/format_upgrade/.htaccess create mode 100644 inc/main/classes/registry/format_upgrade/database/.htaccess create mode 100644 inc/main/classes/registry/format_upgrade/database/class_ create mode 100644 inc/main/classes/registry/format_upgrade/database/class_LocalFileDatabaseFormatUpgradeRegistry.php create mode 100644 inc/main/interfaces/registry/format_upgrade/.htaccess create mode 100644 inc/main/interfaces/registry/format_upgrade/class_RegisterableFormatUpgrade.php diff --git a/inc/main/classes/registry/format_upgrade/.htaccess b/inc/main/classes/registry/format_upgrade/.htaccess new file mode 100644 index 00000000..3a428827 --- /dev/null +++ b/inc/main/classes/registry/format_upgrade/.htaccess @@ -0,0 +1 @@ +Deny from all diff --git a/inc/main/classes/registry/format_upgrade/database/.htaccess b/inc/main/classes/registry/format_upgrade/database/.htaccess new file mode 100644 index 00000000..3a428827 --- /dev/null +++ b/inc/main/classes/registry/format_upgrade/database/.htaccess @@ -0,0 +1 @@ +Deny from all diff --git a/inc/main/classes/registry/format_upgrade/database/class_ b/inc/main/classes/registry/format_upgrade/database/class_ new file mode 100644 index 00000000..7da3a876 --- /dev/null +++ b/inc/main/classes/registry/format_upgrade/database/class_ @@ -0,0 +1,59 @@ + + * @version 0.0.0 + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2016 Core Developer Team + * @license GNU GPL 3.0 or any newer version + * @link http://www.ship-simu.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +class ???FormatUpgradeRegistry extends BaseRegistry implements RegisterableFormatUpgrade { + /** + * Instance of this class + */ + private static $registryInstance = null; + + /** + * Protected constructor + * + * @return void + */ + protected function __construct () { + // Call parent constructor + parent::__construct(__CLASS__); + } + + /** + * Singleton getter for self instance. This class has no factory pattern + * because here is no need for special parameters. + * + * @return $registryInstance Instance of this class + */ + public final static function getRegistry () { + // Is an instance there? + if (is_null(self::$registryInstance)) { + // Not yet, so create one + self::$registryInstance = new ???FormatUpgradeRegistry(); + } // END - if + + // Return the instance + return self::$registryInstance; + } +} + +// [EOF] +?> diff --git a/inc/main/classes/registry/format_upgrade/database/class_LocalFileDatabaseFormatUpgradeRegistry.php b/inc/main/classes/registry/format_upgrade/database/class_LocalFileDatabaseFormatUpgradeRegistry.php new file mode 100644 index 00000000..25c7ef29 --- /dev/null +++ b/inc/main/classes/registry/format_upgrade/database/class_LocalFileDatabaseFormatUpgradeRegistry.php @@ -0,0 +1,59 @@ + + * @version 0.0.0 + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2016 Core Developer Team + * @license GNU GPL 3.0 or any newer version + * @link http://www.ship-simu.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +class LocalFileDatabaseFormatUpgradeRegistry extends BaseRegistry implements RegisterableFormatUpgrade { + /** + * Instance of this class + */ + private static $registryInstance = null; + + /** + * Protected constructor + * + * @return void + */ + protected function __construct () { + // Call parent constructor + parent::__construct(__CLASS__); + } + + /** + * Singleton getter for self instance. This class has no factory pattern + * because here is no need for special parameters. + * + * @return $registryInstance Instance of this class + */ + public final static function getRegistry () { + // Is an instance there? + if (is_null(self::$registryInstance)) { + // Not yet, so create one + self::$registryInstance = new LocalFileDatabaseFormatUpgradeRegistry(); + } // END - if + + // Return the instance + return self::$registryInstance; + } +} + +// [EOF] +?> diff --git a/inc/main/interfaces/registry/format_upgrade/.htaccess b/inc/main/interfaces/registry/format_upgrade/.htaccess new file mode 100644 index 00000000..3a428827 --- /dev/null +++ b/inc/main/interfaces/registry/format_upgrade/.htaccess @@ -0,0 +1 @@ +Deny from all diff --git a/inc/main/interfaces/registry/format_upgrade/class_RegisterableFormatUpgrade.php b/inc/main/interfaces/registry/format_upgrade/class_RegisterableFormatUpgrade.php new file mode 100644 index 00000000..7fde65b6 --- /dev/null +++ b/inc/main/interfaces/registry/format_upgrade/class_RegisterableFormatUpgrade.php @@ -0,0 +1,36 @@ + + * @version 0.0.0 + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2016 Core Developer Team + * @license GNU GPL 3.0 or any newer version + * @link http://www.shipsimu.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +interface RegisterableFormatUpgrade extends FrameworkInterface { + /** + * Registers given format-upgrade class with this registry + * + * @param $upgradeInstance An instance of a UpgradeableDatabaseFormat class + * @return void + */ + function registerFormatUpgrader (UpgradeableDatabaseFormat $upgradeInstance); + +} + +// [EOF] +?> -- 2.30.2