Merge "Continue populating legacy data structures." into sc-dev
This commit is contained in:
@@ -227,6 +227,14 @@ public class ParsingPackageImpl implements ParsingPackage, Parcelable {
|
|||||||
@NonNull
|
@NonNull
|
||||||
@DataClass.ParcelWith(ForInternedStringList.class)
|
@DataClass.ParcelWith(ForInternedStringList.class)
|
||||||
protected List<String> adoptPermissions = emptyList();
|
protected List<String> adoptPermissions = emptyList();
|
||||||
|
/**
|
||||||
|
* @deprecated consider migrating to {@link #getUsesPermissions} which has
|
||||||
|
* more parsed details, such as flags
|
||||||
|
*/
|
||||||
|
@NonNull
|
||||||
|
@Deprecated
|
||||||
|
@DataClass.ParcelWith(ForInternedStringList.class)
|
||||||
|
protected List<String> requestedPermissions = emptyList();
|
||||||
|
|
||||||
@NonNull
|
@NonNull
|
||||||
private List<ParsedUsesPermission> usesPermissions = emptyList();
|
private List<ParsedUsesPermission> usesPermissions = emptyList();
|
||||||
@@ -701,6 +709,11 @@ public class ParsingPackageImpl implements ParsingPackage, Parcelable {
|
|||||||
@Override
|
@Override
|
||||||
public ParsingPackageImpl addUsesPermission(ParsedUsesPermission permission) {
|
public ParsingPackageImpl addUsesPermission(ParsedUsesPermission permission) {
|
||||||
this.usesPermissions = CollectionUtils.add(this.usesPermissions, permission);
|
this.usesPermissions = CollectionUtils.add(this.usesPermissions, permission);
|
||||||
|
|
||||||
|
// Continue populating legacy data structures to avoid performance
|
||||||
|
// issues until all that code can be migrated
|
||||||
|
this.requestedPermissions = CollectionUtils.add(this.requestedPermissions, permission.name);
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1142,6 +1155,7 @@ public class ParsingPackageImpl implements ParsingPackage, Parcelable {
|
|||||||
dest.writeByteArray(this.restrictUpdateHash);
|
dest.writeByteArray(this.restrictUpdateHash);
|
||||||
dest.writeStringList(this.originalPackages);
|
dest.writeStringList(this.originalPackages);
|
||||||
sForInternedStringList.parcel(this.adoptPermissions, dest, flags);
|
sForInternedStringList.parcel(this.adoptPermissions, dest, flags);
|
||||||
|
sForInternedStringList.parcel(this.requestedPermissions, dest, flags);
|
||||||
dest.writeTypedList(this.usesPermissions);
|
dest.writeTypedList(this.usesPermissions);
|
||||||
sForInternedStringList.parcel(this.implicitPermissions, dest, flags);
|
sForInternedStringList.parcel(this.implicitPermissions, dest, flags);
|
||||||
sForStringSet.parcel(this.upgradeKeySets, dest, flags);
|
sForStringSet.parcel(this.upgradeKeySets, dest, flags);
|
||||||
@@ -1264,6 +1278,7 @@ public class ParsingPackageImpl implements ParsingPackage, Parcelable {
|
|||||||
this.restrictUpdateHash = in.createByteArray();
|
this.restrictUpdateHash = in.createByteArray();
|
||||||
this.originalPackages = in.createStringArrayList();
|
this.originalPackages = in.createStringArrayList();
|
||||||
this.adoptPermissions = sForInternedStringList.unparcel(in);
|
this.adoptPermissions = sForInternedStringList.unparcel(in);
|
||||||
|
this.requestedPermissions = sForInternedStringList.unparcel(in);
|
||||||
this.usesPermissions = in.createTypedArrayList(ParsedUsesPermission.CREATOR);
|
this.usesPermissions = in.createTypedArrayList(ParsedUsesPermission.CREATOR);
|
||||||
this.implicitPermissions = sForInternedStringList.unparcel(in);
|
this.implicitPermissions = sForInternedStringList.unparcel(in);
|
||||||
this.upgradeKeySets = sForStringSet.unparcel(in);
|
this.upgradeKeySets = sForStringSet.unparcel(in);
|
||||||
@@ -1558,15 +1573,14 @@ public class ParsingPackageImpl implements ParsingPackage, Parcelable {
|
|||||||
return adoptPermissions;
|
return adoptPermissions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated consider migrating to {@link #getUsesPermissions} which has
|
||||||
|
* more parsed details, such as flags
|
||||||
|
*/
|
||||||
@NonNull
|
@NonNull
|
||||||
@Override
|
@Override
|
||||||
|
@Deprecated
|
||||||
public List<String> getRequestedPermissions() {
|
public List<String> getRequestedPermissions() {
|
||||||
final List<ParsedUsesPermission> usesPermissions = getUsesPermissions();
|
|
||||||
final int size = usesPermissions.size();
|
|
||||||
final List<String> requestedPermissions = new ArrayList<>(size);
|
|
||||||
for (int i = 0; i < size; i++) {
|
|
||||||
requestedPermissions.add(usesPermissions.get(i).name);
|
|
||||||
}
|
|
||||||
return requestedPermissions;
|
return requestedPermissions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user