Change pkgname to appid and add package id PART 1.
[framework/web/wrt-commons.git] / modules / widget_dao / include / dpl / wrt-dao-ro / common_dao_types.h
index c3891c4..c76b5b5 100644 (file)
@@ -29,9 +29,9 @@
 #include <map>
 #include <vector>
 #include <list>
-#include <dpl/optional_typedefs.h>
-#include <dpl/shared_ptr.h>
 #include <memory>
+#include <dpl/optional_typedefs.h>
+
 
 namespace WrtDB {
 class PluginMetafileData
@@ -63,7 +63,7 @@ class PluginObjectsDAO
 {
   public:
     typedef std::set<std::string> Objects;
-    typedef DPL::SharedPtr<Objects> ObjectsPtr;
+    typedef std::shared_ptr<Objects> ObjectsPtr;
 
   public:
     explicit PluginObjectsDAO() {}
@@ -81,6 +81,8 @@ class PluginObjectsDAO
  * FindWidgetModel routine.
  */
 typedef int DbWidgetHandle;
+typedef DPL::String TizenPkgId;
+typedef DPL::String TizenAppId;
 typedef DPL::String WidgetPkgName;
 
 /**
@@ -236,7 +238,8 @@ typedef std::multiset<DbWidgetFeature> DbWidgetFeatureSet;
  */
 typedef std::list<DbWidgetHandle> DbWidgetHandleList;
 
-typedef std::list<DPL::Optional<WidgetPkgName> > WidgetPkgNameList; //TODO: this cannot be null -> appropriate changes in db schema needed
+typedef std::list<WidgetPkgName> WidgetPkgNameList; //TODO: this cannot be null -> appropriate changes in db schema needed
+typedef std::list<TizenAppId> TizenAppIdList; //TODO: this cannot be null -> appropriate changes in db schema needed
 
 class WidgetDAOReadOnly; //forward declaration
 typedef std::shared_ptr<WidgetDAOReadOnly> WidgetDAOReadOnlyPtr;
@@ -254,7 +257,7 @@ enum AppType
 {
     APP_TYPE_UNKNOWN = 0, // unknown
     APP_TYPE_WAC20, // WAC 2.0
-    APP_TYPE_TIZENWEBAPP, // Tizen webapp
+    APP_TYPE_TIZENWEBAPP // Tizen webapp
 };
 
 class WidgetType
@@ -272,6 +275,10 @@ class WidgetType
     {
         return appType == other;
     }
+    bool operator!= (const AppType& other) const
+    {
+        return appType != other;
+    }
     std::string getApptypeToString()
     {
         switch (appType) {
@@ -293,44 +300,59 @@ class WidgetType
  *
  * Package type describes belowed in Tizen webapp, C++ service App
  */
-enum PackagingType
+enum PkgType
 {
     PKG_TYPE_UNKNOWN = 0, // unknown
-    PKG_TYPE_TIZEN_WEBAPP, // Tizen webapp
-    PKG_TYPE_TIZEN_WITHSVCAPP, // Tizen webapp with C++ service app
+    PKG_TYPE_NOMAL_WEB_APP,
+    PKG_TYPE_DIRECTORY_WEB_APP,
+    PKG_TYPE_HOSTED_WEB_APP,    // request from browser
+    PKG_TYPE_HYBRID_WEB_APP // Tizen webapp with C++ service app
 };
 
-class PkgType
+class PackagingType
 {
   public:
-    PkgType()
+    PackagingType()
     :pkgType(PKG_TYPE_UNKNOWN)
     {
     }
-    PkgType(const PackagingType type)
+    PackagingType(const PkgType type)
     :pkgType(type)
     {
     }
-    bool operator== (const PackagingType& other) const
+    bool operator== (const PkgType& other) const
     {
         return pkgType == other;
     }
+    bool operator!= (const PkgType& other) const
+    {
+        return pkgType != other;
+    }
     std::string getPkgtypeToString()
     {
         switch (pkgType) {
 #define X(x) case x: return #x;
         X(PKG_TYPE_UNKNOWN)
-        X(PKG_TYPE_TIZEN_WEBAPP)
-        X(PKG_TYPE_TIZEN_WITHSVCAPP)
+        X(PKG_TYPE_NOMAL_WEB_APP)
+        X(PKG_TYPE_DIRECTORY_WEB_APP)
+        X(PKG_TYPE_HOSTED_WEB_APP)
+        X(PKG_TYPE_HYBRID_WEB_APP)
 #undef X
         default:
             return "UNKNOWN";
         }
     }
 
-    PackagingType pkgType;
+    PkgType pkgType;
 };
 
+enum SettingsType
+{
+    SETTINGS_TYPE_UNKNOWN = 0,
+    SETTINGS_TYPE_ON,
+    SETTINGS_TYPE_ALWAYS_ASK,
+    SETTINGS_TYPE_OFF
+};
 } // namespace WrtDB
 
 struct WidgetSetting