From 58919afe451ad5b2088d61ff1c856f44dd522b32 Mon Sep 17 00:00:00 2001 From: Christian Weiske Date: Mon, 7 May 2012 21:10:51 +0200 Subject: [PATCH 1/1] add interfaces for database adapter --- src/phorkie/Database.php | 17 ++++++++++++++--- .../Database/Adapter/Elasticsearch/Indexer.php | 2 +- .../Database/Adapter/Elasticsearch/Search.php | 2 +- .../Database/Adapter/Elasticsearch/Setup.php | 2 +- src/phorkie/Database/IIndexer.php | 12 ++++++++++++ src/phorkie/Database/ISearch.php | 9 +++++++++ src/phorkie/Database/ISetup.php | 9 +++++++++ 7 files changed, 47 insertions(+), 6 deletions(-) create mode 100644 src/phorkie/Database/IIndexer.php create mode 100644 src/phorkie/Database/ISearch.php create mode 100644 src/phorkie/Database/ISetup.php diff --git a/src/phorkie/Database.php b/src/phorkie/Database.php index 9854e7c..786cfe0 100644 --- a/src/phorkie/Database.php +++ b/src/phorkie/Database.php @@ -3,19 +3,30 @@ namespace phorkie; class Database { + public $prefix = '\phorkie\Database_Adapter_Null'; + + public function __construct() + { + if ($GLOBALS['phorkie']['cfg']['elasticsearch'] != '') { + $this->prefix = '\phorkie\Database_Adapter_Elasticsearch'; + } + } public function getSearch() { - return new Database_Adapter_Elasticsearch_Search(); + $class = $this->prefix . '_Search'; + return new $class(); } public function getIndexer() { - return new Database_Adapter_Elasticsearch_Indexer(); + $class = $this->prefix . '_Indexer'; + return new $class(); } public function getSetup() { - return new Database_Adapter_Elasticsearch_Setup(); + $class = $this->prefix . '_Setup'; + return new $class(); } } diff --git a/src/phorkie/Database/Adapter/Elasticsearch/Indexer.php b/src/phorkie/Database/Adapter/Elasticsearch/Indexer.php index d9d1032..41aa7d7 100644 --- a/src/phorkie/Database/Adapter/Elasticsearch/Indexer.php +++ b/src/phorkie/Database/Adapter/Elasticsearch/Indexer.php @@ -1,7 +1,7 @@ diff --git a/src/phorkie/Database/ISearch.php b/src/phorkie/Database/ISearch.php new file mode 100644 index 0000000..b18d43a --- /dev/null +++ b/src/phorkie/Database/ISearch.php @@ -0,0 +1,9 @@ + diff --git a/src/phorkie/Database/ISetup.php b/src/phorkie/Database/ISetup.php new file mode 100644 index 0000000..1ac6b2f --- /dev/null +++ b/src/phorkie/Database/ISetup.php @@ -0,0 +1,9 @@ + -- 2.30.2