Skip to content

Commit 6f7e284

Browse files
committed
make parceled classes public
1 parent 28c6a05 commit 6f7e284

File tree

7 files changed

+45
-27
lines changed

7 files changed

+45
-27
lines changed

README.md

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,31 @@ Thread {
5757
}.start()
5858
```
5959

60+
#### Other usages
61+
Send `ParcelFileDescriptor` via intent:
62+
```kotlin
63+
val descriptor: ParcelFileDescriptor = // ...
64+
65+
Intent().apply {
66+
setComponent(ComponentName(APP_PACKAGE_NAME, ACTIVITY_PACKAGE_NAME))
67+
putExtra(PARCELED_DESCRIPTOR, ParceledFileDescriptor(descriptor))
68+
}
69+
70+
intent.getParcelableExtra<ParceledFileDescriptor>(PARCELED_LIST)?.descriptor
71+
```
72+
Send `List<Parcelable>` via intent:
73+
```kotlin
74+
val list: List<Parcelable> = // ...
75+
76+
Intent().apply {
77+
setComponent(ComponentName(APP_PACKAGE_NAME, ACTIVITY_PACKAGE_NAME))
78+
putExtra(PARCELED_LIST, ParceledList(descriptor))
79+
}
80+
81+
intent.getParcelableExtra<ParceledList<Parcelable>>(PARCELED_LIST)?.list
82+
```
6083

61-
Add dependencies:
84+
#### How to add dependencies
6285
```kotlin
6386
dependencyResolutionManagement {
6487
repositories {
@@ -67,7 +90,7 @@ dependencyResolutionManagement {
6790
}
6891

6992
dependencies {
70-
implementation("com.github.0xera.parcelable:stream:0.1")
71-
implementation("com.github.0xera.parcelable:slice:0.1")
93+
implementation("com.github.0xera.parcelable:stream:0.1.1")
94+
implementation("com.github.0xera.parcelable:slice:0.1.1")
7295
}
7396
```

parcelable/slice/src/main/java/com/zero/xera/parcelable/slice/BaseParceledListSlice.java renamed to parcelable/slice/src/main/java/com/zero/xera/parcelable/slice/BaseParceledList.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
import java.util.ArrayList;
2828
import java.util.List;
2929

30-
abstract class BaseParceledListSlice<T> implements Parcelable {
31-
private static String TAG = "ParceledListSlice";
30+
public abstract class BaseParceledList<T> implements Parcelable {
31+
private static String TAG = "ParceledList";
3232
private static boolean DEBUG = false;
3333
private static final int MAX_IPC_SIZE = 64 * 1024; // see IBinder.getSuggestedMaxIpcSizeBytes();
3434

@@ -38,12 +38,12 @@ abstract class BaseParceledListSlice<T> implements Parcelable {
3838

3939
private boolean mHasBeenParceled = false;
4040

41-
public BaseParceledListSlice(List<T> list) {
41+
public BaseParceledList(List<T> list) {
4242
mList = list;
4343
}
4444

4545
@SuppressWarnings("unchecked")
46-
BaseParceledListSlice(Parcel p, ClassLoader loader) {
46+
BaseParceledList(Parcel p, ClassLoader loader) {
4747
final int N = p.readInt();
4848
mList = new ArrayList<>(N);
4949
if (DEBUG) Log.d(TAG, "Retrieving " + N + " items");

parcelable/slice/src/main/java/com/zero/xera/parcelable/slice/ParcelableSlice.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ sealed interface ParcelableSlice<T> : Parcelable
77

88
@Parcelize
99
internal class ParcelableSliceImpl<T, C : Parcelable>(
10-
internal val chunks: ParceledListSlice<C>
10+
internal val chunks: ParceledList<C>
1111
) : ParcelableSlice<T>

parcelable/slice/src/main/java/com/zero/xera/parcelable/slice/ParceledListSlice.java renamed to parcelable/slice/src/main/java/com/zero/xera/parcelable/slice/ParceledList.java

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,17 @@
1919
import android.os.Parcel;
2020
import android.os.Parcelable;
2121

22-
import java.util.Collections;
2322
import java.util.List;
2423

25-
class ParceledListSlice<T extends Parcelable> extends BaseParceledListSlice<T> {
26-
public ParceledListSlice(List<T> list) {
24+
public class ParceledList<T extends Parcelable> extends BaseParceledList<T> {
25+
public ParceledList(List<T> list) {
2726
super(list);
2827
}
2928

30-
private ParceledListSlice(Parcel in, ClassLoader loader) {
29+
private ParceledList(Parcel in, ClassLoader loader) {
3130
super(in, loader);
3231
}
3332

34-
public static <T extends Parcelable> ParceledListSlice<T> emptyList() {
35-
return new ParceledListSlice<T>(Collections.<T> emptyList());
36-
}
37-
3833
@Override
3934
public int describeContents() {
4035
int contents = 0;
@@ -61,20 +56,20 @@ protected Parcelable.Creator<?> readParcelableCreator(Parcel from, ClassLoader l
6156
}
6257

6358
@SuppressWarnings("unchecked")
64-
public static final Parcelable.ClassLoaderCreator<ParceledListSlice> CREATOR =
65-
new Parcelable.ClassLoaderCreator<ParceledListSlice>() {
66-
public ParceledListSlice createFromParcel(Parcel in) {
67-
return new ParceledListSlice(in, null);
59+
public static final Parcelable.ClassLoaderCreator<ParceledList> CREATOR =
60+
new Parcelable.ClassLoaderCreator<ParceledList>() {
61+
public ParceledList createFromParcel(Parcel in) {
62+
return new ParceledList(in, null);
6863
}
6964

7065
@Override
71-
public ParceledListSlice createFromParcel(Parcel in, ClassLoader loader) {
72-
return new ParceledListSlice(in, loader);
66+
public ParceledList createFromParcel(Parcel in, ClassLoader loader) {
67+
return new ParceledList(in, loader);
7368
}
7469

7570
@Override
76-
public ParceledListSlice[] newArray(int size) {
77-
return new ParceledListSlice[size];
71+
public ParceledList[] newArray(int size) {
72+
return new ParceledList[size];
7873
}
7974
};
8075
}

parcelable/slice/src/main/java/com/zero/xera/parcelable/slice/slice.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,5 +84,5 @@ private fun <T : Serializable> joinSerializable(bytes: ByteArray): T? =
8484

8585
private fun <T> saveChunks(chunks: List<Chunk>): ParcelableSlice<T> =
8686
ParcelableSliceImpl<T, Chunk>(
87-
ParceledListSlice(chunks)
87+
ParceledList(chunks)
8888
)

parcelable/stream/src/main/java/com/zero/xera/parcelable/stream/BaseParceledFileDescriptor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import android.os.RemoteException;
2626
import android.util.Log;
2727

28-
abstract class BaseParceledFileDescriptor implements Parcelable {
28+
public abstract class BaseParceledFileDescriptor implements Parcelable {
2929
private static String TAG = "ParceledDescriptor";
3030
private static boolean DEBUG = false;
3131
private ParcelFileDescriptor mDescriptor;

parcelable/stream/src/main/java/com/zero/xera/parcelable/stream/ParceledFileDescriptor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import android.os.ParcelFileDescriptor;
2121
import android.os.Parcelable;
2222

23-
class ParceledFileDescriptor extends BaseParceledFileDescriptor {
23+
public class ParceledFileDescriptor extends BaseParceledFileDescriptor {
2424
public ParceledFileDescriptor(ParcelFileDescriptor descriptor) {
2525
super(descriptor);
2626
}

0 commit comments

Comments
 (0)