Package de.fhkn.in.uce.stun.message

Examples of de.fhkn.in.uce.stun.message.Message.addAttribute()


        final Message connectionRequest = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.CONNECTION_REQUEST, connectionRequestFromSource.getHeader().getTransactionId());
        connectionRequest.addAttribute(new HolePunchingAttribute());
        connectionRequest.addAttribute(connectionRequestFromSource.getAttribute(Token.class));
        // public endpoint
        connectionRequest.addAttribute(this.createXorMappedAddressFromSocket(controlConnectionToSource,
                connectionRequest.getHeader().getTransactionId()));
        // private endpoint
        connectionRequest.addAttribute(connectionRequestFromSource.getAttribute(XorMappedAddress.class));
        logger.debug("Forwarding endpoints to target {}", toTarget.toString()); //$NON-NLS-1$
        connectionRequest.writeTo(toTarget.getOutputStream());
View Full Code Here


        connectionRequest.addAttribute(connectionRequestFromSource.getAttribute(Token.class));
        // public endpoint
        connectionRequest.addAttribute(this.createXorMappedAddressFromSocket(controlConnectionToSource,
                connectionRequest.getHeader().getTransactionId()));
        // private endpoint
        connectionRequest.addAttribute(connectionRequestFromSource.getAttribute(XorMappedAddress.class));
        logger.debug("Forwarding endpoints to target {}", toTarget.toString()); //$NON-NLS-1$
        connectionRequest.writeTo(toTarget.getOutputStream());
    }

    private void sendFailureResponse(final Message message, final String errorReaon, final STUNErrorCode errorCode,
View Full Code Here

    private NATBehavior requestTargetNatBehavior(final String targetId) throws Exception {
        NATBehavior result = new NATBehavior();
        final Message requestMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.NAT_REQUEST);
        requestMessage.addAttribute(new Username(targetId));
        requestMessage.writeTo(this.mediatorConnection.getControlConnection().getOutputStream());
        final MessageReader messageReader = MessageReader
                .createMessageReaderWithCustomAttributeTypeDecoder(new NATAttributeTypeDecoder());
        final Message response = messageReader.readSTUNMessage(this.mediatorConnection.getControlConnection()
                .getInputStream());
View Full Code Here

    private List<NATTraversalTechniqueAttribute> requestSupportedTraversalTechniquesOfTarget(final String targetId)
            throws Exception {
        final List<NATTraversalTechniqueAttribute> result = new ArrayList<NATTraversalTechniqueAttribute>();
        final Message requestMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.SUPPORTED_TRAV_TECHS_REQUEST);
        requestMessage.addAttribute(new Username(targetId));
        requestMessage.writeTo(this.mediatorConnection.getControlConnection().getOutputStream());
        final MessageReader messageReader = MessageReader
                .createMessageReaderWithCustomAttributeTypeDecoder(new NATAttributeTypeDecoder());
        final Message response = messageReader.readSTUNMessage(this.mediatorConnection.getControlConnection()
                .getInputStream());
View Full Code Here

    private void sendRegisterMessage(final String targetId, final NATBehavior natBehavior,
            final List<NATTraversalTechniqueAttribute> supportedTraversalTechniques) throws Exception {
        final Message registerMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.REGISTER);
        registerMessage.addAttribute(new Username(targetId));
        registerMessage.addAttribute(natBehavior);
        for (final NATTraversalTechniqueAttribute natTraversalTechniqueAttribute : supportedTraversalTechniques) {
            registerMessage.addAttribute(natTraversalTechniqueAttribute);
        }
        registerMessage.writeTo(this.controlConnection.getOutputStream());
View Full Code Here

    private void sendRegisterMessage(final String targetId, final NATBehavior natBehavior,
            final List<NATTraversalTechniqueAttribute> supportedTraversalTechniques) throws Exception {
        final Message registerMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.REGISTER);
        registerMessage.addAttribute(new Username(targetId));
        registerMessage.addAttribute(natBehavior);
        for (final NATTraversalTechniqueAttribute natTraversalTechniqueAttribute : supportedTraversalTechniques) {
            registerMessage.addAttribute(natTraversalTechniqueAttribute);
        }
        registerMessage.writeTo(this.controlConnection.getOutputStream());
    }
View Full Code Here

        final Message registerMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.REGISTER);
        registerMessage.addAttribute(new Username(targetId));
        registerMessage.addAttribute(natBehavior);
        for (final NATTraversalTechniqueAttribute natTraversalTechniqueAttribute : supportedTraversalTechniques) {
            registerMessage.addAttribute(natTraversalTechniqueAttribute);
        }
        registerMessage.writeTo(this.controlConnection.getOutputStream());
    }

    private void waitForDeRegisterResponseMessage() throws Exception {
View Full Code Here

    }

    private void sendDeregisterMesage(final String targetId) throws Exception {
        final Message deregisterMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.DEREGISTER);
        deregisterMessage.addAttribute(new Username(targetId));
        deregisterMessage.writeTo(this.controlConnection.getOutputStream());
    }

    /**
     * Returns the control connection to the mediator.
View Full Code Here

            throws Exception {
        this.logger.debug("Requesting supported nat traversal techniques of {}", targetId); //$NON-NLS-1$
        final List<NATTraversalTechniqueAttribute> result = new ArrayList<NATTraversalTechniqueAttribute>();
        final Message requestMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.SUPPORTED_TRAV_TECHS_REQUEST);
        requestMessage.addAttribute(new Username(targetId));
        requestMessage.writeTo(this.controlConnection.getOutputStream());
        final Message response = this.messageReader.readSTUNMessage(this.controlConnection.getInputStream());
        for (final NATTraversalTechniqueAttribute suppTravTech : response
                .getAttributes(NATTraversalTechniqueAttribute.class)) {
            result.add(suppTravTech);
View Full Code Here

            clientAddress = new XorMappedAddress(new InetSocketAddress(toSource.getInetAddress(), toSource.getPort()),
                    ByteBuffer.wrap(connectionRequest.getHeader().getTransactionId()).getInt());
        } else {
            clientAddress = new XorMappedAddress(new InetSocketAddress(toSource.getInetAddress(), toSource.getPort()));
        }
        connectionRequest.addAttribute(clientAddress);
        connectionRequest.addAttribute(new EndpointClass(EndpointCategory.PUBLIC));
        connectionRequest.addAttribute(new ReversalAttribute());
        final Socket toTarget = user.getSocketToUser();
        connectionRequest.writeTo(toTarget.getOutputStream());
    }
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.