This is an automated email from the ASF dual-hosted git repository. ralaoui pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/mina-vysper.git
The following commit(s) were added to refs/heads/master by this push: new e843cb2 Remove ResponseStanzaContainer e843cb2 is described below commit e843cb2eaed107883cc15740a81d743ad449fe5c Author: Réda Housni Alaoui <reda.housniala...@gmail.com> AuthorDate: Sun Sep 1 11:58:27 2019 +0200 Remove ResponseStanzaContainer --- .../modules/core/sasl/handler/AbortHandler.java | 4 +- .../handler/DiscoInfoIQHandler.java | 4 +- .../xmpp/protocol/ResponseStanzaContainer.java | 45 -------------- .../xmpp/protocol/ResponseStanzaContainerImpl.java | 69 ---------------------- .../vysper/xmpp/protocol/ResponseWriter.java | 24 ++------ .../worker/InboundStanzaProtocolWorker.java | 3 - .../core/bind/handler/BindIQHandlerTestCase.java | 8 +-- .../PresenceAvailInitialOutHandlerTestCase.java | 7 +-- .../SoftwareVersionIQHandlerTestCase.java | 3 +- .../EntityTimeIQHandlerTestCase.java | 3 +- .../EntityTimeXEP0090IQHandlerTestCase.java | 3 +- .../handler/DiscoInfoIQHandlerTestCase.java | 35 +++++------ .../handler/ExtendedDiscoInfoTestCase.java | 12 ++-- .../protocol/CallTestStanzaHandlerResponse.java | 6 +- .../AbstractMUCOccupantDiscoTestCase.java | 1 - .../PubSubRetrieveAffiliationsTestCase.java | 1 - .../xep0065_socks/Socks5IqHandlerTest.java | 7 +-- 17 files changed, 41 insertions(+), 194 deletions(-) diff --git a/server/core/src/main/java/org/apache/vysper/xmpp/modules/core/sasl/handler/AbortHandler.java b/server/core/src/main/java/org/apache/vysper/xmpp/modules/core/sasl/handler/AbortHandler.java index 0997036..e047440 100644 --- a/server/core/src/main/java/org/apache/vysper/xmpp/modules/core/sasl/handler/AbortHandler.java +++ b/server/core/src/main/java/org/apache/vysper/xmpp/modules/core/sasl/handler/AbortHandler.java @@ -20,7 +20,6 @@ package org.apache.vysper.xmpp.modules.core.sasl.handler; import org.apache.vysper.xmpp.modules.core.sasl.AuthorizationRetriesCounter; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.protocol.SessionStateHolder; import org.apache.vysper.xmpp.server.SessionContext; import org.apache.vysper.xmpp.server.response.ServerResponses; @@ -40,8 +39,7 @@ public class AbortHandler extends AbstractSASLHandler { } @Override - public Stanza executeWorker(Stanza stanza, SessionContext sessionContext, - SessionStateHolder sessionStateHolder) { + public Stanza executeWorker(Stanza stanza, SessionContext sessionContext, SessionStateHolder sessionStateHolder) { AuthorizationRetriesCounter counter = AuthorizationRetriesCounter.getFromSession(sessionContext); boolean moreTriesLeft = counter.countFailedTry(); // record that client aborted diff --git a/server/core/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java b/server/core/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java index 639cf07..da6bfd5 100644 --- a/server/core/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java +++ b/server/core/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java @@ -131,7 +131,7 @@ public class DiscoInfoIQHandler extends DefaultIQHandler { // IQ-error or an IQ-result" if (to.isResourceSet()) { relayOrWrite(stanza, sessionContext, stanzaBroker); - return null; + return Collections.emptyList(); } else { elements = serviceCollector.processInfoRequest(new InfoRequest(from, to, node, stanza.getID())); } @@ -171,7 +171,7 @@ public class DiscoInfoIQHandler extends DefaultIQHandler { if (stanza.getTo().isNodeSet()) { relayOrWrite(stanza, sessionContext, stanzaBroker); - return null; + return Collections.emptyList(); } else { return super.handleResult(stanza, serverRuntimeContext, sessionContext, stanzaBroker); } diff --git a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseStanzaContainer.java b/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseStanzaContainer.java deleted file mode 100644 index 234ed39..0000000 --- a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseStanzaContainer.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -package org.apache.vysper.xmpp.protocol; - -import java.util.List; - -import org.apache.vysper.xmpp.stanza.Stanza; - -/** - * used to carry a response stanza - * - * @author The Apache MINA Project (d...@mina.apache.org) - */ -public interface ResponseStanzaContainer { - - List<Stanza> getResponseStanzas(); - - /** - * @return If there is exactly one response, the unique response. If there is no - * response it will return null. If there is more than one response, it - * will throw an exception. - */ - Stanza getUniqueResponseStanza(); - - boolean hasResponse(); - - boolean hasNoResponse(); -} diff --git a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseStanzaContainerImpl.java b/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseStanzaContainerImpl.java deleted file mode 100644 index 1fdad72..0000000 --- a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseStanzaContainerImpl.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -package org.apache.vysper.xmpp.protocol; - -import static java.util.Optional.ofNullable; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Objects; -import java.util.stream.Collectors; - -import org.apache.vysper.xmpp.stanza.Stanza; - -/** - * - * @author The Apache MINA Project (d...@mina.apache.org) - */ -public class ResponseStanzaContainerImpl implements ResponseStanzaContainer { - private final List<Stanza> responses; - - public ResponseStanzaContainerImpl(Stanza stanza) { - this(Collections.singletonList(stanza)); - } - - public ResponseStanzaContainerImpl(List<Stanza> stanzas) { - this.responses = ofNullable(stanzas).orElse(Collections.emptyList()).stream().filter(Objects::nonNull) - .collect(Collectors.toList()); - } - - @Override - public List<Stanza> getResponseStanzas() { - return new ArrayList<>(responses); - } - - @Override - public Stanza getUniqueResponseStanza() { - if (responses.size() > 1) { - throw new IllegalStateException("Found more than one response"); - } - return responses.stream().findFirst().orElse(null); - } - - public boolean hasResponse() { - return !responses.isEmpty(); - } - - public boolean hasNoResponse() { - return !hasResponse(); - } - -} diff --git a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java b/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java index 408c80d..14ba14c 100644 --- a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java +++ b/server/core/src/main/java/org/apache/vysper/xmpp/protocol/ResponseWriter.java @@ -39,9 +39,8 @@ public class ResponseWriter { public static void writeUnsupportedStanzaError(SessionContext sessionContext) { - Stanza errorStanza = ServerErrorResponses.getStreamError( - StreamErrorCondition.UNSUPPORTED_STANZA_TYPE, sessionContext.getXMLLang(), - "service unavailable at this session state", null); + Stanza errorStanza = ServerErrorResponses.getStreamError(StreamErrorCondition.UNSUPPORTED_STANZA_TYPE, + sessionContext.getXMLLang(), "service unavailable at this session state", null); Stanza streamOpener = new ServerResponses().getStreamOpenerForError(false, sessionContext.getServerJID(), XMPPVersion.VERSION_1_0, errorStanza); @@ -49,19 +48,7 @@ public class ResponseWriter { } /** - * writes a response in this context from the given emmitter - * @param sessionContext - * @param responseStanzaContainer - */ - public static void writeResponse(SessionContext sessionContext, ResponseStanzaContainer responseStanzaContainer) { - responseStanzaContainer.getResponseStanzas() - .forEach(stanza -> writeResponse(sessionContext, stanza)); - } - - /** * writes a response in this context - * @param sessionContext - * @param responseStanza */ public static void writeResponse(SessionContext sessionContext, Stanza responseStanza) { sessionContext.getResponseWriter().write(responseStanza); @@ -81,9 +68,8 @@ public class ResponseWriter { } public void handleUnsupportedStanzaType(SessionContext sessionContext, Stanza receivedStanza) { - Stanza errorStanza = ServerErrorResponses.getStreamError( - StreamErrorCondition.UNSUPPORTED_STANZA_TYPE, sessionContext.getXMLLang(), - "could not process incoming stanza", receivedStanza); + Stanza errorStanza = ServerErrorResponses.getStreamError(StreamErrorCondition.UNSUPPORTED_STANZA_TYPE, + sessionContext.getXMLLang(), "could not process incoming stanza", receivedStanza); writeErrorAndClose(sessionContext, errorStanza); } @@ -107,7 +93,7 @@ public class ResponseWriter { } public void handleParsingException(SessionContext sessionContext, ParsingException e) { - //TODO write the __right__ error response, not bad-format default only + // TODO write the __right__ error response, not bad-format default only if (e.getErrorCondition() != ParsingErrorCondition.BAD_FORMAT) throw new RuntimeException("cannot handle this error condition yet"); Stanza errorStanza = ServerErrorResponses.getStreamError(StreamErrorCondition.BAD_FORMAT, diff --git a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/worker/InboundStanzaProtocolWorker.java b/server/core/src/main/java/org/apache/vysper/xmpp/protocol/worker/InboundStanzaProtocolWorker.java index 0699de4..a01e62f 100644 --- a/server/core/src/main/java/org/apache/vysper/xmpp/protocol/worker/InboundStanzaProtocolWorker.java +++ b/server/core/src/main/java/org/apache/vysper/xmpp/protocol/worker/InboundStanzaProtocolWorker.java @@ -19,10 +19,7 @@ */ package org.apache.vysper.xmpp.protocol.worker; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainer; -import org.apache.vysper.xmpp.protocol.ResponseWriter; import org.apache.vysper.xmpp.protocol.StanzaHandlerExecutorFactory; -import org.apache.vysper.xmpp.server.SessionContext; import org.apache.vysper.xmpp.server.SessionState; /** diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/bind/handler/BindIQHandlerTestCase.java b/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/bind/handler/BindIQHandlerTestCase.java index 3bc0f2d..86a6f99 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/bind/handler/BindIQHandlerTestCase.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/bind/handler/BindIQHandlerTestCase.java @@ -25,8 +25,6 @@ import org.apache.vysper.StanzaAssert; import org.apache.vysper.xmpp.addressing.Entity; import org.apache.vysper.xmpp.addressing.EntityImpl; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainer; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.server.ServerRuntimeContext; import org.apache.vysper.xmpp.server.SessionContext; import org.apache.vysper.xmpp.stanza.IQStanza; @@ -140,8 +138,7 @@ public class BindIQHandlerTestCase { .startInnerElement("jid", NamespaceURIs.URN_IETF_PARAMS_XML_NS_XMPP_BIND) .addText(new EntityImpl(FROM, "res").getFullQualifiedName()).build(); - ResponseStanzaContainer responseStanzaContainer = new ResponseStanzaContainerImpl(responses); - StanzaAssert.assertEquals(expectedResponse, responseStanzaContainer.getUniqueResponseStanza()); + StanzaAssert.assertEquals(expectedResponse, responses.get(0)); } @Test @@ -154,8 +151,7 @@ public class BindIQHandlerTestCase { .startInnerElement("error", NamespaceURIs.JABBER_CLIENT).addAttribute("type", "cancel") .startInnerElement("not-allowed", NamespaceURIs.URN_IETF_PARAMS_XML_NS_XMPP_STANZAS).build(); - ResponseStanzaContainer responseStanzaContainer = new ResponseStanzaContainerImpl(responses); - StanzaAssert.assertEquals(expectedResponse, responseStanzaContainer.getUniqueResponseStanza()); + StanzaAssert.assertEquals(expectedResponse, responses.get(0)); } } diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailInitialOutHandlerTestCase.java b/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailInitialOutHandlerTestCase.java index 52a5fd6..24938b7 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailInitialOutHandlerTestCase.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailInitialOutHandlerTestCase.java @@ -27,7 +27,6 @@ import java.util.List; import org.apache.vysper.xml.fragment.XMLSemanticError; import org.apache.vysper.xmpp.addressing.EntityFormatException; import org.apache.vysper.xmpp.delivery.StanzaReceiverRelay; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.protocol.SimpleStanzaBroker; import org.apache.vysper.xmpp.stanza.Stanza; import org.apache.vysper.xmpp.stanza.StanzaBuilder; @@ -114,7 +113,7 @@ public class PresenceAvailInitialOutHandlerTestCase extends PresenceHandlerBaseT List<Stanza> stanzas = handler.executeCore(initialPresence, sessionContext.getServerRuntimeContext(), true, sessionContext, new SimpleStanzaBroker(sessionContext.getStanzaRelay(), sessionContext)); - Stanza stanza = new ResponseStanzaContainerImpl(stanzas).getUniqueResponseStanza(); + Stanza stanza = stanzas.get(0); // ... and will give an error: assertEquals("error", stanza.getAttribute("type").getValue()); assertEquals(StanzaErrorCondition.UNKNOWN_SENDER.value(), @@ -129,7 +128,7 @@ public class PresenceAvailInitialOutHandlerTestCase extends PresenceHandlerBaseT // 3 other resources got unbound, remaining one should now be unique stanzas = handler.executeCore(initialPresence, sessionContext.getServerRuntimeContext(), true, sessionContext, new SimpleStanzaBroker(sessionContext.getStanzaRelay(), sessionContext)); - stanza = new ResponseStanzaContainerImpl(stanzas).getUniqueResponseStanza(); + stanza = stanzas.get(0); assertNull(stanza); // no return, esp no error stanza - all the handling is done through relays stanza = initiatingUser.getNextStanza(); assertNull(stanza.getAttribute("type")); @@ -143,7 +142,7 @@ public class PresenceAvailInitialOutHandlerTestCase extends PresenceHandlerBaseT assertTrue(noRemainingBinds); stanzas = handler.executeCore(initialPresence, sessionContext.getServerRuntimeContext(), true, sessionContext, new SimpleStanzaBroker(sessionContext.getStanzaRelay(), sessionContext)); - stanza = new ResponseStanzaContainerImpl(stanzas).getUniqueResponseStanza(); + stanza = stanzas.get(0); assertEquals("error", stanza.getAttribute("type").getValue()); assertEquals(StanzaErrorCondition.UNKNOWN_SENDER.value(), stanza.getSingleInnerElementsNamed("error").getFirstInnerElement().getName()); diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0092_software_version/SoftwareVersionIQHandlerTestCase.java b/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0092_software_version/SoftwareVersionIQHandlerTestCase.java index ddbc55b..0762bdd 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0092_software_version/SoftwareVersionIQHandlerTestCase.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0092_software_version/SoftwareVersionIQHandlerTestCase.java @@ -26,7 +26,6 @@ import org.apache.vysper.xml.fragment.XMLSemanticError; import org.apache.vysper.xmpp.addressing.Entity; import org.apache.vysper.xmpp.addressing.EntityImpl; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.server.ServerRuntimeContext; import org.apache.vysper.xmpp.server.SessionContext; import org.apache.vysper.xmpp.stanza.IQStanza; @@ -131,7 +130,7 @@ public class SoftwareVersionIQHandlerTestCase { @Test public void handleGet() throws BindException, XMLSemanticError { List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, null); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); // <iq xmlns="jabber:client" type="result" id="1"> // <query xmlns="jabber:iq:version"><name>Apache Vysper XMPP Server</name> diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeIQHandlerTestCase.java b/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeIQHandlerTestCase.java index 2730ba2..7a30c92 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeIQHandlerTestCase.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeIQHandlerTestCase.java @@ -27,7 +27,6 @@ import junit.framework.Assert; import org.apache.vysper.xml.fragment.XMLElement; import org.apache.vysper.xml.fragment.XMLSemanticError; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.server.ServerRuntimeContext; import org.apache.vysper.xmpp.server.SessionContext; import org.apache.vysper.xmpp.stanza.IQStanza; @@ -122,7 +121,7 @@ public class EntityTimeIQHandlerTestCase { @Test public void handleGet() throws BindException, XMLSemanticError { List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, null); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Assert.assertNotNull(response); Assert.assertEquals("iq", response.getName()); diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeXEP0090IQHandlerTestCase.java b/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeXEP0090IQHandlerTestCase.java index 722ccc5..a847951 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeXEP0090IQHandlerTestCase.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeXEP0090IQHandlerTestCase.java @@ -27,7 +27,6 @@ import junit.framework.Assert; import org.apache.vysper.xml.fragment.XMLElement; import org.apache.vysper.xml.fragment.XMLSemanticError; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.server.ServerRuntimeContext; import org.apache.vysper.xmpp.server.SessionContext; import org.apache.vysper.xmpp.stanza.IQStanza; @@ -122,7 +121,7 @@ public class EntityTimeXEP0090IQHandlerTestCase { @Test public void handleGet() throws BindException, XMLSemanticError { List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, null); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Assert.assertNotNull(response); Assert.assertEquals("iq", response.getName()); diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandlerTestCase.java b/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandlerTestCase.java index 253588c..39ff493 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandlerTestCase.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandlerTestCase.java @@ -34,7 +34,6 @@ import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoElement; import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoRequest; import org.apache.vysper.xmpp.modules.servicediscovery.management.ServiceDiscoveryRequestException; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.protocol.StanzaBroker; import org.apache.vysper.xmpp.server.ServerRuntimeContext; import org.apache.vysper.xmpp.server.SessionContext; @@ -51,6 +50,8 @@ import org.mockito.Mockito; import junit.framework.Assert; +import static org.junit.Assert.assertTrue; + /** */ public class DiscoInfoIQHandlerTestCase extends Mockito { @@ -172,7 +173,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { when(serviceCollector.processServerInfoRequest(any(InfoRequest.class))).thenReturn(infoElements); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); StanzaAssert.assertEquals(createExpectedResponse(SERVER), response); } @@ -186,7 +187,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { .thenReturn(infoElements); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); StanzaAssert.assertEquals(createExpectedResponse(COMPONENT), response); } @@ -198,7 +199,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { when(serviceCollector.processInfoRequest(any(InfoRequest.class))).thenReturn(infoElements); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); StanzaAssert.assertEquals(createExpectedResponse(USER), response); } @@ -210,9 +211,8 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { IQStanza stanza = createRequest(USER_WITH_RESOURCE); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); - Assert.assertNull(response); + assertTrue(responses.isEmpty()); verify(stanzaBroker).write(eq(USER_WITH_RESOURCE), eq(stanza), any(DeliveryFailureStrategy.class)); } @@ -224,9 +224,8 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { IQStanza stanza = createRequest(USER_WITH_RESOURCE); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); - Assert.assertNull(response); + assertTrue(responses.isEmpty()); verify(stanzaBroker).writeToSession(stanza); } @@ -240,7 +239,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { .thenReturn(infoElements); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = createErrorResponse(COMPONENT, "item-not-found"); @@ -255,7 +254,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { ServiceDiscoveryRequestListenerRegistry.SERVICE_DISCOVERY_REQUEST_LISTENER_REGISTRY)).thenReturn(null); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = createErrorResponse(SERVER, "internal-server-error"); @@ -270,7 +269,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { .thenThrow(new ServiceDiscoveryRequestException(StanzaErrorCondition.INTERNAL_SERVER_ERROR)); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = createErrorResponse(SERVER, "internal-server-error"); @@ -286,7 +285,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { .thenThrow(new ServiceDiscoveryRequestException(StanzaErrorCondition.INTERNAL_SERVER_ERROR)); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = createErrorResponse(COMPONENT, "internal-server-error"); @@ -301,7 +300,7 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { .thenThrow(new ServiceDiscoveryRequestException(StanzaErrorCondition.INTERNAL_SERVER_ERROR)); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = createErrorResponse(SERVER, "internal-server-error"); @@ -315,10 +314,9 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { IQStanza stanza = createRequest(USER, IQStanzaType.RESULT); List<Stanza> responses = handler.handleResult(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); - - Assert.assertNull(response); + assertTrue(responses.isEmpty()); + verify(stanzaBroker).write(eq(USER), eq(stanza), any(DeliveryFailureStrategy.class)); } @@ -329,10 +327,9 @@ public class DiscoInfoIQHandlerTestCase extends Mockito { IQStanza stanza = createRequest(USER, IQStanzaType.RESULT); List<Stanza> responses = handler.handleResult(stanza, serverRuntimeContext, sessionContext, stanzaBroker); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); - - Assert.assertNull(response); + assertTrue(responses.isEmpty()); + verify(stanzaBroker).writeToSession(stanza); } diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/ExtendedDiscoInfoTestCase.java b/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/ExtendedDiscoInfoTestCase.java index 0a41b4d..494291d 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/ExtendedDiscoInfoTestCase.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/ExtendedDiscoInfoTestCase.java @@ -38,8 +38,6 @@ import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoRequest; import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoRequestListener; import org.apache.vysper.xmpp.modules.servicediscovery.management.ServiceDiscoveryRequestException; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainer; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.protocol.SessionStateHolder; import org.apache.vysper.xmpp.protocol.SimpleStanzaBroker; import org.apache.vysper.xmpp.server.DefaultServerRuntimeContext; @@ -78,7 +76,8 @@ public class ExtendedDiscoInfoTestCase extends TestCase { } }); - DefaultServerRuntimeContext runtimeContext = new DefaultServerRuntimeContext(EntityImpl.parse("vysper.org"), mock(StanzaRelay.class)); + DefaultServerRuntimeContext runtimeContext = new DefaultServerRuntimeContext(EntityImpl.parse("vysper.org"), + mock(StanzaRelay.class)); runtimeContext.registerServerRuntimeContextService(serviceCollector); DiscoInfoIQHandler infoIQHandler = new DiscoInfoIQHandler(); @@ -91,13 +90,12 @@ public class ExtendedDiscoInfoTestCase extends TestCase { SessionContext sessionContext = new TestSessionContext(runtimeContext, new SessionStateHolder(), runtimeContext.getStanzaRelay()); - List<Stanza> resultStanza = infoIQHandler.handleGet(finalStanza, runtimeContext, sessionContext, + List<Stanza> resultStanzas = infoIQHandler.handleGet(finalStanza, runtimeContext, sessionContext, new SimpleStanzaBroker(runtimeContext.getStanzaRelay(), sessionContext)); - ResponseStanzaContainer responseStanzaContainer = new ResponseStanzaContainerImpl(resultStanza); - assertTrue(responseStanzaContainer.getUniqueResponseStanza().getVerifier().onlySubelementEquals("query", + assertTrue(resultStanzas.get(0).getVerifier().onlySubelementEquals("query", NamespaceURIs.XEP0030_SERVICE_DISCOVERY_INFO)); - XMLElement queryElement = responseStanzaContainer.getUniqueResponseStanza().getFirstInnerElement(); + XMLElement queryElement = resultStanzas.get(0).getFirstInnerElement(); XMLElementVerifier queryVerifier = queryElement.getVerifier(); assertTrue(queryVerifier.subElementsPresentExact(4)); List<XMLElement> innerElements = queryElement.getInnerElements(); diff --git a/server/core/src/test/java/org/apache/vysper/xmpp/protocol/CallTestStanzaHandlerResponse.java b/server/core/src/test/java/org/apache/vysper/xmpp/protocol/CallTestStanzaHandlerResponse.java index 724c02f..da5a02a 100644 --- a/server/core/src/test/java/org/apache/vysper/xmpp/protocol/CallTestStanzaHandlerResponse.java +++ b/server/core/src/test/java/org/apache/vysper/xmpp/protocol/CallTestStanzaHandlerResponse.java @@ -29,7 +29,7 @@ import org.apache.vysper.xmpp.stanza.Stanza; /** */ -public class CallTestStanzaHandlerResponse extends CallTestStanzaHandler implements ResponseStanzaContainer { +public class CallTestStanzaHandlerResponse extends CallTestStanzaHandler { private Stanza response; public CallTestStanzaHandlerResponse(String name) { @@ -52,7 +52,6 @@ public class CallTestStanzaHandlerResponse extends CallTestStanzaHandler impleme return Collections.singletonList(response); } - @Override public Stanza getUniqueResponseStanza() { return response; } @@ -61,7 +60,4 @@ public class CallTestStanzaHandlerResponse extends CallTestStanzaHandler impleme return response != null; } - public boolean hasNoResponse() { - return !hasResponse(); - } } diff --git a/server/extensions/xep0045-muc/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/AbstractMUCOccupantDiscoTestCase.java b/server/extensions/xep0045-muc/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/AbstractMUCOccupantDiscoTestCase.java index b7f8c35..02f3f6c 100644 --- a/server/extensions/xep0045-muc/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/AbstractMUCOccupantDiscoTestCase.java +++ b/server/extensions/xep0045-muc/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/AbstractMUCOccupantDiscoTestCase.java @@ -26,7 +26,6 @@ import org.apache.vysper.xmpp.modules.extension.xep0045_muc.model.ConferenceTest import org.apache.vysper.xmpp.modules.extension.xep0045_muc.model.Room; import org.apache.vysper.xmpp.modules.servicediscovery.collection.ServiceCollector; import org.apache.vysper.xmpp.protocol.ProtocolException; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainer; import org.apache.vysper.xmpp.protocol.SimpleStanzaBroker; import org.apache.vysper.xmpp.stanza.IQStanzaType; import org.apache.vysper.xmpp.stanza.Stanza; diff --git a/server/extensions/xep0060-pubsub/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubRetrieveAffiliationsTestCase.java b/server/extensions/xep0060-pubsub/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubRetrieveAffiliationsTestCase.java index 2826436..b312c3b 100644 --- a/server/extensions/xep0060-pubsub/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubRetrieveAffiliationsTestCase.java +++ b/server/extensions/xep0060-pubsub/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubRetrieveAffiliationsTestCase.java @@ -26,7 +26,6 @@ import org.apache.vysper.xmpp.modules.core.base.handler.IQHandler; import org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.AbstractPublishSubscribeTestCase; import org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.model.LeafNode; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainer; import org.apache.vysper.xmpp.stanza.IQStanza; import org.apache.vysper.xmpp.stanza.IQStanzaType; import org.apache.vysper.xmpp.stanza.Stanza; diff --git a/server/extensions/xep0065-socks/src/test/java/org/apache/vysper/xmpp/extension/xep0065_socks/Socks5IqHandlerTest.java b/server/extensions/xep0065-socks/src/test/java/org/apache/vysper/xmpp/extension/xep0065_socks/Socks5IqHandlerTest.java index 360fd42..689d38c 100644 --- a/server/extensions/xep0065-socks/src/test/java/org/apache/vysper/xmpp/extension/xep0065_socks/Socks5IqHandlerTest.java +++ b/server/extensions/xep0065-socks/src/test/java/org/apache/vysper/xmpp/extension/xep0065_socks/Socks5IqHandlerTest.java @@ -27,7 +27,6 @@ import org.apache.vysper.xml.fragment.XMLSemanticError; import org.apache.vysper.xmpp.addressing.Entity; import org.apache.vysper.xmpp.addressing.EntityImpl; import org.apache.vysper.xmpp.protocol.NamespaceURIs; -import org.apache.vysper.xmpp.protocol.ResponseStanzaContainerImpl; import org.apache.vysper.xmpp.server.ServerRuntimeContext; import org.apache.vysper.xmpp.server.SessionContext; import org.apache.vysper.xmpp.stanza.IQStanza; @@ -137,7 +136,7 @@ public class Socks5IqHandlerTest extends Mockito { @Test public void handleGet() throws BindException, XMLSemanticError { List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, null); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = StanzaBuilder .createIQStanza(stanza.getTo(), stanza.getFrom(), IQStanzaType.RESULT, stanza.getID()) @@ -154,7 +153,7 @@ public class Socks5IqHandlerTest extends Mockito { proxyAddress = new InetSocketAddress(12345); handler = new Socks5IqHandler(jid, proxyAddress, connectionsRegistry); List<Stanza> responses = handler.handleGet(stanza, serverRuntimeContext, sessionContext, null); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = StanzaBuilder .createIQStanza(stanza.getTo(), stanza.getFrom(), IQStanzaType.RESULT, stanza.getID()) @@ -178,7 +177,7 @@ public class Socks5IqHandlerTest extends Mockito { when(connectionsRegistry.activate(hash)).thenReturn(true); List<Stanza> responses = handler.handleSet(request, serverRuntimeContext, sessionContext, null); - Stanza response = new ResponseStanzaContainerImpl(responses).getUniqueResponseStanza(); + Stanza response = responses.get(0); Stanza expected = StanzaBuilder.createIQStanza(TO, FROM, IQStanzaType.RESULT, "id1").build();