Java tutorial
/* * Copyright 2014 Red Hat, Inc. * * Licensed 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.nodyn.netty.pipe; import io.netty.channel.ChannelConfig; import io.netty.channel.ChannelMetadata; import io.netty.channel.DefaultChannelConfig; import io.netty.channel.nio.AbstractNioByteChannel; import io.nodyn.NodeProcess; import java.net.SocketAddress; import java.nio.channels.Pipe; /** * @author Bob McWhirter */ public abstract class AbstractNioStreamChannel extends AbstractNioByteChannel { protected final NodeProcess process; protected final ChannelConfig config; protected final ChannelMetadata metadata; protected AbstractNioStreamChannel(NodeProcess process, Pipe pipe) { super(null, pipe.source()); this.process = process; this.config = new DefaultChannelConfig(this); this.metadata = new ChannelMetadata(false); } @Override public ChannelConfig config() { return this.config; } @Override public ChannelMetadata metadata() { return this.metadata; } @Override protected boolean doConnect(SocketAddress remoteAddress, SocketAddress localAddress) throws Exception { return true; } @Override protected void doFinishConnect() throws Exception { // empty } @Override protected SocketAddress localAddress0() { return null; } @Override protected SocketAddress remoteAddress0() { return null; } @Override protected void doBind(SocketAddress localAddress) throws Exception { // empty } @Override protected void doDisconnect() throws Exception { // empty } }