/* C R E A T E V I E W F O R C O L L E C T I O N */ /*---------------------------------------------------------------------------- * %%Function: CreateViewForCollection * %%Qualified: AzLog.AzLog.CreateViewForCollection * %%Contact: rlittle * * Create a window with the initial query parameters from this screen * ----------------------------------------------------------------------------*/ private void CreateViewForCollection(object sender, EventArgs e) { if (m_azlm == null) { m_azlm = new AzLogModel(); // load all of our datasources and attach them foreach (IAzLogDatasource iazlds in m_azlc.Sources) { if (!iazlds.FOpen(null, s_sRegRoot)) { throw new Exception(String.Format("couldn't open datasource {0}", iazlds.ToString())); } m_azlm.AttachDatasource(iazlds); } } // figure out the timespan being requested DateTime dttmMin, dttmMac; if (m_cbAllDates.Checked) { if (!m_azlm.FGetMinMacDateRange(out dttmMin, out dttmMac)) { MessageBox.Show("Cannot automatically set date range -- this option only works when at least one datasource is a file. Setting date range to today."); dttmMin = DateTime.Today; dttmMac = dttmMin.AddDays(1); } } else { AzLogModel.FillMinMacFromStartEnd(m_ebStart.Text, m_ebEnd.Text, out dttmMin, out dttmMac); } AzLogFilter azlf = new AzLogFilter(); // create a basic filter based on the range they asked for azlf.Add(new AzLogFilter.AzLogFilterCondition(AzLogFilter.AzLogFilterValue.ValueType.DateTime, AzLogFilter.AzLogFilterValue.DataSource.DttmRow, AzLogEntry.LogColumn.Nil, AzLogFilter.AzLogFilterCondition.CmpOp.Gte, dttmMin)); azlf.Add(new AzLogFilter.AzLogFilterCondition(AzLogFilter.AzLogFilterValue.ValueType.DateTime, AzLogFilter.AzLogFilterValue.DataSource.DttmRow, AzLogEntry.LogColumn.Nil, AzLogFilter.AzLogFilterCondition.CmpOp.Lt, dttmMac)); azlf.Add(AzLogFilter.AzLogFilterOperation.OperationType.And); AzLogWindow azlw = AzLogWindow.CreateNewWindow(m_azlm, m_azlc.DefaultView, azlf, this); azlw.Show(); m_azlm.AddView(azlw.View); // we don't know what partition we're going to find this data in, so launch a query // from the first partition for this date range //m_azlm.FFetchPartitionsForDateRange(dttmMin, nHourMin, dttmMac, nHourMac); m_azlm.FFetchPartitionsForDateRange(dttmMin, dttmMac); }
public static void TestAzLogFilterIdChange() { AzLogFilter azlf = new AzLogFilter(); Guid idSave = azlf.ID; Assert.AreEqual(idSave, azlf.ID); azlf.Add(null); Assert.AreNotEqual(idSave, azlf.ID); idSave = azlf.ID; azlf.Add(null); Assert.AreNotEqual(idSave, azlf.ID); }
public static void TestAzLogFilterDateRange(string sDttmRow, AzLogFilterCondition.CmpOp cmpop1, String sCmp1, AzLogFilterCondition.CmpOp cmpop2, string sCmp2, bool fExpected) { AzLogFilter azlf = new AzLogFilter(); TestAzLogFilterValueMock mock = new TestAzLogFilterValueMock(); mock.m_dttmRow = DateTime.Parse(sDttmRow); azlf.Add(new AzLogFilterCondition(AzLogFilterValue.ValueType.DateTime, AzLogFilterValue.DataSource.DttmRow, AzLogEntry.LogColumn.Nil, cmpop1, DateTime.Parse(sCmp1))); azlf.Add(new AzLogFilterCondition(AzLogFilterValue.ValueType.DateTime, AzLogFilterValue.DataSource.DttmRow, AzLogEntry.LogColumn.Nil, cmpop2, DateTime.Parse(sCmp2))); azlf.Add(AzLogFilterOperation.OperationType.And); Assert.AreEqual(fExpected, azlf.FEvaluate(mock)); }
public static void TestAzLogFilterSingle() { AzLogFilter azlf = new AzLogFilter(); TestAzLogFilterValueMock mock = new TestAzLogFilterValueMock(); mock.m_mpColumnValue = new Dictionary <AzLogEntry.LogColumn, string>(); mock.m_mpColumnValue.Add(AzLogEntry.LogColumn.AppName, "TestValue"); azlf.Add(new AzLogFilterCondition(AzLogFilterValue.ValueType.String, AzLogFilterValue.DataSource.Column, AzLogEntry.LogColumn.AppName, AzLogFilterCondition.CmpOp.Eq, "TestValue")); Assert.AreEqual(true, azlf.FEvaluate(mock)); }
/*---------------------------------------------------------------------------- * %%Function: CreateColorContext * %%Qualified: AzLog.AzLogWindow.CreateColorContext * * we're going to get called for the color item, so the parent of this item * should have our tag * ----------------------------------------------------------------------------*/ private void CreateColorContext(object sender, EventArgs e) { ToolStripMenuItem subMenuItem = (ToolStripMenuItem)sender; ToolStripMenuItem menuItem = colorThisToolStripMenuItem; ContextMenuContext cmc = (ContextMenuContext)(menuItem).Tag; AzLogFilter filter = new AzLogFilter(); filter.Add(new AzLogFilter.AzLogFilterCondition(AzLogFilter.AzLogFilterValue.ValueType.String, AzLogFilter.AzLogFilterValue.DataSource.Column, cmc.lc, AzLogFilter.AzLogFilterCondition.CmpOp.Eq, cmc.azle.GetColumn(cmc.lc))); m_azlv.AddColorFilter(filter, subMenuItem.BackColor, subMenuItem.ForeColor); m_azlv.RebuildView(); }
public static void TestAzLogFilterSingle() { AzLogFilter azlf = new AzLogFilter(); TestAzLogFilterValueMock mock = new TestAzLogFilterValueMock(); mock.m_mpColumnValue = new Dictionary<AzLogEntry.LogColumn, string>(); mock.m_mpColumnValue.Add(AzLogEntry.LogColumn.AppName, "TestValue"); azlf.Add(new AzLogFilterCondition(AzLogFilterValue.ValueType.String, AzLogFilterValue.DataSource.Column, AzLogEntry.LogColumn.AppName, AzLogFilterCondition.CmpOp.Eq, "TestValue")); Assert.AreEqual(true, azlf.FEvaluate(mock)); }
private void DoFetchLogEntries(object sender, EventArgs e) { // figure out the timespan being requested DateTime dttmMin, dttmMac; AzLogModel.FillMinMacFromStartEnd(m_ebStart.Text, m_ebEnd.Text, out dttmMin, out dttmMac); AzLogFilter azlf = new AzLogFilter(); // create a basic filter based on the range they asked for azlf.Add(new AzLogFilter.AzLogFilterCondition(AzLogFilter.AzLogFilterValue.ValueType.DateTime, AzLogFilter.AzLogFilterValue.DataSource.DttmRow, AzLogEntry.LogColumn.Nil, AzLogFilter.AzLogFilterCondition.CmpOp.Gte, dttmMin)); azlf.Add(new AzLogFilter.AzLogFilterCondition(AzLogFilter.AzLogFilterValue.ValueType.DateTime, AzLogFilter.AzLogFilterValue.DataSource.DttmRow, AzLogEntry.LogColumn.Nil, AzLogFilter.AzLogFilterCondition.CmpOp.Lt, dttmMac)); azlf.Add(AzLogFilter.AzLogFilterOperation.OperationType.And); AzLogWindow azlw = AzLogWindow.CreateNewWindow(m_azlm, m_sDefaultView, azlf, this); azlw.Show(); m_azlm.AddView(azlw.View); // we don't know what partition we're going to find this data in, so launch a query // from the first partition for this date range //m_azlm.FFetchPartitionsForDateRange(dttmMin, nHourMin, dttmMac, nHourMac); m_azlm.FFetchPartitionsForDateRange(dttmMin, dttmMac); }