public DoubleProvider(IProviderBase <R, W> readerProvider, IProviderBase <R, W> writerProvider, IMediator <R, W> mediator) { this.readerProvider = readerProvider; this.writerProvider = writerProvider; this.mediator = mediator; this.mediator.ReaderProvider = readerProvider; this.mediator.WriterProvider = writerProvider; }
public R ForwardData(T data, IProviderBase <T, R> provider) { bool flag = provider == (ProviderBase <T, R>) this._readerProvider; R result; if (flag) { result = this._writerProvider.ProcessData(data); } else { result = this._readerProvider.ProcessData(data); } return(result); }
public static async Task <List <RemoteSearchResult> > GetSearchResultsFromUpdate(IProviderBase provider, int[] siteNum, string[] sceneID, DateTime?searchDate, CancellationToken cancellationToken) { var result = new List <RemoteSearchResult>(); var sceneData = await provider.Update(siteNum, sceneID, cancellationToken).ConfigureAwait(false); if (!string.IsNullOrEmpty(sceneData.Item.Name)) { sceneData.Item.ProviderIds[Plugin.Instance.Name] = string.Join("#", sceneID); var posters = (await provider.GetImages(siteNum, sceneID, sceneData.Item, cancellationToken).ConfigureAwait(false)).Where(o => o.Type == ImageType.Primary); var res = new RemoteSearchResult { ProviderIds = sceneData.Item.ProviderIds, Name = sceneData.Item.Name, PremiereDate = sceneData.Item.PremiereDate, }; if (searchDate.HasValue && !res.PremiereDate.HasValue) { res.PremiereDate = searchDate.Value; } if (!string.IsNullOrEmpty(sceneData.Item.OriginalTitle)) { res.Name = $"{sceneData.Item.OriginalTitle} {sceneData.Item.Name}"; } if (posters.Any()) { res.ImageUrl = posters.First().Url; } result.Add(res); } return(result); }
public static async Task <List <RemoteSearchResult> > GetSearchResultsFromUpdate(IProviderBase provider, int[] siteNum, string[] sceneID, CancellationToken cancellationToken) { var result = new List <RemoteSearchResult>(); var curID = new List <string>() { siteNum[0].ToString(CultureInfo.InvariantCulture), siteNum[1].ToString(CultureInfo.InvariantCulture), }; curID.AddRange(sceneID); var sceneData = await provider.Update(siteNum, sceneID, cancellationToken).ConfigureAwait(false); if (!string.IsNullOrEmpty(sceneData.Item.Name)) { sceneData.Item.ProviderIds.Add(Plugin.Instance.Name, string.Join("#", curID)); var posters = (await provider.GetImages(siteNum, sceneID, sceneData.Item, cancellationToken).ConfigureAwait(false)).Where(o => o.Type == ImageType.Primary); var res = new RemoteSearchResult { ProviderIds = sceneData.Item.ProviderIds, Name = sceneData.Item.Name, PremiereDate = sceneData.Item.PremiereDate, }; if (!string.IsNullOrEmpty(sceneData.Item.OriginalTitle)) { res.Name = $"{sceneData.Item.OriginalTitle} {sceneData.Item.Name}"; } if (posters.Any()) { res.ImageUrl = posters.First().Url; } result.Add(res); } return(result); }
public AnaysleService() { DataProvider = new ProviderWithDB(); }
public ProviderService(IProviderBase providerBase) { this.providerBase = providerBase; }
private void textBox3_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { if (!checkBox1.Checked) { IProviderBase provider = _providers.Where(p => p == comboBox1.SelectedValue).FirstOrDefault(); try { textBox2.Text = TableFromVerb(provider.GetConjugation(textBox3.Text.Trim())); } catch (Exception ex) { string temp = string.Empty; foreach (var key in ex.Data.Keys) { temp += $"{key}:{ex.Data[key]}"; } textBox2.Text = string.Format($"{ex.Message}=\r\n{ex.StackTrace}\r\n\r\n\r\n{temp}"); ////textBox2.Text = string.Format($"{ex.Message}\r\n{ex.StackTrace}\r\n{ex.Data}" ); } } else { foreach (IProviderBase provider in _providers) { string verbTable = string.Empty; try { verbTable = TableFromVerb(provider.GetConjugation(textBox3.Text.Trim())); } catch (Exception ex) { string temp = string.Empty; foreach (var key in ex.Data.Keys) { temp += $"{key}:{ex.Data[key]}"; } textBox2.Text = string.Format($"{ex.Message}=\r\n{ex.StackTrace}\r\n{temp}"); ////textBox2.Text = string.Format($"{ex.Message}\r\n{ex.StackTrace}\r\n{ex.Data}"); } if (!string.IsNullOrEmpty(verbTable)) { textBox2.Text = verbTable; break; } } } textBox3.Text = string.Empty; } if (e.Control && e.KeyCode == Keys.A) { textBox3.SelectAll(); e.Handled = true; e.SuppressKeyPress = true; } }