diff options
| author | Jan-Hendrik Willms <tleilax+github@gmail.com> | 2021-07-22 16:07:19 +0200 |
|---|---|---|
| committer | Jan-Hendrik Willms <tleilax+github@gmail.com> | 2021-07-22 16:19:12 +0200 |
| commit | a3da1483a9e689846179159355badfec8073dbec (patch) | |
| tree | 770dcca6bdf5f6f2a11b0e7fcbbeda6919a3fc52 /lib/plugins/core/LibraryPlugin.class.php | |
current code from svn, revision 62608
Diffstat (limited to 'lib/plugins/core/LibraryPlugin.class.php')
| -rw-r--r-- | lib/plugins/core/LibraryPlugin.class.php | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/lib/plugins/core/LibraryPlugin.class.php b/lib/plugins/core/LibraryPlugin.class.php new file mode 100644 index 0000000..a7fb873 --- /dev/null +++ b/lib/plugins/core/LibraryPlugin.class.php @@ -0,0 +1,55 @@ +<?php + + +/* + * LibraryPlugin.class.php - A plugin class for library plugins. + * + * Copyright (c) 2020 Moritz Strohm + * + * 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 2 of + * the License, or (at your option) any later version. + */ + + +interface LibraryPlugin +{ + /** + * Generates the URL that leads to the plugin action to create a request. + * The URL may vary depending on the ID of the library file that shall be + * requested. Therefore, the library file ID is passed to this method. + * + * @param $library_file_id The library file ID to which a request URL shall + * be generated. + * + * @returns string The URL for the request action of the plugin. + */ + public function getRequestURL(string $library_file_id) : string; + + + /** + * Generates the title for the plugin action to create a request. + * That title may vary depending on the library file that shall be requested. + * Therefore, the file is passed to this method. + * + * @param LibraryFile $file The file to which the request URL title shall be + * generated. + * + * @returns string The title for the request URL action of the plugin. + */ + public function getRequestTitle() : string; + + + /** + * Generates the icon for the plugin action to create a request. + * That icon may vary depending on the library file that shall be requested. + * Therefore, the file is passed to this method. + * + * @param LibraryFile $file The file to which the request URL icon shall be + * generated. + * + * @returns Icon The icon for the request URL action of the plugin. + */ + public function getRequestIcon() : Icon; +} |
