diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2015-09-30 23:48:05 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2015-09-30 23:48:05 +0100 |
commit | d10b8914aeb4f297d6b6deca2408cd81b1adad08 (patch) | |
tree | 25fb41739387671e8e7a183778686ffdc5a29b4c /project2/sql | |
parent | Remove NoOutputExecute for not being a thing (diff) | |
download | project2-d10b8914aeb4f297d6b6deca2408cd81b1adad08.tar.bz2 project2-d10b8914aeb4f297d6b6deca2408cd81b1adad08.tar.xz project2-d10b8914aeb4f297d6b6deca2408cd81b1adad08.zip |
Use AdHoc plugins for scriptable things and remove legacy plugin support
Diffstat (limited to 'project2/sql')
-rw-r--r-- | project2/sql/rdbmsDataSource.cpp | 4 | ||||
-rw-r--r-- | project2/sql/sqlBulkLoad.cpp | 5 | ||||
-rw-r--r-- | project2/sql/sqlCache.cpp | 4 | ||||
-rw-r--r-- | project2/sql/sqlMergeTask.cpp | 6 | ||||
-rw-r--r-- | project2/sql/sqlRows.cpp | 2 | ||||
-rw-r--r-- | project2/sql/sqlTask.cpp | 6 | ||||
-rw-r--r-- | project2/sql/sqlTest.cpp | 2 |
7 files changed, 15 insertions, 14 deletions
diff --git a/project2/sql/rdbmsDataSource.cpp b/project2/sql/rdbmsDataSource.cpp index e1091a3..9b295d3 100644 --- a/project2/sql/rdbmsDataSource.cpp +++ b/project2/sql/rdbmsDataSource.cpp @@ -8,7 +8,7 @@ #define LOCK(l) std::lock_guard<std::mutex> _lock##l(l) /// Specialized ElementLoader for instances of RdbmsDataSource; handles persistent DB connections -class RdbmsDataSourceLoader : public ElementLoader::For<RdbmsDataSource> { +class RdbmsDataSourceLoader : public ComponentLoader { public: void onIdle() override { @@ -32,7 +32,7 @@ class RdbmsDataSourceLoader : public ElementLoader::For<RdbmsDataSource> { RdbmsDataSource::changedDSNs.clear(); } }; -DECLARE_CUSTOM_LOADER("rdbmsdatasource", RdbmsDataSourceLoader); +NAMEDFACTORY("rdbmsdatasource", RdbmsDataSource, DataSourceFactory); RdbmsDataSource::DBHosts RdbmsDataSource::dbhosts; RdbmsDataSource::FailedHosts RdbmsDataSource::failedhosts; diff --git a/project2/sql/sqlBulkLoad.cpp b/project2/sql/sqlBulkLoad.cpp index d976997..4f17837 100644 --- a/project2/sql/sqlBulkLoad.cpp +++ b/project2/sql/sqlBulkLoad.cpp @@ -15,7 +15,7 @@ class SqlBulkLoad : public Task { extras(p, "extras"), db(NULL) { - p->script->loader.addLoadTarget(p, Storer::into<ElementLoader>(&stream)); + p->script->loader.addLoadTarget(p, Storer::into<StreamFactory>(&stream)); } void loadComplete(const CommonObjects * co) @@ -41,4 +41,5 @@ class SqlBulkLoad : public Task { const RdbmsDataSource * db; }; -DECLARE_LOADER("sqlbulkload", SqlBulkLoad); +NAMEDFACTORY("sqlbulkload", SqlBulkLoad, TaskFactory); + diff --git a/project2/sql/sqlCache.cpp b/project2/sql/sqlCache.cpp index cf33f8e..6e5bd20 100644 --- a/project2/sql/sqlCache.cpp +++ b/project2/sql/sqlCache.cpp @@ -264,7 +264,7 @@ std::string SqlCache::DataSource; std::string SqlCache::HeaderTable; time_t SqlCache::CacheLife; -class CustomSqlCacheLoader : public ElementLoader::For<SqlCache> { +class CustomSqlCacheLoader : public RowSetCacheFactory::For<SqlCache>, public ComponentLoader { public: void onIdle() override { @@ -284,7 +284,7 @@ class CustomSqlCacheLoader : public ElementLoader::For<SqlCache> { } } }; -DECLARE_CUSTOM_LOADER("sqlcache", CustomSqlCacheLoader); +NAMEDPLUGIN("sqlcache", CustomSqlCacheLoader, RowSetCacheFactory); DECLARE_OPTIONS(SqlCache, "SQL Cache options") ("cache.sql.dataSource", Options::value(&DataSource), diff --git a/project2/sql/sqlMergeTask.cpp b/project2/sql/sqlMergeTask.cpp index ea334eb..cbf2210 100644 --- a/project2/sql/sqlMergeTask.cpp +++ b/project2/sql/sqlMergeTask.cpp @@ -40,8 +40,8 @@ class SqlMergeInsert : IHaveParameters, public Task { DB::ModifyCommand * insert; }; -DECLARE_LOADER("sqlmerge", SqlMergeTask); -DECLARE_LOADER("sqlmergeinsert", SqlMergeInsert); +NAMEDFACTORY("sqlmerge", SqlMergeTask, TaskFactory); +NAMEDFACTORY("sqlmergeinsert", SqlMergeInsert, TaskFactory); // Conversion logic SqlMergeTask::SqlMergeTask(const std::string & datasource, const std::string & target) : @@ -85,7 +85,7 @@ SqlMergeTask::SqlMergeTask(ScriptNodePtr p) : dtable(p->value("targettable", NULL).as<std::string>()), dtablet(stringf("tmp_%s_%d", dtable.c_str(), getpid())) { - p->script->loader.addLoadTarget(p, Storer::into<ElementLoader>(&sources)); + p->script->loader.addLoadTarget(p, Storer::into<RowSetFactory>(&sources)); if (!sources.empty() && useView(NULL)) { throw NotSupported("useview not supported with iterate fillers"); diff --git a/project2/sql/sqlRows.cpp b/project2/sql/sqlRows.cpp index f8a16e1..b6e40cc 100644 --- a/project2/sql/sqlRows.cpp +++ b/project2/sql/sqlRows.cpp @@ -10,7 +10,7 @@ #include "commonObjects.h" #include <boost/date_time/gregorian/gregorian_types.hpp> -DECLARE_LOADER("sqlrows", SqlRows); +NAMEDFACTORY("sqlrows", SqlRows, RowSetFactory); SqlRows::SqlRows(ScriptNodePtr p) : RowSet(p), diff --git a/project2/sql/sqlTask.cpp b/project2/sql/sqlTask.cpp index 94f5102..78c6d81 100644 --- a/project2/sql/sqlTask.cpp +++ b/project2/sql/sqlTask.cpp @@ -6,7 +6,7 @@ #include "commonObjects.h" #include "sqlVariableBinder.h" -DECLARE_LOADER("sqltask", SqlTask); +NAMEDFACTORY("sqltask", SqlTask, TaskFactory); StaticMessageException(RunOnNotSpecified, "runon attribute must be specified"); SqlTask::SqlTask(ScriptNodePtr p) : @@ -17,8 +17,8 @@ SqlTask::SqlTask(ScriptNodePtr p) : sqlCommand(p->child("sql")), db(NULL) { - p->script->loader.addLoadTargetSub(p, "changes", false, Storer::into<ElementLoader>(&changesTasks)); - p->script->loader.addLoadTargetSub(p, "nochanges", false, Storer::into<ElementLoader>(&noChangesTasks)); + p->script->loader.addLoadTargetSub(p, "changes", false, Storer::into<TaskFactory>(&changesTasks)); + p->script->loader.addLoadTargetSub(p, "nochanges", false, Storer::into<TaskFactory>(&noChangesTasks)); } SqlTask::~SqlTask() diff --git a/project2/sql/sqlTest.cpp b/project2/sql/sqlTest.cpp index fedc2a0..f3a5516 100644 --- a/project2/sql/sqlTest.cpp +++ b/project2/sql/sqlTest.cpp @@ -8,7 +8,7 @@ #include "sqlVariableBinder.h" #include <boost/date_time/posix_time/posix_time.hpp> -DECLARE_LOADER("sqltest", SqlTest); +NAMEDFACTORY("sqltest", SqlTest, TestFactory); class CantCompareNulls : public std::exception { }; |