• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2009, The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * 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,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.net.vpn;
18 
19 import com.android.internal.R;
20 
21 /**
22  * Enumeration of all supported VPN types.
23  * {@hide}
24  */
25 public enum VpnType {
26     PPTP("PPTP", R.string.pptp_vpn_description, PptpProfile.class),
27     L2TP("L2TP", R.string.l2tp_vpn_description, L2tpProfile.class),
28     L2TP_IPSEC_PSK("L2TP/IPSec PSK", R.string.l2tp_ipsec_psk_vpn_description,
29             L2tpIpsecPskProfile.class),
30     L2TP_IPSEC("L2TP/IPSec CRT", R.string.l2tp_ipsec_crt_vpn_description,
31             L2tpIpsecProfile.class);
32 
33     private String mDisplayName;
34     private int mDescriptionId;
35     private Class<? extends VpnProfile> mClass;
36 
VpnType(String displayName, int descriptionId, Class<? extends VpnProfile> klass)37     VpnType(String displayName, int descriptionId,
38             Class<? extends VpnProfile> klass) {
39         mDisplayName = displayName;
40         mDescriptionId = descriptionId;
41         mClass = klass;
42     }
43 
getDisplayName()44     public String getDisplayName() {
45         return mDisplayName;
46     }
47 
getDescriptionId()48     public int getDescriptionId() {
49         return mDescriptionId;
50     }
51 
getProfileClass()52     public Class<? extends VpnProfile> getProfileClass() {
53         return mClass;
54     }
55 }
56