示例#1
0
        private async void refreshCache_Click(object sender, EventArgs e)
        {
            var thisSpace  = (DTO.Space)spacesCombo.SelectedItem;
            var serialized = Settings.Default.SerializedCache;
            var dataCache  = new nAssembla.Cache.DataCache();

            if (!string.IsNullOrEmpty(serialized))
            {
                dataCache = Newtonsoft.Json.JsonConvert.DeserializeObject <nAssembla.Cache.DataCache>(serialized);
            }

            var spacecache = default(nAssembla.Cache.SpaceDataCache);

            statusLabel.Text = "Populating data cache...";
            spacecache       = await NAssembla.GetSpaceDataCache(thisSpace.Id);

            if (!dataCache.Spaces.ContainsKey(thisSpace.Id))
            {
                dataCache.Spaces.Add(thisSpace.Id, spacecache);
            }
            else
            {
                dataCache.Spaces[thisSpace.Id] = spacecache;
            }

            serialized = await Newtonsoft.Json.JsonConvert.SerializeObjectAsync(dataCache);

            Settings.Default.SerializedCache = serialized;
            Settings.Default.Save();

            statusLabel.Text = "Ready";
        }
示例#2
0
        private async void spacesCombo_SelectedIndexChanged(object sender, EventArgs e)
        {
            var thisSpace = (DTO.Space)spacesCombo.SelectedItem;

            nAssembla.Configuration.SpaceName = thisSpace.Name;

            var serialized = Settings.Default.SerializedCache;
            var dataCache  = new nAssembla.Cache.DataCache();

            if (!string.IsNullOrEmpty(serialized))
            {
                dataCache = Newtonsoft.Json.JsonConvert.DeserializeObject <nAssembla.Cache.DataCache>(serialized);
            }

            var spacecache = default(nAssembla.Cache.SpaceDataCache);

            if (!dataCache.Spaces.TryGetValue(thisSpace.Id, out spacecache))
            {
                statusLabel.Text = "Populating data cache...";
                spacecache       = await NAssembla.GetSpaceDataCache(thisSpace.Id);

                dataCache.Spaces.Add(thisSpace.Id, spacecache);
                serialized = await Newtonsoft.Json.JsonConvert.SerializeObjectAsync(dataCache);

                Settings.Default.SerializedCache = serialized;
                Settings.Default.Save();
            }
            else
            {
                NAssembla.SetSpaceDataCache(spacecache);
            }

            statusLabel.Text = "Getting activity for space...";

            streamPanel.Controls.Clear();
            var stream = await NAssembla.ActivityProxy.Space(thisSpace.Id).DateFrom(DateTime.Today.AddDays(-2)).GetListAsync();

            stream.ToList().ForEach(s =>
            {
                var ctl        = new TestHarness.Controls.StreamEvent();
                ctl.DataSource = s;
                streamPanel.Controls.Add(ctl);
            });

            reportsCombo.SelectedItem = null;
            reportsCombo.Items.Clear();
            reportsCombo.Enabled = false;

            var customReports = await NAssembla.CustomReportProxy.GetListAsync();

            reportsCombo.Items.AddRange(nAssembla.DTO.StandardReports.AllStandardReports.ToArray());
            if (customReports != null)
            {
                reportsCombo.Items.AddRange(customReports.ToArray());
            }

            reportsCombo.Enabled = true;
            statusLabel.Text     = "Ready";
        }
示例#3
0
        /// <summary>
        /// Selecteds the space.
        /// </summary>
        /// <param name="_space">The _space.</param>
        /// <returns></returns>
        public async Task<ActionResult> SelectedSpace(DTO.Space _space)
        {
	  try
	  {
	      nAssembla.Configuration.SpaceName = _space.Name;

	      var serialized = Settings.Default.SerializedCache;
	      var dataCache = new nAssembla.Cache.DataCache();

	      if (!string.IsNullOrEmpty(serialized))
		dataCache = Newtonsoft.Json.JsonConvert.DeserializeObject<nAssembla.Cache.DataCache>(serialized);

	      var spacecache = default(nAssembla.Cache.SpaceDataCache);

	      if (!dataCache.Spaces.TryGetValue(_space.Id, out spacecache))
	      {
		spacecache = await NAssembla.GetSpaceDataCache(_space.Id);
		dataCache.Spaces.Add(_space.Id, spacecache);
		serialized = await Newtonsoft.Json.JsonConvert.SerializeObjectAsync(dataCache);
		TempData["spacecache"] = spacecache;
		TempData["dataCache"] = dataCache;
		TempData["serialized"] = serialized;		

		//Settings.Default.SerializedCache = serialized;
		//Settings.Default.Save();
	      }
	      else { NAssembla.SetSpaceDataCache(spacecache); }

	      return View("SpaceInfo");

	      //var stream = await NAssembla.ActivityProxy.Space(_space.Id).DateFrom(DateTime.Today.AddDays(-7)).GetListAsync();
	      //stream.ToList().ForEach(s =>
	      //{
	      //    var ctl = new TestHarness.Controls.StreamEvent();
	      //    ctl.DataSource = s.;
	      //    streamPanel.Controls.Add(ctl);
	      //});

	      ////reportsCombo.SelectedItem = null;
	      ////reportsCombo.Items.Clear();
	      ////reportsCombo.Enabled = false;

	      //var customReports = await NAssembla.CustomReportProxy.GetListAsync();

	      //reportsCombo.Items.AddRange(nAssembla.DTO.StandardReports.AllStandardReports.ToArray());
	      //if (customReports != null)
	      //    reportsCombo.Items.AddRange(customReports.ToArray());

	      //reportsCombo.Enabled = true;
	      //statusLabel.Text = "Ready";
	  }
	  catch (Exception ex)
	  {
	      throw;
	  }
        }
示例#4
0
        private async void spacesCombo_SelectedIndexChanged(object sender, EventArgs e)
        {
            var thisSpace = (DTO.Space)spacesCombo.SelectedItem;

            nAssembla.Configuration.SpaceName = thisSpace.Name;

            var serialized = Settings.Default.SerializedCache;
            var dataCache = new nAssembla.Cache.DataCache();
            
	  if (!string.IsNullOrEmpty(serialized))
                dataCache = Newtonsoft.Json.JsonConvert.DeserializeObject<nAssembla.Cache.DataCache>(serialized);

            var spacecache = default(nAssembla.Cache.SpaceDataCache);

            if (!dataCache.Spaces.TryGetValue(thisSpace.Id, out spacecache))
            {
                statusLabel.Text = "LLenando cache data...";
                spacecache = await NAssembla.GetSpaceDataCache(thisSpace.Id);
                dataCache.Spaces.Add(thisSpace.Id, spacecache);
                serialized = await Newtonsoft.Json.JsonConvert.SerializeObjectAsync(dataCache);
                Settings.Default.SerializedCache = serialized;
                Settings.Default.Save();
            }
            else
            {
                NAssembla.SetSpaceDataCache(spacecache);
            }

            statusLabel.Text = "Getting activity for space...";

            streamPanel.Controls.Clear();
            var stream = await NAssembla.ActivityProxy.Space(thisSpace.Id).DateFrom(DateTime.Today.AddDays(-2)).GetListAsync();
            stream.ToList().ForEach(s =>
            {
                var ctl = new TestHarness.Controls.StreamEvent();
                ctl.DataSource = s;
                streamPanel.Controls.Add(ctl);
            });

            reportsCombo.SelectedItem = null;
            reportsCombo.Items.Clear();
            reportsCombo.Enabled = false;

            var customReports = await NAssembla.CustomReportProxy.GetListAsync();

            reportsCombo.Items.AddRange(nAssembla.DTO.StandardReports.AllStandardReports.ToArray());
            if (customReports != null)
                reportsCombo.Items.AddRange(customReports.ToArray());
             
            reportsCombo.Enabled = true;
            statusLabel.Text = "Ready";
        }
示例#5
0
        public static async Task<nAssembla.Cache.DataCache> LoadCachableData(DTO.Space space, CachableDataTypes types)
        {
            var dataCache = new nAssembla.Cache.DataCache();
            var spaceCache = new nAssembla.Cache.SpaceDataCache();
            dataCache.Spaces[space.Id] = spaceCache;

            if ((types & CachableDataTypes.Components) == CachableDataTypes.Components)
            {
                spaceCache.Components = await new TicketComponentProxy().GetListAsync();
                RaiseDataLoaded(CachableDataTypes.Components, spaceCache.Components.Count());
            }

            if ((types & CachableDataTypes.Milestones) == CachableDataTypes.Milestones)
            {
                spaceCache.Milestones = await new MilestoneProxy().GetListAsync();
                RaiseDataLoaded(CachableDataTypes.Milestones, spaceCache.Milestones.Count());
            }

            return dataCache;
        }
示例#6
0
        public static async Task <nAssembla.Cache.DataCache> LoadCachableData(DTO.Space space, CachableDataTypes types)
        {
            var dataCache  = new nAssembla.Cache.DataCache();
            var spaceCache = new nAssembla.Cache.SpaceDataCache();

            dataCache.Spaces[space.Id] = spaceCache;

            if ((types & CachableDataTypes.Components) == CachableDataTypes.Components)
            {
                spaceCache.Components = await new TicketComponentProxy().GetListAsync();
                RaiseDataLoaded(CachableDataTypes.Components, spaceCache.Components.Count());
            }

            if ((types & CachableDataTypes.Milestones) == CachableDataTypes.Milestones)
            {
                spaceCache.Milestones = await new MilestoneProxy().GetListAsync();
                RaiseDataLoaded(CachableDataTypes.Milestones, spaceCache.Milestones.Count());
            }

            return(dataCache);
        }
示例#7
0
 public static void SetDataCache(nAssembla.Cache.DataCache cache)
 {
 }
示例#8
0
        private async void refreshCache_Click(object sender, EventArgs e)
        {
            var thisSpace = (DTO.Space)spacesCombo.SelectedItem;
            var serialized = Settings.Default.SerializedCache;
            var dataCache = new nAssembla.Cache.DataCache();
            if (!string.IsNullOrEmpty(serialized))
                dataCache = Newtonsoft.Json.JsonConvert.DeserializeObject<nAssembla.Cache.DataCache>(serialized);

            var spacecache = default(nAssembla.Cache.SpaceDataCache);
            statusLabel.Text = "Populating data cache...";
            spacecache = await NAssembla.GetSpaceDataCache(thisSpace.Id);

            if (!dataCache.Spaces.ContainsKey(thisSpace.Id))
                dataCache.Spaces.Add(thisSpace.Id, spacecache);
            else
                dataCache.Spaces[thisSpace.Id] = spacecache;
           
            serialized = await Newtonsoft.Json.JsonConvert.SerializeObjectAsync(dataCache);

            Settings.Default.SerializedCache = serialized;
            Settings.Default.Save();

            statusLabel.Text = "Ready";
        }