You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by be...@apache.org on 2008/04/22 09:23:21 UTC
svn commit: r650398 - in /labs/vysper/src:
main/java/org/apache/vysper/xmpp/protocol/
main/java/org/apache/vysper/xmpp/protocol/worker/
test/java/org/apache/vysper/xmpp/protocol/
Author: berndf
Date: Tue Apr 22 00:23:11 2008
New Revision: 650398
URL: http://svn.apache.org/viewvc?rev=650398&view=rev
Log:
[vysper] return unsupported-stanza error instead of more general bad-format
Modified:
labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/AuthenticatedProtocolWorker.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/EncryptedProtocolWorker.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/InitiatedProtocolWorker.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/StartedProtocolWorker.java
labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolEncryptionStartedTestCase.java
labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolStateTestCase.java
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java?rev=650398&r1=650397&r2=650398&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java Tue Apr 22 00:23:11 2008
@@ -30,11 +30,11 @@
*/
public class ResponseWriter {
- public void writeStreamNotOpenedError(SessionContext sessionContext) {
+ public void writeUnsupportedStanzaError(SessionContext sessionContext) {
- Stanza errorStanza = ServerErrorResponses.getInstance().getStreamError(StreamErrorCondition.BAD_FORMAT,
+ Stanza errorStanza = ServerErrorResponses.getInstance().getStreamError(StreamErrorCondition.UNSUPPORTED_STANZA_TYPE,
sessionContext.getXMLLang(),
- "could not parse incoming stanza",
+ "service unavailable at this session state",
null);
Stanza streamOpener = new ServerResponses().getStreamOpenerForError(false, sessionContext.getServerJID(), XMPPVersion.VERSION_1_0, errorStanza);
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/AuthenticatedProtocolWorker.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/AuthenticatedProtocolWorker.java?rev=650398&r1=650397&r2=650398&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/AuthenticatedProtocolWorker.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/AuthenticatedProtocolWorker.java Tue Apr 22 00:23:11 2008
@@ -32,7 +32,7 @@
protected boolean checkState(SessionContext sessionContext, SessionStateHolder sessionStateHolder, Stanza stanza, StanzaHandler stanzaHandler, ResponseWriter responseWriter) {
if (stanzaHandler instanceof StreamStartHandler) return true;
if (stanzaHandler.verify(stanza)) return true;
- responseWriter.writeStreamNotOpenedError(sessionContext);
+ responseWriter.writeUnsupportedStanzaError(sessionContext);
return false;
}
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/EncryptedProtocolWorker.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/EncryptedProtocolWorker.java?rev=650398&r1=650397&r2=650398&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/EncryptedProtocolWorker.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/EncryptedProtocolWorker.java Tue Apr 22 00:23:11 2008
@@ -37,7 +37,7 @@
protected boolean checkState(SessionContext sessionContext, SessionStateHolder sessionStateHolder, Stanza stanza, StanzaHandler stanzaHandler, ResponseWriter responseWriter) {
if (stanzaHandler instanceof StreamStartHandler) return true;
if (stanzaHandler instanceof AuthHandler) return true;
- responseWriter.writeStreamNotOpenedError(sessionContext);
+ responseWriter.writeUnsupportedStanzaError(sessionContext);
return false;
}
}
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/InitiatedProtocolWorker.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/InitiatedProtocolWorker.java?rev=650398&r1=650397&r2=650398&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/InitiatedProtocolWorker.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/InitiatedProtocolWorker.java Tue Apr 22 00:23:11 2008
@@ -37,7 +37,7 @@
protected boolean checkState(SessionContext sessionContext, SessionStateHolder sessionStateHolder, Stanza stanza, StanzaHandler stanzaHandler, ResponseWriter responseWriter) {
if (stanzaHandler instanceof XMLPrologHandler) return true;
if (stanzaHandler instanceof StreamStartHandler) return true;
- responseWriter.writeStreamNotOpenedError(sessionContext);
+ responseWriter.writeUnsupportedStanzaError(sessionContext);
return false;
}
}
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/StartedProtocolWorker.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/StartedProtocolWorker.java?rev=650398&r1=650397&r2=650398&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/StartedProtocolWorker.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/protocol/worker/StartedProtocolWorker.java Tue Apr 22 00:23:11 2008
@@ -35,7 +35,7 @@
protected boolean checkState(SessionContext sessionContext, SessionStateHolder sessionStateHolder, Stanza stanza, StanzaHandler stanzaHandler, ResponseWriter responseWriter) {
if (stanzaHandler instanceof StartTLSHandler) return true;
- responseWriter.writeStreamNotOpenedError(sessionContext); // TODO remove this temporary solution
+ responseWriter.writeUnsupportedStanzaError(sessionContext);
return false;
}
}
Modified: labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolEncryptionStartedTestCase.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolEncryptionStartedTestCase.java?rev=650398&r1=650397&r2=650398&view=diff
==============================================================================
--- labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolEncryptionStartedTestCase.java (original)
+++ labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolEncryptionStartedTestCase.java Tue Apr 22 00:23:11 2008
@@ -33,7 +33,12 @@
}
public void testDontAcceptArbitraryStanzaWhileNotAuthenticated() {
- skeleton_testDontAcceptArbitraryStanzaWhileNotAuthenticated();
+ try {
+ skeleton_testDontAcceptArbitraryStanzaWhileNotAuthenticated();
+ fail();
+ } catch (RuntimeException e) {
+ // worker is not implemented
+ }
}
Modified: labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolStateTestCase.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolStateTestCase.java?rev=650398&r1=650397&r2=650398&view=diff
==============================================================================
--- labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolStateTestCase.java (original)
+++ labs/vysper/src/test/java/org/apache/vysper/xmpp/protocol/ProtocolStateTestCase.java Tue Apr 22 00:23:11 2008
@@ -98,7 +98,13 @@
protocolWorker.processStanza(sessionContext, stanzaBuilder.getFinalStanza(), sessionStateHolder);
Stanza response = sessionContext.getRecordedResponse();
+
XMLElementVerifier responseVerifier = response.getVerifier();
+ // error might be wrapped within a stream opener
+ if (responseVerifier.nameEquals("stream")) {
+ responseVerifier = response.getFirstInnerElement().getVerifier();
+ }
+
assertTrue(responseVerifier.nameEquals("error"));
assertTrue("error", responseVerifier.subElementPresent(StreamErrorCondition.UNSUPPORTED_STANZA_TYPE.value()));
assertTrue(sessionContext.isClosed());
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org