View Javadoc
1   /*
2    * Copyright 2013 The Netty Project
3    *
4    * The Netty Project licenses this file to you under the Apache License,
5    * version 2.0 (the "License"); you may not use this file except in compliance
6    * with the License. You may obtain a copy of the License at:
7    *
8    *   http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13   * License for the specific language governing permissions and limitations
14   * under the License.
15   */
16  
17  package io.netty.handler.codec.socks;
18  
19  public enum SocksAddressType {
20      IPv4((byte) 0x01),
21      DOMAIN((byte) 0x03),
22      IPv6((byte) 0x04),
23      UNKNOWN((byte) 0xff);
24  
25      private final byte b;
26  
27      SocksAddressType(byte b) {
28          this.b = b;
29      }
30  
31      /**
32       * @deprecated Use {@link #valueOf(byte)} instead.
33       */
34      @Deprecated
35      public static SocksAddressType fromByte(byte b) {
36          return valueOf(b);
37      }
38  
39      public static SocksAddressType valueOf(byte b) {
40          for (SocksAddressType code : values()) {
41              if (code.b == b) {
42                  return code;
43              }
44          }
45          return UNKNOWN;
46      }
47  
48      public byte byteValue() {
49          return b;
50      }
51  }
52