aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging/IEventLogger.cs
blob: ceb399d24a3ce8eb729c17f0a50ca40a0075d542 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.BL.Entities;
using Tango.BL.Enumerations;
using Tango.PMR.Diagnostics;

namespace Tango.MachineStudio.Common.EventLogging
{
    /// <summary>
    /// Represents a database events logger.
    /// </summary>
    public interface IEventLogger
    {
        /// <summary>
        /// Occurs when a new machine event has been logged.
        /// </summary>
        event EventHandler<MachinesEvent> NewLog;

        /// <summary>
        /// Logs the specified machine event.
        /// </summary>
        /// <param name="machineEvent">The machine event.</param>
        void Log(MachinesEvent machineEvent);

        /// <summary>
        /// Logs the specified event type.
        /// </summary>
        /// <param name="eventType">Type of the event.</param>
        /// <param name="message">The message.</param>
        void Log(EventTypes eventType, String message, bool write_to_db = true);

        /// <summary>
        /// Logs the specified hardware event.
        /// </summary>
        /// <param name="hardwareEvent">The hardware event.</param>
        void Log(Event hardwareEvent);

        /// <summary>
        /// Logs the specified exception using the <see cref="EventTypes.ApplicationException"/>.
        /// </summary>
        /// <param name="exception">The exception.</param>
        void Log(Exception exception);

        /// <summary>
        /// Logs the specified exception using the <see cref="EventTypes.ApplicationException"/>.
        /// </summary>
        /// <param name="exception">The exception.</param>
        void Log(Exception exception, String description);

        /// <summary>
        /// Logs the specified message using the <see cref="EventTypes.ApplicationInformation"/>.
        /// </summary>
        /// <param name="message">The message.</param>
        void Log(String message);

        /// <summary>
        /// Immediately saves all pending events to database.
        /// </summary>
        void FlushAll();
    }
}
lass="w"> HandleCloseEntityViewMessage(CloseEntityEditViewMessage message) { IsEditViewOpen = false; } private void HandleOpenEntityViewMessage(OpenEntityEditViewMessage message) { Type viewType = typeof(MainDBView).Assembly.GetType(typeof(OrganizationView).Namespace + "." + message.EntityType.Name + "View"); presenter.DataContext = message.Context; var view = Activator.CreateInstance(viewType) as FrameworkElement; view.DataContext = message.Context; grid.DataContext = message.Context; presenter.Content = view; icon.Kind = (message.DialogOpenMode == DialogOpenMode.Editing ? PackIconKind.TableEdit : PackIconKind.Plus); txtTitle.Text = (message.DialogOpenMode == DialogOpenMode.Editing ? "Edit " : "Add New ") + (message.EntityType.Name.Length < 5 ? message.EntityType.Name.ToUpper() : message.EntityType.Name).ToTitle(); IsEditViewOpen = true; } private void Thumb_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) { if (double.IsNaN(grid.Width)) { grid.Width = grid.ActualWidth; } if (grid.Width + -e.HorizontalChange > 100) { grid.Width += -e.HorizontalChange; } } } }