package org.webpieces.httpfrontend2.api.http2; import java.net.InetSocketAddress; import java.net.SocketAddress; import java.nio.ByteBuffer; import java.util.concurrent.CompletableFuture; import org.webpieces.nio.api.channels.Channel; import org.webpieces.nio.api.channels.ChannelSession; import org.webpieces.nio.api.channels.TCPChannel; import org.webpieces.nio.api.handlers.DataListener; import org.webpieces.nio.impl.util.ChannelSessionImpl; public class ServerChannel implements TCPChannel { private DataListener listener; private TCPChannel clientChannel; private ChannelSession channelSession = new ChannelSessionImpl(); public ServerChannel(TCPChannel clientChannel, DataListener listener) { this.clientChannel = clientChannel; this.listener = listener; } @Override public CompletableFuture<Channel> connect(SocketAddress addr, DataListener listener) { throw new IllegalStateException("should be already connected"); } @Override public CompletableFuture<Channel> write(ByteBuffer b) { listener.incomingData(clientChannel, b); return CompletableFuture.completedFuture(this); } @Override public CompletableFuture<Channel> close() { listener.farEndClosed(clientChannel); return CompletableFuture.completedFuture(this); } @Override public CompletableFuture<Channel> registerForReads() { return null; } @Override public CompletableFuture<Channel> unregisterForReads() { return null; } @Override public boolean isRegisteredForReads() { return false; } @Override public InetSocketAddress getRemoteAddress() { return null; } @Override public boolean isConnected() { // TODO Auto-generated method stub return false; } @Override public ChannelSession getSession() { return channelSession ; } @Override public void setMaxBytesWriteBackupSize(int maxBytesBackup) { // TODO Auto-generated method stub } @Override public int getMaxBytesBackupSize() { // TODO Auto-generated method stub return 0; } @Override public boolean isSslChannel() { // TODO Auto-generated method stub return false; } @Override public void setReuseAddress(boolean b) { // TODO Auto-generated method stub } @Override public void setName(String string) { // TODO Auto-generated method stub } @Override public String getChannelId() { // TODO Auto-generated method stub return null; } @Override public String getName() { // TODO Auto-generated method stub return null; } @Override public void bind(SocketAddress addr) { // TODO Auto-generated method stub } @Override public boolean isBlocking() { // TODO Auto-generated method stub return false; } @Override public boolean isClosed() { // TODO Auto-generated method stub return false; } @Override public boolean isBound() { // TODO Auto-generated method stub return false; } @Override public InetSocketAddress getLocalAddress() { // TODO Auto-generated method stub return null; } @Override public boolean getKeepAlive() { // TODO Auto-generated method stub return false; } @Override public void setKeepAlive(boolean b) { // TODO Auto-generated method stub } }