001 /*
002 * Copyright 2003-2004 The Apache Software Foundation
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package org.apache.commons.net.telnet;
017
018 /***
019 * Simple option handler that can be used for options
020 * that don't require subnegotiation.
021 * <p>
022 * @author Bruno D'Avanzo
023 ***/
024 public class SimpleOptionHandler extends TelnetOptionHandler
025 {
026 /***
027 * Constructor for the SimpleOptionHandler. Allows defining desired
028 * initial setting for local/remote activation of this option and
029 * behaviour in case a local/remote activation request for this
030 * option is received.
031 * <p>
032 * @param optcode - option code.
033 * @param initlocal - if set to true, a WILL is sent upon connection.
034 * @param initremote - if set to true, a DO is sent upon connection.
035 * @param acceptlocal - if set to true, any DO request is accepted.
036 * @param acceptremote - if set to true, any WILL request is accepted.
037 ***/
038 public SimpleOptionHandler(int optcode,
039 boolean initlocal,
040 boolean initremote,
041 boolean acceptlocal,
042 boolean acceptremote)
043 {
044 super(optcode, initlocal, initremote,
045 acceptlocal, acceptremote);
046 }
047
048 /***
049 * Constructor for the SimpleOptionHandler. Initial and accept
050 * behaviour flags are set to false
051 * <p>
052 * @param optcode - option code.
053 ***/
054 public SimpleOptionHandler(int optcode)
055 {
056 super(optcode, false, false, false, false);
057 }
058
059 /***
060 * Implements the abstract method of TelnetOptionHandler.
061 * <p>
062 * @param suboptionData - the sequence received, whithout IAC SB & IAC SE
063 * @param suboptionLength - the length of data in suboption_data
064 * <p>
065 * @return always null (no response to subnegotiation)
066 ***/
067 public int[] answerSubnegotiation(int suboptionData[], int suboptionLength)
068 {
069 return null;
070 }
071
072 /***
073 * Implements the abstract method of TelnetOptionHandler.
074 * <p>
075 * @return always null (no response to subnegotiation)
076 ***/
077 public int[] startSubnegotiationLocal()
078 {
079 return null;
080 }
081
082 /***
083 * Implements the abstract method of TelnetOptionHandler.
084 * <p>
085 * @return always null (no response to subnegotiation)
086 ***/
087 public int[] startSubnegotiationRemote()
088 {
089 return null;
090 }
091 }