private void sendUsernameUnit_Finished(AsciiProtocolUnit unit) { AsciiSendLineGetLineUnit sendUsernameUnit = (AsciiSendLineGetLineUnit)unit; if (sendUsernameUnit.LineSent) { _responseLine = sendUsernameUnit.ResponseLine; if (_responseLine != null) { if (_responseLine.StartsWith("381")) // password required { AsciiSendLineGetLineUnit sendPasswordUnit = new AsciiSendLineGetLineUnit("authinfo pass " + _password); sendPasswordUnit.Finished += new AsciiProtocolUnitDelegate(sendPasswordUnit_Finished); StartUnit(sendPasswordUnit, _connection); return; } if (_responseLine.StartsWith("281")) // password not required (wonder if this can occur) { _succeeded = true; } } } FireFinished(); }
private void downloadHeadersSetGroupUnit_Finished(AsciiProtocolUnit unit) { NntpSetGroupUnit setGroupUnit = (NntpSetGroupUnit)unit; string response = setGroupUnit.ResponseLine; if (response != null) { while (response.StartsWith("211")) { string[] parts = response.Split(' '); _firstArticleCopy = _firstArticle = Int32.Parse(parts[2]); _lastArticle = Int32.Parse(parts[3]); SetArticleNumbersRange(ref _firstArticle, ref _lastArticle); if (_lastArticle == 0 || _lastArticle < _firstArticle) { break; } _getHeadersUnit = new AsciiSendLineAndApplyMethodUnit( "xover " + _firstArticle + '-' + _lastArticle, ".\r\n", new LineDelegate(ProcessHeadersLine)); _getHeadersUnit.Finished += new AsciiProtocolUnitDelegate(getHeadersUnit_Finished); StartUnit(_getHeadersUnit, _connection); return; } } FireFinished(); }
private void getHeadersUnit_Finished(AsciiProtocolUnit unit) { if (_getHeadersUnit.LineSent) { SetGroupNumbers(); } _getHeadersUnit = null; FireFinished(); }
private void AuthenticateFinished(AsciiProtocolUnit unit) { NntpAuthenticateUnit authenticateUnit = (NntpAuthenticateUnit)unit; if (!authenticateUnit.Succeeded) { SetError(authenticateUnit.ResponseLine); } }
private void ConnectFinished(AsciiProtocolUnit unit) { AsciiConnectAndGetServerPromptUnit connectUnit = (AsciiConnectAndGetServerPromptUnit)unit; _serverPrompt = connectUnit.ServerPrompt; _state = (connectUnit.Connected) ? NntpConnectionState.Connected : NntpConnectionState.NotConnected; if (_state == NntpConnectionState.NotConnected) { SetError(_serverPrompt); } }
private void sendPasswordUnit_Finished(AsciiProtocolUnit unit) { AsciiSendLineGetLineUnit sendPasswordUnit = (AsciiSendLineGetLineUnit)unit; if (sendPasswordUnit.LineSent) { _responseLine = sendPasswordUnit.ResponseLine; if (_responseLine != null && _responseLine.StartsWith("281")) { _succeeded = true; } } FireFinished(); }
private void setGroupUnit_Finished(AsciiProtocolUnit unit) { NntpSetGroupUnit setGroupUnit = (NntpSetGroupUnit)unit; string response = setGroupUnit.ResponseLine; if (response == null || !response.StartsWith("211")) { FireFinished(); } else { GetArticleById(); } }
private void postUnit_Finished(AsciiProtocolUnit unit) { AsciiSendLineGetLineUnit postUnit = (AsciiSendLineGetLineUnit)unit; string response = postUnit.ResponseLine; if (!postUnit.LineSent || response == null || !response.StartsWith("240")) { ExtractError(response); FireFinished(); } else { _error = null; FireFinished(); } }
private void initPostUnit_Finished(AsciiProtocolUnit unit) { AsciiSendLineGetLineUnit initPostUnit = (AsciiSendLineGetLineUnit)unit; string response = initPostUnit.ResponseLine; if (!initPostUnit.LineSent || (response != null && !response.StartsWith("340"))) { ExtractError(response); FireFinished(); } else { AsciiSendLineGetLineUnit postUnit = new AsciiSendLineGetLineUnit(_nntpBody); postUnit.Finished += new AsciiProtocolUnitDelegate(postUnit_Finished); StartUnit(postUnit, _connection); } }
private void setGroupUnit_Finished(AsciiProtocolUnit unit) { NntpSetGroupUnit setGroupUnit = (NntpSetGroupUnit)unit; string response = setGroupUnit.ResponseLine; if (response == null || !response.StartsWith("211")) { StartNextGroup(); } else { _emptyArticles = _group.Resource.GetLinksTo(null, NntpPlugin._propTo); _emptyArticles = _emptyArticles.Intersect( Core.ResourceStore.FindResourcesWithProp(null, NntpPlugin._propHasNoBody), true); _emptyArticles.Sort("Date", false); _articleIndex = 0; StartNextArticle(); } }
private void setGroupUnit_Finished(AsciiProtocolUnit unit) { AsciiSendLineGetLineUnit setGroupUnit = (AsciiSendLineGetLineUnit)unit; _responseLine = setGroupUnit.ResponseLine; string error = null; if (_responseLine == null) { if (_connection.LastSocketException != null) { error = _connection.LastSocketException.Message; } else { error = "Newsgroup could not be processed"; } } else if (!_responseLine.StartsWith("211")) { if (_responseLine.Length > 4) { error = _responseLine.Substring(4); } else { error = "Newsgroup could not be processed"; } } ResourceProxy proxy = new ResourceProxy(_group.Resource); if (error != null) { proxy.SetPropAsync(Core.Props.LastError, error); } else { proxy.DeletePropAsync(Core.Props.LastError); } FireFinished(); }
private void getArticleUnit_Finished(AsciiProtocolUnit unit) { if (_articleAvailable) { IAsyncProcessor ap = Core.ResourceAP; if (_group == null) { ap.RunUniqueJob("Creating news article", new CreateArticleByProtocolHandlerDelegate(NewsArticleParser.CreateArticleByProtocolHandler), _lines.ToArray(typeof(string)), _article); } else { ap.QueueJob(_priority, "Creating news article", new CreateArticleDelegate(NewsArticleParser.CreateArticle), _lines.ToArray(typeof(string)), _group, _articleId); } } _getArticleUnit = null; FireFinished(); }
private void group_Finished(AsciiProtocolUnit unit) { StartNextGroup(); }
private void enumGroupsUnit_Finished(AsciiProtocolUnit unit) { _serverResource.LastUpdateTime = _startUpdateDate; _enumGroupsUnit = null; FireFinished(); }
private void downloadArticleUnit_Finished(AsciiProtocolUnit unit) { StartNextArticle(); }
private static void postUnit_Finished(AsciiProtocolUnit unit) { NntpPostArticleUnit postUnit = (NntpPostArticleUnit)unit; ArticlePostedOrFailed(postUnit.DraftArticle); }