00001 /*************************************************************************** 00002 * Copyright (C) 2005-2007 Stefan Schwarzer, Jens Schneider, * 00003 * Matthias Hardt, Guido Madaus * 00004 * * 00005 * Copyright (C) 2007-2008 BerLinux Solutions GbR * 00006 * Stefan Schwarzer & Guido Madaus * 00007 * * 00008 * Copyright (C) 2009-2013 BerLinux Solutions GmbH * 00009 * * 00010 * Authors: * 00011 * Stefan Schwarzer <stefan.schwarzer@diskohq.org>, * 00012 * Matthias Hardt <matthias.hardt@diskohq.org>, * 00013 * Jens Schneider <jens.schneider@diskohq.org>, * 00014 * Guido Madaus <guido.madaus@diskohq.org>, * 00015 * Patrick Helterhoff <patrick.helterhoff@diskohq.org>, * 00016 * René Bählkow <rene.baehlkow@diskohq.org> * 00017 * * 00018 * This library is free software; you can redistribute it and/or * 00019 * modify it under the terms of the GNU Lesser General Public * 00020 * License version 2.1 as published by the Free Software Foundation. * 00021 * * 00022 * This library is distributed in the hope that it will be useful, * 00023 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00024 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00025 * Lesser General Public License for more details. * 00026 * * 00027 * You should have received a copy of the GNU Lesser General Public * 00028 * License along with this library; if not, write to the * 00029 * Free Software Foundation, Inc., * 00030 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * 00031 **************************************************************************/ 00032 00033 #ifndef MMSPLUGINDATA_H_ 00034 #define MMSPLUGINDATA_H_ 00035 00036 #include "mmsconfig/mmspropertydata.h" 00037 #include "mmsconfig/mmsplugincategorydata.h" 00038 #include "mmsconfig/mmsplugintypedata.h" 00039 #include "mmsconfig/mmsimportpropertydata.h" 00040 00041 /* plugin types */ 00042 #define PT_OSD_PLUGIN "OSD_PLUGIN" 00043 #define PT_CENTRAL_PLUGIN "CENTRAL_PLUGIN" 00044 #define PT_IMPORT_PLUGIN "IMPORT_PLUGIN" 00045 #define PT_BACKEND_PLUGIN "BACKEND_PLUGIN" 00046 00047 class MMSPluginData { 00048 friend class MMSPluginDAO; 00049 friend class MMSXmlCmdRequestParser; 00050 private: 00051 int id; 00052 MMSPluginTypeData *type; 00053 string name; 00054 string title; 00055 string description; 00056 string path; 00057 string filename; 00058 bool active; 00059 string icon; 00060 string selectedicon; 00061 string smallicon; 00062 string smallselectedicon; 00063 vector <MMSPropertyData *> properties; 00064 MMSImportPropertyData *importProperties; 00065 MMSPluginCategoryData *category; 00066 int orderpos; 00067 string version; 00068 00069 void setId(int id); 00070 00071 public: 00072 MMSPluginData(); 00073 MMSPluginData(const MMSPluginData &pd); 00074 ~MMSPluginData(); 00075 00076 void clear(); 00077 00078 MMSPluginData& operator=(const MMSPluginData &pd); 00079 00080 int getId(); 00081 00082 MMSPluginTypeData *getType(); 00083 void setType(MMSPluginTypeData *type); 00084 00085 string getName(); 00086 void setName(string name); 00087 00088 string getTitle(); 00089 void setTitle(string title); 00090 00091 string getDescription(); 00092 void setDescription(string description); 00093 00094 string getFilename(); 00095 void setFilename(string filename); 00096 00097 string getPath(); 00098 void setPath(string path); 00099 00100 bool getActive(); 00101 void setActive(bool active); 00102 00103 string getIcon(); 00104 void setIcon(string icon); 00105 00106 string getSelectedIcon(); 00107 void setSelectedIcon(string icon); 00108 00109 string getSmallIcon(); 00110 void setSmallIcon(string icon); 00111 00112 string getSmallSelectedIcon(); 00113 void setSmallSelectedIcon(string icon); 00114 00115 vector<MMSPropertyData *> getProperties(); 00116 MMSPropertyData* getProperty(string name); 00117 void setProperties(vector <MMSPropertyData *> props); 00118 00119 MMSImportPropertyData *getImportProperties(); 00120 void setImportProperties(MMSImportPropertyData *props); 00121 00122 MMSPluginCategoryData *getCategory(); 00123 void setCategory(MMSPluginCategoryData *category); 00124 00125 int getOrderpos(); 00126 void setOrderpos(int orderpos); 00127 00128 string getVersion(); 00129 void setVersion(string version); 00130 }; 00131 00132 #endif /*MMSPLUGINDATA_H_*/