VpnType.java revision 55567efca99de7242b118cf7bf13cc773b01941c
155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan/*
255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * Copyright (C) 2007, 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
1955567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan/**
2055567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * Enumeration of all supported VPN types.
2155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan * {@hide}
2255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan */
2355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyanpublic enum VpnType {
2455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    L2TP_IPSEC("L2TP/IPSec", L2tpIpsecProfile.class),
2555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    L2TP("L2TP", L2tpProfile.class);
2655567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan
2755567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    private String mDisplayName;
2855567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    private Class<? extends VpnProfile> mClass;
2955567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan
3055567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    VpnType(String displayName, Class<? extends VpnProfile> klass) {
3155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan        mDisplayName = displayName;
3255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan        mClass = klass;
3355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    }
3455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan
3555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    public String getDisplayName() {
3655567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan        return mDisplayName;
3755567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    }
3855567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan
3955567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    public Class<? extends VpnProfile> getProfileClass() {
4055567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan        return mClass;
4155567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    }
4255567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan
4355567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    public String getServiceName() {
4455567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan        return this.toString();
4555567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan    }
4655567efca99de7242b118cf7bf13cc773b01941cHung-ying Tyan}
47