All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alibaba.rocketmq.shade.io.netty.channel.sctp.SctpChannelConfig Maven / Gradle / Ivy

There is a newer version: 3.6.2.Final
Show newest version
/*
 * Copyright 2011 The Netty Project
 *
 * The Netty Project 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 io.netty.channel.sctp;

import com.sun.nio.sctp.SctpStandardSocketOptions.InitMaxStreams;
import io.netty.buffer.ByteBufAllocator;
import io.netty.channel.ChannelConfig;
import io.netty.channel.MessageSizeEstimator;
import io.netty.channel.RecvByteBufAllocator;

/**
 * A {@link ChannelConfig} for a {@link SctpChannel}.
 * 

*

Available options

*

* In addition to the options provided by {@link ChannelConfig}, * {@link SctpChannelConfig} allows the following options in the option map: *

*

* * * * * * * * * * * *
NameAssociated setter method
{@link SctpChannelOption#SCTP_NODELAY}{@link #setSctpNoDelay(boolean)}}
{@link SctpChannelOption#SO_RCVBUF}{@link #setReceiveBufferSize(int)}
{@link SctpChannelOption#SO_SNDBUF}{@link #setSendBufferSize(int)}
{@link SctpChannelOption#SCTP_INIT_MAXSTREAMS}{@link #setInitMaxStreams(InitMaxStreams)}
*/ public interface SctpChannelConfig extends ChannelConfig { /** * Gets the * {@code SCTP_NODELAY} option. Please note that the default value of this option is {@code true} unlike the * operating system default ({@code false}). However, for some buggy platforms, such as Android, that shows erratic * behavior with Nagle's algorithm disabled, the default value remains to be {@code false}. */ boolean isSctpNoDelay(); /** * Sets the * {@code SCTP_NODELAY} option. Please note that the default value of this option is {@code true} unlike the * operating system default ({@code false}). However, for some buggy platforms, such as Android, that shows erratic * behavior with Nagle's algorithm disabled, the default value remains to be {@code false}. */ SctpChannelConfig setSctpNoDelay(boolean sctpNoDelay); /** * Gets the * {@code SO_SNDBUF} option. */ int getSendBufferSize(); /** * Sets the * {@code SO_SNDBUF} option. */ SctpChannelConfig setSendBufferSize(int sendBufferSize); /** * Gets the * {@code SO_RCVBUF} option. */ int getReceiveBufferSize(); /** * Gets the * {@code SO_RCVBUF} option. */ SctpChannelConfig setReceiveBufferSize(int receiveBufferSize); /** * Gets the * {@code SCTP_INIT_MAXSTREAMS} option. */ InitMaxStreams getInitMaxStreams(); /** * Gets the * {@code SCTP_INIT_MAXSTREAMS} option. */ SctpChannelConfig setInitMaxStreams(InitMaxStreams initMaxStreams); @Override SctpChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis); @Override SctpChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead); @Override SctpChannelConfig setWriteSpinCount(int writeSpinCount); @Override SctpChannelConfig setAllocator(ByteBufAllocator allocator); @Override SctpChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator); @Override SctpChannelConfig setAutoRead(boolean autoRead); @Override SctpChannelConfig setAutoClose(boolean autoClose); @Override SctpChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark); @Override SctpChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark); @Override SctpChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy