Merge "Add Parcelable implementation for ApfCapabilities"

This commit is contained in:
Remi NGUYEN VAN 2019-03-20 00:34:53 +00:00 • committed by Gerrit Code Review
commit d64b329979

View file

@ -19,17 +19,20 @@ package android.net.apf;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.content.Context;
import android.os.Parcel;
import android.os.Parcelable;
import com.android.internal.R;
/**
* APF program support capabilities.
*
* This class is immutable.
* @hide
*/
@SystemApi
@TestApi
public class ApfCapabilities {
public final class ApfCapabilities implements Parcelable {
/**
* Version of APF instruction set supported for packet filtering. 0 indicates no support for
* packet filtering using APF programs.
@ -53,6 +56,37 @@ public class ApfCapabilities {
this.apfPacketFormat = apfPacketFormat;
}
private ApfCapabilities(Parcel in) {
apfVersionSupported = in.readInt();
maximumApfProgramSize = in.readInt();
apfPacketFormat = in.readInt();
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(apfVersionSupported);
dest.writeInt(maximumApfProgramSize);
dest.writeInt(apfPacketFormat);
}
public static final Creator<ApfCapabilities> CREATOR = new Creator<ApfCapabilities>() {
@Override
public ApfCapabilities createFromParcel(Parcel in) {
return new ApfCapabilities(in);
}
@Override
public ApfCapabilities[] newArray(int size) {
return new ApfCapabilities[size];
}
};
@Override
public String toString() {
return String.format("%s{version: %d, maxSize: %d, format: %d}", getClass().getSimpleName(),