public void RequestStartInterval(PluginManager.Plugin caller, PluginBase.IntervalType type) { var current = getInterval(_currentIntervalId); if (current != null) { if (current.State != PluginBase.StateChangeType.End) { return; } } if (type == PluginBase.IntervalType.Focus) { if (String.IsNullOrEmpty(_nextName)) { _nextName = "[name not set]"; } if (_nextTask == null) { _nextTask = ""; } beginFocusInterval(_nextName, _nextTask, DateTime.Now); } else { beginRestInterval(DateTime.Now); } }
public void RequestModifyIntervalState(PluginManager.Plugin caller, string id, PluginBase.StateChangeType state) { // Can't change state of old intervals if (id != _currentIntervalId) { return; } Interval current = getInterval(_currentIntervalId); if (current.State == PluginBase.StateChangeType.End) { return; } if (current.State == state) { return; } switch (state) { case PluginBase.StateChangeType.Unpause: if (current.State != PluginBase.StateChangeType.Pause) { return; } current.State = PluginBase.StateChangeType.Start; broadcastStateChange(current, PluginBase.StateChangeType.Unpause, DateTime.Now); break; case PluginBase.StateChangeType.Pause: if (current.State != PluginBase.StateChangeType.Start) { return; } current.State = PluginBase.StateChangeType.Pause; broadcastStateChange(current, PluginBase.StateChangeType.Pause, DateTime.Now); break; case PluginBase.StateChangeType.End: endInterval(current, true); break; case PluginBase.StateChangeType.Start: // Invalid break; default: // Shouldn't happen! break; } }
public IReadOnlyDictionary <string, string> GetSettings(PluginManager.Plugin source) { var kvps = doSqlQueryDictionary(settingsTable, source.Source); if (kvps == null) { return(EmptySettings); } else { return(new System.Collections.ObjectModel.ReadOnlyDictionary <string, string>(kvps)); } }
public string LastVersion(PluginManager.Plugin source) { if (_lastVersions.ContainsKey(source.Source)) { return(_lastVersions[source.Source]); } string result = doSqlQueryValue(versionTable, source.Source, versionColumn, true); if (result != null) { _lastVersions[source.Source] = result; } return(result); }
public void RequestSetTaskName(PluginManager.Plugin caller, string name, string id = null) { if (id == null) { _nextTask = name; } var modify = getInterval(id); if (modify == null) { return; } modify.Task = name; broadcastPropertyChange(modify); }
public string RetrieveBlob(PluginManager.Plugin source, string key) { return(doSqlQueryValue(blobTable, source.Source, key, false)); }
public void StoreBlob(PluginManager.Plugin source, string key, string blob, bool secure) { storeLastVersion(source.Source, source.Version); storeBlob(source.Source, key, blob, secure); }
public void StoreSetting(PluginManager.Plugin source, string key, string value) { storeLastVersion(source.Source, source.Version); storeSetting(source.Source, key, value); }
public void ReportError(PluginManager.Plugin caller, string message, PluginBase.ErrorSeverity severity = PluginBase.ErrorSeverity.Major) { // TODO }
public void LogMessage(PluginManager.Plugin caller, string message, PluginBase.LogLevel level = PluginBase.LogLevel.Info) { // TODO }