/* Copyright © 2015-2016 Gluzskiy Alexandr (sss) This file is part of Unknown Download Manager (UDM). UDM 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. UDM 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 UDM. If not, see . */ syntax = "proto2"; import "settings.proto"; import "ui.proto"; import "misc.proto"; enum SERVER_MODULE_TYPE { SERVER_MODULE_DOWNLOADER = 0; SERVER_MODULE_METADATA_STORAGE = 1; } message module_info //general module info for client including settings, download info ui and module specific menus { required SERVER_MODULE_TYPE type = 1; required string name = 2; //unique (used as module id) required string version = 3; optional string description = 4 [default = "no description specified"]; repeated setting settings = 5; repeated module_download_ui_element_info download_info_ui = 6; //module defined download info ui, always complete here repeated module_download_ui_element_info download_creation_ui = 7; //module defined download creation ui, always complete here repeated module_download_menu_element_info download_menu = 8; //module defined download menu info, may not present repeated module_download_menu_element_info download_content_menu = 9; //menu for files and folders inside download root, may not present repeated string_pair get_downloads_parameters_info = 10; //info about additional parameters which may be passed to api_module_downloader::get_download, api_module_downloader::get_downloads repeated int_string_pair download_state_name = 11; //module defined download states description, we have a few hardcoded states necessary for every downloader: 0 = stopped, 1 = running, ... }