Ejemplo n.º 1
0
 /// <summary>
 /// Fires the <see cref="InstanceStatusChanged"/> event.
 /// </summary>
 /// <param name="instance">MySQL instance with a changed status.</param>
 /// <param name="oldInstanceStatus">Old instance status.</param>
 protected virtual void OnInstanceStatusChanged(MySqlInstance instance, MySqlWorkbenchConnection.ConnectionStatusType oldInstanceStatus)
 {
     if (InstanceStatusChanged != null)
     {
         InstanceStatusChanged(this, new InstanceStatusChangedArgs(instance, oldInstanceStatus));
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Checks if this instance can connect to its corresponding MySQL Server instance with its Workbench connection.
        /// </summary>
        /// <param name="asynchronous">Flag indicating if the status check is run asynchronously or synchronously.</param>
        public void CheckInstanceStatus(bool asynchronous)
        {
            _secondsToMonitorInstance = MonitoringIntervalInSeconds;

            if (WorkbenchConnection == null || InstanceStatusCheckInProgress)
            {
                return;
            }

            InstanceStatusCheckInProgress = true;
            _oldInstanceStatus            = ConnectionStatus;

            if (asynchronous)
            {
                SetupInstanceStatusCheckBackgroundWorker();
                _worker.RunWorkerAsync();
            }
            else
            {
                Cursor.Current = Cursors.WaitCursor;
                CheckInstanceStatusWorkerDoWork(this, new DoWorkEventArgs(null));
                CheckInstanceStatusWorkerCompleted(this, new RunWorkerCompletedEventArgs(null, null, false));
                Cursor.Current = Cursors.Default;
            }
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MySqlInstance"/> class.
 /// </summary>
 public MySqlInstance()
 {
     _workbenchConnectionId           = string.Empty;
     _monitoringInterval              = DEFAULT_MONITORING_INTERVAL;
     _monitoringIntervalUnitOfMeasure = DEFAULT_MONITORING_UOM;
     _monitorAndNotifyStatus          = true;
     _relatedConnections              = null;
     _oldInstanceStatus            = MySqlWorkbenchConnection.ConnectionStatusType.Unknown;
     _updateTrayIconOnStatusChange = true;
     _workbenchConnection          = null;
     _worker = null;
     InstanceStatusCheckInProgress = false;
     MenuGroup                = null;
     RefreshingStatus         = false;
     SecondsToMonitorInstance = MonitoringIntervalInSeconds;
     InstanceId               = Guid.NewGuid().ToString("B");
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="InstanceStatusChangedArgs"/> class.
 /// </summary>
 /// <param name="instance">MySQL instance whose status changed.</param>
 /// <param name="oldInstanceStatus">Old instance status.</param>
 public InstanceStatusChangedArgs(MySqlInstance instance, MySqlWorkbenchConnection.ConnectionStatusType oldInstanceStatus)
 {
     Instance          = instance;
     OldInstanceStatus = oldInstanceStatus;
 }