private void CreateNewServiceItem_Click(object sender, EventArgs e) { ToolStripMenuItem menuItem = (ToolStripMenuItem)sender; PluginServiceSetting setting = (PluginServiceSetting)menuItem.Tag; PluginService pluginService = new PluginService(); pluginService.Name = setting.Name; pluginService.IsActive = true; pluginService.ServiceInterface = "Recorder"; pluginService.ServiceUrl = String.Format(CultureInfo.InvariantCulture, "http://localhost:{0}/ArgusTV/Recorder", setting.TcpPort); _servicesBindingSource.Add(pluginService); _servicesDataGridView.CurrentCell = _servicesDataGridView.Rows[_servicesDataGridView.Rows.Count - 1].Cells[1]; _servicesDataGridView.BeginEdit(true); }
/// <summary> /// Ask ARGUS TV to test the connection to a recorder by pinging it. /// </summary> /// <param name="pluginService">The plugin service to ping.</param> public async Task PingPluginService(PluginService pluginService) { var request = NewRequest(HttpMethod.Post, "PingPluginService"); request.AddBody(pluginService); await ExecuteAsync(request).ConfigureAwait(false); }
/// <summary> /// Check if the ARGUS TV service has the needed access rights on the recording shares of the given pluginService. /// </summary> /// <param name="pluginService">The pluginService.</param> /// <returns>A list of RecordingShareAccessibilityInfos.</returns> public async Task<List<RecordingShareAccessibilityInfo>> AreRecordingSharesAccessible(PluginService pluginService) { var request = NewRequest(HttpMethod.Post, "AreRecordingSharesAccessible"); request.AddBody(pluginService); return await ExecuteAsync<List<RecordingShareAccessibilityInfo>>(request).ConfigureAwait(false); }
/// <summary> /// Save a new or modified plugin service. A new plugin service is recognized by a Guid.Empty ID. /// </summary> /// <param name="pluginService">The plugin service to save.</param> /// <returns>The saved plugin service.</returns> public async Task<PluginService> SavePluginService(PluginService pluginService) { var request = NewRequest(HttpMethod.Post, "SavePluginService"); request.AddBody(pluginService); return await ExecuteAsync<PluginService>(request).ConfigureAwait(false); }