VpnConfig.java revision 04ba25c418bc4538e9dc0f047cfb9608d358f679
104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh/*
204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * Copyright (C) 2011 The Android Open Source Project
304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh *
404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * Licensed under the Apache License, Version 2.0 (the "License");
504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * you may not use this file except in compliance with the License.
604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * You may obtain a copy of the License at
704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh *
804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh *      http://www.apache.org/licenses/LICENSE-2.0
904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh *
1004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * Unless required by applicable law or agreed to in writing, software
1104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * distributed under the License is distributed on an "AS IS" BASIS,
1204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * See the License for the specific language governing permissions and
1404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * limitations under the License.
1504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh */
1604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
1704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yehpackage com.android.internal.net;
1804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
1904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yehimport android.os.Parcel;
2004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yehimport android.os.Parcelable;
2104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
2204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh/**
2304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * A simple container used to carry information in VpnBuilder, VpnDialogs,
2404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * and com.android.server.connectivity.Vpn. Internal use only.
2504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh *
2604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh * @hide
2704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh */
2804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yehpublic class VpnConfig implements Parcelable {
2904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
3004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public String packageName;
3104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public String sessionName;
3204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public String interfaceName;
3304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public String configureActivity;
3404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public int mtu = -1;
3504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public String addresses;
3604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public String routes;
3704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public String dnsServers;
3804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public long startTime = -1;
3904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
4004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    @Override
4104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public int describeContents() {
4204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        return 0;
4304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    }
4404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
4504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    @Override
4604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public void writeToParcel(Parcel out, int flags) {
4704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeString(packageName);
4804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeString(sessionName);
4904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeString(interfaceName);
5004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeString(configureActivity);
5104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeInt(mtu);
5204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeString(addresses);
5304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeString(routes);
5404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeString(dnsServers);
5504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        out.writeLong(startTime);
5604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    }
5704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
5804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    public static final Parcelable.Creator<VpnConfig> CREATOR =
5904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            new Parcelable.Creator<VpnConfig>() {
6004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        @Override
6104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        public VpnConfig createFromParcel(Parcel in) {
6204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            VpnConfig config = new VpnConfig();
6304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.packageName = in.readString();
6404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.sessionName = in.readString();
6504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.interfaceName = in.readString();
6604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.configureActivity = in.readString();
6704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.mtu = in.readInt();
6804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.addresses = in.readString();
6904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.routes = in.readString();
7004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.dnsServers = in.readString();
7104ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            config.startTime = in.readLong();
7204ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            return config;
7304ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        }
7404ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh
7504ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        @Override
7604ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        public VpnConfig[] newArray(int size) {
7704ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh            return new VpnConfig[size];
7804ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh        }
7904ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh    };
8004ba25c418bc4538e9dc0f047cfb9608d358f679Chia-chi Yeh}
81