Examples of CoapMessage


Examples of de.uniluebeck.itm.ncoap.message.CoapMessage

    }

    @Test
    public void test2ndReceivedMessageHasMsgTypeCON() {
        SortedMap<Long, CoapMessage> receivedMessages = endpoint.getReceivedCoapMessages();
        CoapMessage receivedMessage = receivedMessages.get(receivedMessages.lastKey());
        String message = "Response Msg EventType is not CON";
        assertEquals(message, MessageType.Name.CON, receivedMessage.getMessageTypeName());
    }
View Full Code Here

Examples of de.uniluebeck.itm.ncoap.message.CoapMessage

            ctx.sendDownstream(evt);
            return;
        }

        InetSocketAddress remoteEndpoint = (InetSocketAddress) ((MessageEvent) evt).getRemoteAddress();
        CoapMessage coapMessage = (CoapMessage) ((MessageEvent) evt).getMessage();

        try{
            Channels.write(ctx, evt.getFuture(), encode(coapMessage), remoteEndpoint);
        }
        catch(Exception ex){
            evt.getFuture().setFailure(ex);
            sendInternalEncodingFailedMessage(ctx, remoteEndpoint, coapMessage.getMessageID(), coapMessage.getToken(),
                    ex);
        }
    }
View Full Code Here

Examples of de.uniluebeck.itm.ncoap.message.CoapMessage


    @Test
    public void testAllRequestsAreEqual(){
        SortedMap<Long, CoapMessage> receivedMessages = testEndpoint.getReceivedCoapMessages();
        CoapMessage firstMessage = receivedMessages.get(receivedMessages.firstKey());

        for(CoapMessage message : receivedMessages.values()){
            assertEquals("Received requests did not equal.", firstMessage, message);
        }
    }
View Full Code Here

Examples of de.uniluebeck.itm.ncoap.message.CoapMessage

        assertEquals(2, endpoint.getReceivedCoapMessages().size());
    }

    @Test
    public void testFirstMessageisEmptyAck(){
        CoapMessage message1 = endpoint.getReceivedMessage(0);

        assertEquals("First message is not empty!", MessageCode.Name.EMPTY, message1.getMessageCodeName());
        assertEquals("First message has wrong ID!", messageID, message1.getMessageID());
        assertEquals("First message is no ACK!", MessageType.Name.ACK, message1.getMessageTypeName());
    }
View Full Code Here

Examples of de.uniluebeck.itm.ncoap.message.CoapMessage

        assertEquals("First message is no ACK!", MessageType.Name.ACK, message1.getMessageTypeName());
    }

    @Test
    public void testSecondMessage(){
        CoapMessage message2 = endpoint.getReceivedMessage(1);

        assertEquals("Third message has wrong message code!", MessageCode.Name.CONTENT_205,
                message2.getMessageCodeName());

        assertEquals("3rd message has wrong message type!", MessageType.Name.ACK, message2.getMessageTypeName());
    }
View Full Code Here

Examples of de.uniluebeck.itm.ncoap.message.CoapMessage

    }


    private void handleOutboundCoapMessage(ChannelHandlerContext ctx, MessageEvent me){

        CoapMessage coapMessage = (CoapMessage) me.getMessage();
        InetSocketAddress remoteEndpoint = (InetSocketAddress) me.getRemoteAddress();

        if(coapMessage.getMessageID() != CoapMessage.UNDEFINED_MESSAGE_ID){
            int messageID = coapMessage.getMessageID();

            if(coapMessage instanceof CoapResponse && ((CoapResponse) coapMessage).isUpdateNotification()
                    && coapMessage.getMessageTypeName() != MessageType.Name.ACK){

                if(this.transfers.contains(remoteEndpoint, messageID)){

                    if(updateConfirmableUpdateNotification(remoteEndpoint, (CoapResponse) coapMessage)){
                        return;
                    }

                    else{
                        //There was no update notification (which is very unlikely)
                        coapMessage.setMessageID(CoapMessage.UNDEFINED_MESSAGE_ID);
                    }
                }
            }

            else{
                ctx.sendDownstream(me);
                return;
            }
        }

        int messageID = this.messageIDFactory.getNextMessageID(remoteEndpoint);

        if(messageID == CoapMessage.UNDEFINED_MESSAGE_ID){
            MiscellaneousErrorEvent event = new MiscellaneousErrorEvent(remoteEndpoint, messageID,
            coapMessage.getToken(), "No message ID available for remote endpoint: " + remoteEndpoint);
            Channels.fireMessageReceived(ctx.getChannel(), event);
            return;
        }

        else if(coapMessage.getMessageTypeName() == MessageType.Name.CON){
            coapMessage.setMessageID(messageID);
            this.addTransfer(remoteEndpoint, coapMessage, true);
            log.debug("DOWNSTREAM AFTER (to {}): {}.", me.getRemoteAddress(), me.getMessage());
            ctx.sendDownstream(me);
        }

        else if(coapMessage.getMessageTypeName() == MessageType.Name.NON){
            coapMessage.setMessageID(messageID);
            this.addTransfer(remoteEndpoint, coapMessage, false);
            log.debug("DOWNSTREAM AFTER (to {}): {}.", me.getRemoteAddress(), me.getMessage());
            ctx.sendDownstream(me);
        }

        else{
            coapMessage.setMessageID(messageID);
            log.debug("DOWNSTREAM AFTER (to {}): {}.", me.getRemoteAddress(), me.getMessage());
            ctx.sendDownstream(me);
        }

        MessageIDAssignedEvent event = new MessageIDAssignedEvent(remoteEndpoint, messageID, coapMessage.getToken());
        Channels.fireMessageReceived(ctx.getChannel(), event);
    }
View Full Code Here

Examples of de.uniluebeck.itm.ncoap.message.CoapMessage

    }


     private void handleInboundCoapMessage(ChannelHandlerContext ctx, MessageEvent me){

         CoapMessage coapMessage = (CoapMessage) me.getMessage();
         InetSocketAddress remoteEndpoint = (InetSocketAddress) me.getRemoteAddress();

         MessageCode.Name messageCode = coapMessage.getMessageCodeName();
         MessageType.Name messageType = coapMessage.getMessageTypeName();

         int messageID = coapMessage.getMessageID();

         if(messageType == MessageType.Name.ACK){
             OutboundMessageTransfer messageExchange = removeTransfer(remoteEndpoint, messageID);

             if(messageExchange != null && messageExchange instanceof OutboundReliableMessageTransfer){
View Full Code Here

Examples of org.apache.mina.coap.CoapMessage

            CoapDecoder decoder = new CoapDecoder();
            ByteBuffer buff = ByteBuffer.allocateDirect(2048);

            Random r = new Random();
            byte[] url = "nlp".getBytes();
            CoapMessage msg = new CoapMessage(1, MessageType.CONFIRMABLE, CoapCode.GET.getCode(), 1234, null,
                    new CoapOption[] { new CoapOption(CoapOptionType.URI_PATH, url) }, null);

            for (int j = 0; j < 8; j++) {
                long start = System.currentTimeMillis();
                final int count = 100000;
                for (int i = 0; i < count; i++) {
                    buff.position(0);
                    buff.limit(buff.capacity());
                    int id = r.nextInt(1024);
                    msg.setId(id);
                    int bytes = channel.send(encoder.encode(msg, null), target);

                    if (bytes < 1) {
                        System.err.println("write fail :/ " + bytes);
                    } else {
                        buff.position(0);
                        buff.limit(buff.capacity());
                        SocketAddress addy = channel.receive(buff);
                        buff.flip();
                        CoapMessage response = decoder.decode(buff, null);
                        if (response.getId() != id) {
                            System.err.println("gni?");
                        }
                        // System.err.println("response : " + response);
                    }
                }
View Full Code Here

Examples of org.apache.mina.coap.CoapMessage

        @Override
        public void messageReceived(IoSession session, Object message) {

            System.err.println("rcvd : " + message);
            CoapMessage msg = (CoapMessage) message;
            if (msg.getCode() == CoapCode.GET.getCode() || msg.getCode() == CoapCode.POST.getCode()
                    || msg.getCode() == CoapCode.PUT.getCode() || msg.getCode() == CoapCode.DELETE.getCode()) {
                CoapMessage resp = reg.respond(msg, session);
                session.write(resp);
            }
        }
View Full Code Here

Examples of org.apache.mina.coap.CoapMessage

            @Override
            public void messageReceived(IoSession session, Object message) {
                System.err.println("rcv : " + message);

                CoapMessage resp = reg.respond((CoapMessage) message, session);
                System.err.println("resp : " + resp);
                session.write(resp);
                count++;
                if (count >= 100_000) {
                    System.err.println("time for 100k msg : " + (System.currentTimeMillis() - start));
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.