1/* 2 * Copyright (C) 2010 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 17package android.net; 18 19import java.util.Locale; 20 21/** 22 * Describes the buildtime configuration of a network. 23 * Holds settings read from resources. 24 * @hide 25 */ 26public class NetworkConfig { 27 /** 28 * Human readable string 29 */ 30 public String name; 31 32 /** 33 * Type from ConnectivityManager 34 */ 35 public int type; 36 37 /** 38 * the radio number from radio attributes config 39 */ 40 public int radio; 41 42 /** 43 * higher number == higher priority when turning off connections 44 */ 45 public int priority; 46 47 /** 48 * indicates the boot time dependencyMet setting 49 */ 50 public boolean dependencyMet; 51 52 /** 53 * indicates the default restoral timer in seconds 54 * if the network is used as a special network feature 55 * -1 indicates no restoration of default 56 */ 57 public int restoreTime; 58 59 /** 60 * input string from config.xml resource. Uses the form: 61 * [Connection name],[ConnectivityManager connection type], 62 * [associated radio-type],[priority],[dependencyMet] 63 */ 64 public NetworkConfig(String init) { 65 String fragments[] = init.split(","); 66 name = fragments[0].trim().toLowerCase(Locale.ROOT); 67 type = Integer.parseInt(fragments[1]); 68 radio = Integer.parseInt(fragments[2]); 69 priority = Integer.parseInt(fragments[3]); 70 restoreTime = Integer.parseInt(fragments[4]); 71 dependencyMet = Boolean.parseBoolean(fragments[5]); 72 } 73 74 /** 75 * Indicates if this network is supposed to be default-routable 76 */ 77 public boolean isDefault() { 78 return (type == radio); 79 } 80} 81