155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan/* 2d3aba7f7b67c758b2b325276538da6e1350cce69Hung-ying Tyan * Copyright (C) 2009, The Android Open Source Project 355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * 455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * Licensed under the Apache License, Version 2.0 (the "License"); 555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * you may not use this file except in compliance with the License. 655567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * You may obtain a copy of the License at 755567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * 855567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * http://www.apache.org/licenses/LICENSE-2.0 955567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * 1055567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * Unless required by applicable law or agreed to in writing, software 1155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * distributed under the License is distributed on an "AS IS" BASIS, 1255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * See the License for the specific language governing permissions and 1455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * limitations under the License. 1555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan */ 1655567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan 1755567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyanpackage android.net.vpn; 1855567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan 19f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyanimport com.android.internal.R; 20f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan 2155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan/** 2255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * Enumeration of all supported VPN types. 2355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * {@hide} 2455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan */ 2555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyanpublic enum VpnType { 26f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan PPTP("PPTP", R.string.pptp_vpn_description, PptpProfile.class), 27f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan L2TP("L2TP", R.string.l2tp_vpn_description, L2tpProfile.class), 28f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan L2TP_IPSEC_PSK("L2TP/IPSec PSK", R.string.l2tp_ipsec_psk_vpn_description, 29d3aba7f7b67c758b2b325276538da6e1350cce69Hung-ying Tyan L2tpIpsecPskProfile.class), 30f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan L2TP_IPSEC("L2TP/IPSec CRT", R.string.l2tp_ipsec_crt_vpn_description, 31d3aba7f7b67c758b2b325276538da6e1350cce69Hung-ying Tyan L2tpIpsecProfile.class); 3255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan 3355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan private String mDisplayName; 34f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan private int mDescriptionId; 3555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan private Class<? extends VpnProfile> mClass; 3655567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan 37f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan VpnType(String displayName, int descriptionId, 38d3aba7f7b67c758b2b325276538da6e1350cce69Hung-ying Tyan Class<? extends VpnProfile> klass) { 3955567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan mDisplayName = displayName; 40f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan mDescriptionId = descriptionId; 4155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan mClass = klass; 4255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan } 4355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan 4455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan public String getDisplayName() { 4555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan return mDisplayName; 4655567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan } 4755567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan 48f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan public int getDescriptionId() { 49f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan return mDescriptionId; 50f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan } 51f2bd901738736e16ea93f0a4c7275f2141ca3a3eHung-ying Tyan 5255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan public Class<? extends VpnProfile> getProfileClass() { 5355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan return mClass; 5455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan } 5555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan} 56