1d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski/** 2d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * Copyright (C) 2014 The Android Open Source Project 3d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * 4d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * Licensed under the Apache License, Version 2.0 (the "License"); you may not 5d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * use this file except in compliance with the License. You may obtain a copy 6d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * of the License at 7d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * 8d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * http://www.apache.org/licenses/LICENSE-2.0 9d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * 10d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * Unless required by applicable law or agreed to in writing, software 11d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 12d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 13d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * License for the specific language governing permissions and limitations 14d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * under the License. 15d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski */ 16d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinskipackage android.content.pm; 17d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 18d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinskiimport android.os.Parcel; 19d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinskiimport android.os.Parcelable; 20d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 21d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski/** 22d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * A set of features that can be requested by an application. This corresponds 23d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * to information collected from the 24d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * AndroidManifest.xml's {@code <feature-group>} tag. 25d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski */ 26d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinskipublic final class FeatureGroupInfo implements Parcelable { 27d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 28d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski /** 29d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * The list of features that are required by this group. 30d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * 31d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski * @see FeatureInfo#FLAG_REQUIRED 32d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski */ 33d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public FeatureInfo[] features; 34d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 35d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public FeatureGroupInfo() { 36d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski } 37d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 38d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public FeatureGroupInfo(FeatureGroupInfo other) { 39d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski features = other.features; 40d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski } 41d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 42d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski @Override 43d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public int describeContents() { 44d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski return 0; 45d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski } 46d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 47d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski @Override 48d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public void writeToParcel(Parcel dest, int flags) { 49d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski dest.writeTypedArray(features, flags); 50d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski } 51d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 52d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public static final Creator<FeatureGroupInfo> CREATOR = new Creator<FeatureGroupInfo>() { 53d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski @Override 54d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public FeatureGroupInfo createFromParcel(Parcel source) { 55d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski FeatureGroupInfo group = new FeatureGroupInfo(); 56d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski group.features = source.createTypedArray(FeatureInfo.CREATOR); 57d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski return group; 58d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski } 59d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski 60d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski @Override 61d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski public FeatureGroupInfo[] newArray(int size) { 62d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski return new FeatureGroupInfo[size]; 63d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski } 64d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski }; 65d3edfde51bd069a63e820282421d1a534fcf00ceAdam Lesinski} 66