Moved sctp transport classes from io.netty.channel.socket.sctp to it's own subpackage io.netty.channel.sctp

This commit is contained in:
Jestan Nirojan 2013-01-13 22:11:15 +05:30 committed by Norman Maurer
parent c20d875817
commit 983a70805c
30 changed files with 187 additions and 150 deletions

View File

@ -19,9 +19,9 @@ import io.netty.bootstrap.Bootstrap;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.socket.sctp.SctpChannel;
import io.netty.channel.sctp.SctpChannel;
import io.netty.channel.socket.nio.NioEventLoopGroup;
import io.netty.channel.socket.sctp.nio.NioSctpChannel;
import io.netty.channel.sctp.nio.NioSctpChannel;
import io.netty.handler.logging.LogLevel;
import io.netty.handler.logging.LoggingHandler;

View File

@ -19,9 +19,9 @@ import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.socket.sctp.SctpChannel;
import io.netty.channel.sctp.SctpChannel;
import io.netty.channel.socket.nio.NioEventLoopGroup;
import io.netty.channel.socket.sctp.nio.NioSctpServerChannel;
import io.netty.channel.sctp.nio.NioSctpServerChannel;
import io.netty.handler.logging.LogLevel;
import io.netty.handler.logging.LoggingHandler;

View File

@ -19,9 +19,9 @@ import io.netty.bootstrap.Bootstrap;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.socket.sctp.SctpChannel;
import io.netty.channel.sctp.SctpChannel;
import io.netty.channel.socket.oio.OioEventLoopGroup;
import io.netty.channel.socket.sctp.oio.OioSctpChannel;
import io.netty.channel.sctp.oio.OioSctpChannel;
import io.netty.handler.logging.LogLevel;
import io.netty.handler.logging.LoggingHandler;

View File

@ -19,9 +19,9 @@ import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.socket.sctp.SctpChannel;
import io.netty.channel.sctp.SctpChannel;
import io.netty.channel.socket.oio.OioEventLoopGroup;
import io.netty.channel.socket.sctp.oio.OioSctpServerChannel;
import io.netty.channel.sctp.oio.OioSctpServerChannel;
import io.netty.handler.logging.LogLevel;
import io.netty.handler.logging.LoggingHandler;

View File

@ -20,7 +20,7 @@ import io.netty.buffer.MessageBuf;
import io.netty.buffer.Unpooled;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundMessageHandlerAdapter;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.sctp.SctpMessage;
import java.util.logging.Level;
import java.util.logging.Logger;

View File

@ -19,7 +19,7 @@ import io.netty.buffer.MessageBuf;
import io.netty.channel.ChannelHandler.Sharable;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundMessageHandlerAdapter;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.sctp.SctpMessage;
import java.util.logging.Level;
import java.util.logging.Logger;

View File

@ -13,13 +13,14 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.testsuite.transport.socket;
package io.netty.testsuite.transport.sctp;
import io.netty.bootstrap.Bootstrap;
import io.netty.bootstrap.ServerBootstrap;
import io.netty.logging.InternalLogger;
import io.netty.logging.InternalLoggerFactory;
import io.netty.testsuite.transport.socket.SocketTestPermutation.Factory;
import io.netty.testsuite.transport.sctp.SctpTestPermutation;
import io.netty.testsuite.transport.sctp.SctpTestPermutation.Factory;
import io.netty.testsuite.util.TestUtils;
import io.netty.util.NetUtil;
import org.junit.Rule;
@ -34,7 +35,7 @@ import java.util.Map.Entry;
public abstract class AbstractSctpTest {
private static final List<Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>> COMBO =
SocketTestPermutation.sctpChannel();
SctpTestPermutation.sctpChannel();
@Rule
public final TestName testName = new TestName();

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.testsuite.transport.socket;
package io.netty.testsuite.transport.sctp;
import io.netty.bootstrap.Bootstrap;
import io.netty.bootstrap.ServerBootstrap;
@ -23,7 +23,7 @@ import io.netty.channel.Channel;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundByteHandlerAdapter;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.socket.sctp.SctpChannel;
import io.netty.channel.sctp.SctpChannel;
import io.netty.handler.codec.sctp.SctpInboundByteStreamHandler;
import io.netty.handler.codec.sctp.SctpMessageCompletionHandler;
import io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler;

View File

@ -0,0 +1,127 @@
/*
* Copyright 2012 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.testsuite.transport.sctp;
import io.netty.bootstrap.Bootstrap;
import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.sctp.nio.NioSctpChannel;
import io.netty.channel.sctp.nio.NioSctpServerChannel;
import io.netty.channel.sctp.oio.OioSctpChannel;
import io.netty.channel.sctp.oio.OioSctpServerChannel;
import io.netty.channel.socket.nio.NioEventLoopGroup;
import io.netty.channel.socket.oio.OioEventLoopGroup;
import io.netty.testsuite.util.TestUtils;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
public class SctpTestPermutation {
static List<Factory<ServerBootstrap>> sctpServerChannel() {
if (!TestUtils.isSctpSupported()) {
return Collections.emptyList();
}
List<Factory<ServerBootstrap>> list = new ArrayList<Factory<ServerBootstrap>>();
// Make the list of ServerBootstrap factories.
list.add(new Factory<ServerBootstrap>() {
@Override
public ServerBootstrap newInstance() {
return new ServerBootstrap().
group(new NioEventLoopGroup(), new NioEventLoopGroup()).
channel(NioSctpServerChannel.class);
}
});
list.add(new Factory<ServerBootstrap>() {
@Override
public ServerBootstrap newInstance() {
return new ServerBootstrap().
group(new OioEventLoopGroup(), new OioEventLoopGroup()).
channel(OioSctpServerChannel.class);
}
});
return list;
}
static List<Factory<Bootstrap>> sctpClientChannel() {
if (!TestUtils.isSctpSupported()) {
return Collections.emptyList();
}
List<Factory<Bootstrap>> list = new ArrayList<Factory<Bootstrap>>();
list.add(new Factory<Bootstrap>() {
@Override
public Bootstrap newInstance() {
return new Bootstrap().group(new NioEventLoopGroup()).channel(NioSctpChannel.class);
}
});
list.add(new Factory<Bootstrap>() {
@Override
public Bootstrap newInstance() {
return new Bootstrap().group(new OioEventLoopGroup()).channel(OioSctpChannel.class);
}
});
return list;
}
static List<Map.Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>> sctpChannel() {
List<Map.Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>> list =
new ArrayList<Map.Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>>();
// Make the list of SCTP ServerBootstrap factories.
List<Factory<ServerBootstrap>> sbfs = sctpServerChannel();
// Make the list of SCTP Bootstrap factories.
List<Factory<Bootstrap>> cbfs = sctpClientChannel();
// Populate the combinations
for (Factory<ServerBootstrap> sbf: sbfs) {
for (Factory<Bootstrap> cbf: cbfs) {
final Factory<ServerBootstrap> sbf0 = sbf;
final Factory<Bootstrap> cbf0 = cbf;
list.add(new Map.Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>() {
@Override
public Factory<ServerBootstrap> getKey() {
return sbf0;
}
@Override
public Factory<Bootstrap> getValue() {
return cbf0;
}
@Override
public Factory<Bootstrap> setValue(Factory<Bootstrap> value) {
throw new UnsupportedOperationException();
}
});
}
}
return list;
}
private SctpTestPermutation() {}
interface Factory<T> {
T newInstance();
}
}

View File

@ -25,20 +25,14 @@ import io.netty.channel.socket.aio.AioServerSocketChannel;
import io.netty.channel.socket.aio.AioSocketChannel;
import io.netty.channel.socket.nio.NioDatagramChannel;
import io.netty.channel.socket.nio.NioEventLoopGroup;
import io.netty.channel.socket.sctp.nio.NioSctpChannel;
import io.netty.channel.socket.sctp.nio.NioSctpServerChannel;
import io.netty.channel.socket.nio.NioServerSocketChannel;
import io.netty.channel.socket.nio.NioSocketChannel;
import io.netty.channel.socket.oio.OioDatagramChannel;
import io.netty.channel.socket.oio.OioEventLoopGroup;
import io.netty.channel.socket.sctp.oio.OioSctpChannel;
import io.netty.channel.socket.sctp.oio.OioSctpServerChannel;
import io.netty.channel.socket.oio.OioServerSocketChannel;
import io.netty.channel.socket.oio.OioSocketChannel;
import io.netty.testsuite.util.TestUtils;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map.Entry;
@ -141,43 +135,6 @@ final class SocketTestPermutation {
return list;
}
static List<Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>> sctpChannel() {
List<Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>> list =
new ArrayList<Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>>();
// Make the list of SCTP ServerBootstrap factories.
List<Factory<ServerBootstrap>> sbfs = sctpServerChannel();
// Make the list of SCTP Bootstrap factories.
List<Factory<Bootstrap>> cbfs = sctpClientChannel();
// Populate the combinations
for (Factory<ServerBootstrap> sbf: sbfs) {
for (Factory<Bootstrap> cbf: cbfs) {
final Factory<ServerBootstrap> sbf0 = sbf;
final Factory<Bootstrap> cbf0 = cbf;
list.add(new Entry<Factory<ServerBootstrap>, Factory<Bootstrap>>() {
@Override
public Factory<ServerBootstrap> getKey() {
return sbf0;
}
@Override
public Factory<Bootstrap> getValue() {
return cbf0;
}
@Override
public Factory<Bootstrap> setValue(Factory<Bootstrap> value) {
throw new UnsupportedOperationException();
}
});
}
}
return list;
}
static List<Factory<ServerBootstrap>> serverSocket() {
List<Factory<ServerBootstrap>> list = new ArrayList<Factory<ServerBootstrap>>();
@ -234,54 +191,6 @@ final class SocketTestPermutation {
return list;
}
static List<Factory<ServerBootstrap>> sctpServerChannel() {
if (!TestUtils.isSctpSupported()) {
return Collections.emptyList();
}
List<Factory<ServerBootstrap>> list = new ArrayList<Factory<ServerBootstrap>>();
// Make the list of ServerBootstrap factories.
list.add(new Factory<ServerBootstrap>() {
@Override
public ServerBootstrap newInstance() {
return new ServerBootstrap().
group(new NioEventLoopGroup(), new NioEventLoopGroup()).
channel(NioSctpServerChannel.class);
}
});
list.add(new Factory<ServerBootstrap>() {
@Override
public ServerBootstrap newInstance() {
return new ServerBootstrap().
group(new OioEventLoopGroup(), new OioEventLoopGroup()).
channel(OioSctpServerChannel.class);
}
});
return list;
}
static List<Factory<Bootstrap>> sctpClientChannel() {
if (!TestUtils.isSctpSupported()) {
return Collections.emptyList();
}
List<Factory<Bootstrap>> list = new ArrayList<Factory<Bootstrap>>();
list.add(new Factory<Bootstrap>() {
@Override
public Bootstrap newInstance() {
return new Bootstrap().group(new NioEventLoopGroup()).channel(NioSctpChannel.class);
}
});
list.add(new Factory<Bootstrap>() {
@Override
public Bootstrap newInstance() {
return new Bootstrap().group(new OioEventLoopGroup()).channel(OioSctpChannel.class);
}
});
return list;
}
private SocketTestPermutation() {}
interface Factory<T> {

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import com.sun.nio.sctp.SctpChannel;
import com.sun.nio.sctp.SctpStandardSocketOptions;
@ -34,7 +34,7 @@ public class DefaultSctpChannelConfig extends DefaultChannelConfig implements Sc
private final SctpChannel javaChannel;
public DefaultSctpChannelConfig(io.netty.channel.socket.sctp.SctpChannel channel, SctpChannel javaChannel) {
public DefaultSctpChannelConfig(io.netty.channel.sctp.SctpChannel channel, SctpChannel javaChannel) {
super(channel);
if (javaChannel == null) {
throw new NullPointerException("javaChannel");

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import com.sun.nio.sctp.SctpServerChannel;
import io.netty.buffer.ByteBufAllocator;
@ -39,7 +39,7 @@ public class DefaultSctpServerChannelConfig extends DefaultChannelConfig impleme
* Creates a new instance.
*/
public DefaultSctpServerChannelConfig(
io.netty.channel.socket.sctp.SctpServerChannel channel, SctpServerChannel javaChannel) {
io.netty.channel.sctp.SctpServerChannel channel, SctpServerChannel javaChannel) {
super(channel);
if (javaChannel == null) {
throw new NullPointerException("javaChannel");

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import com.sun.nio.sctp.Association;
import io.netty.channel.Channel;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import io.netty.buffer.ByteBufAllocator;
import io.netty.channel.ChannelConfig;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import com.sun.nio.sctp.MessageInfo;
import io.netty.buffer.ByteBuf;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import com.sun.nio.sctp.Notification;
import io.netty.channel.ChannelHandler;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import com.sun.nio.sctp.AbstractNotificationHandler;
import com.sun.nio.sctp.AssociationChangeNotification;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelPromise;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;
import io.netty.buffer.ByteBufAllocator;
import io.netty.channel.ChannelConfig;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp.nio;
package io.netty.channel.sctp.nio;
import com.sun.nio.sctp.Association;
import com.sun.nio.sctp.MessageInfo;
@ -27,12 +27,12 @@ import io.netty.channel.ChannelException;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelMetadata;
import io.netty.channel.ChannelPromise;
import io.netty.channel.sctp.SctpServerChannel;
import io.netty.channel.socket.nio.AbstractNioMessageChannel;
import io.netty.channel.socket.sctp.DefaultSctpChannelConfig;
import io.netty.channel.socket.sctp.SctpChannelConfig;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.socket.sctp.SctpNotificationHandler;
import io.netty.channel.socket.sctp.SctpServerChannel;
import io.netty.channel.sctp.DefaultSctpChannelConfig;
import io.netty.channel.sctp.SctpChannelConfig;
import io.netty.channel.sctp.SctpMessage;
import io.netty.channel.sctp.SctpNotificationHandler;
import io.netty.logging.InternalLogger;
import io.netty.logging.InternalLoggerFactory;
@ -49,13 +49,13 @@ import java.util.LinkedHashSet;
import java.util.Set;
/**
* {@link io.netty.channel.socket.sctp.SctpChannel} implementation which use non-blocking mode and allows to read /
* {@link io.netty.channel.sctp.SctpChannel} implementation which use non-blocking mode and allows to read /
* write {@link SctpMessage}s to the underlying {@link SctpChannel}.
*
* Be aware that not all operations systems support SCTP. Please refer to the documentation of your operation system,
* to understand what you need to do to use it. Also this feature is only supported on Java 7+.
*/
public class NioSctpChannel extends AbstractNioMessageChannel implements io.netty.channel.socket.sctp.SctpChannel {
public class NioSctpChannel extends AbstractNioMessageChannel implements io.netty.channel.sctp.SctpChannel {
private static final ChannelMetadata METADATA = new ChannelMetadata(BufType.MESSAGE, false);
private static final InternalLogger logger = InternalLoggerFactory.getInstance(NioSctpChannel.class);

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp.nio;
package io.netty.channel.sctp.nio;
import com.sun.nio.sctp.SctpChannel;
import com.sun.nio.sctp.SctpServerChannel;
@ -24,8 +24,8 @@ import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelMetadata;
import io.netty.channel.ChannelPromise;
import io.netty.channel.socket.nio.AbstractNioMessageChannel;
import io.netty.channel.socket.sctp.DefaultSctpServerChannelConfig;
import io.netty.channel.socket.sctp.SctpServerChannelConfig;
import io.netty.channel.sctp.DefaultSctpServerChannelConfig;
import io.netty.channel.sctp.SctpServerChannelConfig;
import java.io.IOException;
import java.net.InetAddress;
@ -38,14 +38,14 @@ import java.util.LinkedHashSet;
import java.util.Set;
/**
* {@link io.netty.channel.socket.sctp.SctpServerChannel} implementation which use non-blocking mode to accept new
* {@link io.netty.channel.sctp.SctpServerChannel} implementation which use non-blocking mode to accept new
* connections and create the {@link NioSctpChannel} for them.
*
* Be aware that not all operations systems support SCTP. Please refer to the documentation of your operation system,
* to understand what you need to do to use it. Also this feature is only supported on Java 7+.
*/
public class NioSctpServerChannel extends AbstractNioMessageChannel
implements io.netty.channel.socket.sctp.SctpServerChannel {
implements io.netty.channel.sctp.SctpServerChannel {
private static final ChannelMetadata METADATA = new ChannelMetadata(BufType.MESSAGE, false);
private static SctpServerChannel newSocket() {

View File

@ -18,4 +18,4 @@
* <a href="http://en.wikipedia.org/wiki/New_I/O">NIO</a>-based SCTP Channel
* API implementation - recommended for a large number of connections (&gt;= 1000).
*/
package io.netty.channel.socket.sctp.nio;
package io.netty.channel.sctp.nio;

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp.oio;
package io.netty.channel.sctp.oio;
import com.sun.nio.sctp.Association;
import com.sun.nio.sctp.MessageInfo;
@ -27,12 +27,12 @@ import io.netty.channel.ChannelException;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelMetadata;
import io.netty.channel.ChannelPromise;
import io.netty.channel.sctp.SctpServerChannel;
import io.netty.channel.socket.oio.AbstractOioMessageChannel;
import io.netty.channel.socket.sctp.DefaultSctpChannelConfig;
import io.netty.channel.socket.sctp.SctpChannelConfig;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.socket.sctp.SctpNotificationHandler;
import io.netty.channel.socket.sctp.SctpServerChannel;
import io.netty.channel.sctp.DefaultSctpChannelConfig;
import io.netty.channel.sctp.SctpChannelConfig;
import io.netty.channel.sctp.SctpMessage;
import io.netty.channel.sctp.SctpNotificationHandler;
import io.netty.logging.InternalLogger;
import io.netty.logging.InternalLoggerFactory;
@ -49,14 +49,14 @@ import java.util.LinkedHashSet;
import java.util.Set;
/**
* {@link io.netty.channel.socket.sctp.SctpChannel} implementation which use blocking mode and allows to read / write
* {@link io.netty.channel.sctp.SctpChannel} implementation which use blocking mode and allows to read / write
* {@link SctpMessage}s to the underlying {@link SctpChannel}.
*
* Be aware that not all operations systems support SCTP. Please refer to the documentation of your operation system,
* to understand what you need to do to use it. Also this feature is only supported on Java 7+.
*/
public class OioSctpChannel extends AbstractOioMessageChannel
implements io.netty.channel.socket.sctp.SctpChannel {
implements io.netty.channel.sctp.SctpChannel {
private static final InternalLogger logger =
InternalLoggerFactory.getInstance(OioSctpChannel.class);

View File

@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
package io.netty.channel.socket.sctp.oio;
package io.netty.channel.sctp.oio;
import com.sun.nio.sctp.SctpChannel;
import com.sun.nio.sctp.SctpServerChannel;
@ -23,9 +23,9 @@ import io.netty.channel.ChannelException;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelMetadata;
import io.netty.channel.ChannelPromise;
import io.netty.channel.sctp.DefaultSctpServerChannelConfig;
import io.netty.channel.sctp.SctpServerChannelConfig;
import io.netty.channel.socket.oio.AbstractOioMessageChannel;
import io.netty.channel.socket.sctp.DefaultSctpServerChannelConfig;
import io.netty.channel.socket.sctp.SctpServerChannelConfig;
import io.netty.logging.InternalLogger;
import io.netty.logging.InternalLoggerFactory;
@ -41,14 +41,14 @@ import java.util.LinkedHashSet;
import java.util.Set;
/**
* {@link io.netty.channel.socket.sctp.SctpServerChannel} implementation which use blocking mode to accept new
* {@link io.netty.channel.sctp.SctpServerChannel} implementation which use blocking mode to accept new
* connections and create the {@link OioSctpChannel} for them.
*
* Be aware that not all operations systems support SCTP. Please refer to the documentation of your operation system,
* to understand what you need to do to use it. Also this feature is only supported on Java 7+.
*/
public class OioSctpServerChannel extends AbstractOioMessageChannel
implements io.netty.channel.socket.sctp.SctpServerChannel {
implements io.netty.channel.sctp.SctpServerChannel {
private static final InternalLogger logger =
InternalLoggerFactory.getInstance(OioSctpServerChannel.class);

View File

@ -18,4 +18,4 @@
* Old blocking I/O based SCTP channel API implementation - recommended for
* a small number of connections (&lt; 1000).
*/
package io.netty.channel.socket.sctp.oio;
package io.netty.channel.sctp.oio;

View File

@ -21,4 +21,4 @@
* @apiviz.exclude \.socket\.[a-z]+\.
* @apiviz.exclude \.channel\.[A-Z]
*/
package io.netty.channel.socket.sctp;
package io.netty.channel.sctp;

View File

@ -19,7 +19,7 @@ package io.netty.handler.codec.sctp;
import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundMessageHandlerAdapter;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.sctp.SctpMessage;
import io.netty.handler.codec.CodecException;
/**

View File

@ -21,7 +21,7 @@ import io.netty.buffer.Unpooled;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundMessageHandler;
import io.netty.channel.ChannelInboundMessageHandlerAdapter;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.sctp.SctpMessage;
import java.util.HashMap;
import java.util.Map;

View File

@ -16,7 +16,7 @@
package io.netty.handler.codec.sctp;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.sctp.SctpMessage;
import io.netty.handler.codec.CodecException;
import io.netty.handler.codec.MessageToMessageDecoder;

View File

@ -21,7 +21,7 @@ import io.netty.buffer.Unpooled;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelOutboundByteHandlerAdapter;
import io.netty.channel.ChannelPromise;
import io.netty.channel.socket.sctp.SctpMessage;
import io.netty.channel.sctp.SctpMessage;
import io.netty.handler.codec.EncoderException;
/**