Exemplo n.º 1
0
        public static void Test2(MongoDatabase db)
        {
            var d = new Dictionary<string, object>();
            var pp = new PortalPage { Title = "This is my test", Id = "test1" };
            var pc = new PortalPageColumn();
            pp.Columns.Add(pc);
            pc.Config["width"] = 200;
            d["open"] = "open listener";
            d["close"] = "close listener";
            d["interval"] = 500;
            pc.Config["listeners"] = d;

            d = new Dictionary<string, object>();
            d["open"] = "open listener";
            d["close"] = "close listener";
            d["interval"] = 500;
            pc.Config["listeners"] = d;

            var pt = new Portlet { Title = "test portlet 1", PortletClass = "GraphImage" };
            pt.Config["width"] = 200;
            pt.Config["height"] = 300;
            pt.Config["listeners"] = d;
            pc.Portlets.Add(pt);

            db.GetCollection<PortalPage>().Save(pp);

            var pp2 = db.GetCollection<PortalPage>().FindOneById(pp.Id);
            Console.WriteLine("p2: {0}", pp2.Title);
        }
Exemplo n.º 2
0
        static void TestDeser()
        {
            var d = new Dictionary<string, object>();
            var pp = new PortalPage { Title = "This is my test", Id = "test1" };
            var pc = new PortalPageColumn();
            pp.Columns.Add(pc);
            pc.Config["width"] = 200;
            d["open"] = "open listener";
            d["close"] = "close listener";
            d["interval"] = 500;
            pc.Config["listeners"] = d;

            d = new Dictionary<string, object>();
            d["open"] = "open listener";
            d["close"] = "close listener";
            d["interval"] = 500;
            pc.Config["listeners"] = d;

            var pt = new Portlet { Title = "test portlet 1", PortletClass = "GraphImage" };
            pt.Config["width"] = 200;
            pt.Config["height"] = 300;
            pt.Config["listeners"] = new Dictionary<string, object>(d);
            var l = new List<object>();
            var d2 = new Dictionary<string, object>();
            d2["name"] = "ko";
            d2["value"] = 289;
            l.Add(d2);
            l.Add(new Dictionary<string, object>(d2));
            pt.Config["dataFields"] = l;

            pc.Portlets.Add(pt);
            var sw = new StringWriter();
            var bw = BsonWriter.Create(sw);
            BsonSerializer.Serialize(bw, pp);
            bw.Flush();
            Console.WriteLine("S1: {0}", sw.ToString());
            var p2 = BsonSerializer.Deserialize<PortalPage>(BsonReader.Create(new StringReader(sw.ToString())));
        }
Exemplo n.º 3
0
 public IList<Portlet> SearchAvailablePortlets(string query, int? start, int? limit)
 {
     List<Portlet> ret = new List<Portlet>();
     var lst = Db.FindAll<GraphDefinition>().ToList();
     foreach (var gd in lst)
     {
         Portlet p = new Portlet();
         p.Id = gd.Id;
         p.Title = gd.Title;
         p.Config = new Dictionary<string, object>();
         p.Config["graphDefinitionId"] = gd.Id;
         p.Config["height"] = 300;
         p.PortletClass = "CogMon.ui.RrdGraphPortlet";
         ret.Add(p);
     }
     return ret;
 }
Exemplo n.º 4
0
 public PortalPage AddNewPortletToPage(string pageId, int column, Portlet portlet)
 {
     portlet.Config = Util.JsonUtil.NormalizeJsonObject(portlet.Config);
     var p = Db.GetCollection<PortalPage>().FindOneById(pageId);
     if (!PageEditAllowed(p)) throw new Exception("Page not editable");
     if (p.Columns.Count == 0)
     {
         p.Columns.Add(new PortalPageColumn { });
     }
     PortalPageColumn pc = p.Columns[0];
     if (column == -1)
     {
         foreach (var pcol in p.Columns)
         {
             if (pcol.Portlets.Count < pc.Portlets.Count)
             {
                 pc = pcol;
             }
         }
     }
     else
     {
         pc = p.Columns[column];
     }
     portlet.Id = (p.IdGen++).ToString();
     pc.Portlets.Add(portlet);
     Db.GetCollection<PortalPage>().Save(p);
     VerifySavedPage(p);
     return UpdatePageBeforeReturning(p);
 }