summaryrefslogtreecommitdiffstats
path: root/lib/public
diff options
context:
space:
mode:
authorThomas Müller <thomas.mueller@tmit.eu>2016-01-21 12:13:01 +0100
committerThomas Müller <thomas.mueller@tmit.eu>2016-01-21 12:13:01 +0100
commit7c7467fe4244cb26a86670bc89194da7b4dc82b5 (patch)
tree4b4d203386cc9780398e654cafff73c8ab70e938 /lib/public
parentec8022d241541b25a0e4d01857bf6a0c1ed74eca (diff)
parent899f9bd113304d77b865653768450f6013824553 (diff)
downloadnextcloud-server-7c7467fe4244cb26a86670bc89194da7b4dc82b5.tar.gz
nextcloud-server-7c7467fe4244cb26a86670bc89194da7b4dc82b5.zip
Merge pull request #21792 from owncloud/systemtags-managerfactory
Allow custom implementation of system tag managers
Diffstat (limited to 'lib/public')
-rw-r--r--lib/public/comments/icommentsmanagerfactory.php10
-rw-r--r--lib/public/systemtag/isystemtagmanagerfactory.php59
2 files changed, 69 insertions, 0 deletions
diff --git a/lib/public/comments/icommentsmanagerfactory.php b/lib/public/comments/icommentsmanagerfactory.php
index 03a2b16b310..2e71719019c 100644
--- a/lib/public/comments/icommentsmanagerfactory.php
+++ b/lib/public/comments/icommentsmanagerfactory.php
@@ -20,6 +20,8 @@
*/
namespace OCP\Comments;
+use OCP\IServerContainer;
+
/**
* Interface ICommentsManagerFactory
*
@@ -32,6 +34,14 @@ namespace OCP\Comments;
interface ICommentsManagerFactory {
/**
+ * Constructor for the comments manager factory
+ *
+ * @param IServerContainer $serverContainer server container
+ * @since 9.0.0
+ */
+ public function __construct(IServerContainer $serverContainer);
+
+ /**
* creates and returns an instance of the ICommentsManager
*
* @return ICommentsManager
diff --git a/lib/public/systemtag/isystemtagmanagerfactory.php b/lib/public/systemtag/isystemtagmanagerfactory.php
new file mode 100644
index 00000000000..ad7467633b1
--- /dev/null
+++ b/lib/public/systemtag/isystemtagmanagerfactory.php
@@ -0,0 +1,59 @@
+<?php
+/**
+ * @author Vincent Petry <pvince81@owncloud.com>
+ *
+ * @copyright Copyright (c) 2016, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * 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 Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
+namespace OCP\SystemTag;
+
+use OCP\IServerContainer;
+
+/**
+ * Interface ISystemTagManagerFactory
+ *
+ * Factory interface for system tag managers
+ *
+ * @package OCP\SystemTag
+ * @since 9.0.0
+ */
+interface ISystemTagManagerFactory {
+
+ /**
+ * Constructor for the system tag manager factory
+ *
+ * @param IServerContainer $serverContainer server container
+ * @since 9.0.0
+ */
+ public function __construct(IServerContainer $serverContainer);
+
+ /**
+ * creates and returns an instance of the system tag manager
+ *
+ * @return ISystemTagManager
+ * @since 9.0.0
+ */
+ public function getManager();
+
+ /**
+ * creates and returns an instance of the system tag object
+ * mapper
+ *
+ * @return ISystemTagObjectMapper
+ * @since 9.0.0
+ */
+ public function getObjectMapper();
+}