private BindingErrorResponse createErrorResponse( final BindingRequest request) { // We need to send a Binding Error Response with a // 487 Role Conflict ERROR CODE attribute. final UUID transactionId = request.getTransactionId(); final BindingErrorResponse errorResponse = new BindingErrorResponse(transactionId, 487, "Role Conflict"); return errorResponse; }
@Override public void messageReceived(final IoSession session, final Object message) { final StunMessage vsm = (StunMessage) message; vsm.accept(this.visitor); }
/** * Creates a new STUN message. * * @param messageType The type of message. */ public AbstractStunMessage(final StunMessageType messageType) { this(createTransactionId(), messageType, EMPTY_MAP); }
@Override public InetSocketAddress visitBindingSuccessResponse( final BindingSuccessResponse response) { return response.getMappedAddress(); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitDataIndication(this); } }
/** * Creates a new binding response message. * * @param transactionId The ID of the transaction. * @param errorCode The code for the error. * @param reasonPhrase The reason description. */ public BindingErrorResponse(final UUID transactionId, final int errorCode, final String reasonPhrase) { super(transactionId, StunMessageType.BINDING_ERROR_RESPONSE, createAttributes(errorCode, reasonPhrase)); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitConnectRequest(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitAllocateSuccessResponse(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitCanceledMessage(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitBindingRequest(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitConnectErrorMesssage(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitSendIndication(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitAllocateErrorResponse(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitAllocateRequest(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitNullMessage(this); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitBindingSuccessResponse(this); }
/** * Creates a new binding response message. * * @param transactionId * The transaction ID of the response. * @param attributes * The response attributes. */ public BindingSuccessResponse(final UUID transactionId, final Map<StunAttributeType, StunAttribute> attributes) { super(transactionId, StunMessageType.BINDING_SUCCESS_RESPONSE, attributes); m_mappedAddress = getAddress(attributes); }
public <T> T accept(final StunMessageVisitor<T> visitor) { return visitor.visitBindingErrorResponse(this); }
public <T> T accept(StunMessageVisitor<T> visitor) { return visitor.visitConnectionStatusIndication(this); }
/** * Creates a new STUN message. * * @param attributes The message attributes. * @param messageType The type of the message. */ public AbstractStunMessage(final StunMessageType messageType, final Map<StunAttributeType, StunAttribute> attributes) { this (createTransactionId(), messageType, attributes); }