Package com.android.identity
Class DeviceRetrievalHelper.Builder
- java.lang.Object
-
- com.android.identity.DeviceRetrievalHelper.Builder
-
- Enclosing class:
- DeviceRetrievalHelper
public static class DeviceRetrievalHelper.Builder extends java.lang.ObjectBuilder forDeviceRetrievalHelper.
-
-
Constructor Summary
Constructors Constructor Description Builder(android.content.Context context, DeviceRetrievalHelper.Listener listener, java.util.concurrent.Executor executor, PresentationSession session)Create a new Builder forDeviceRetrievalHelper.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DeviceRetrievalHelper.BuilderaddAlternateForwardEngagement(byte[] deviceEngagement, byte[] handover)Tells the helper about secondary/alternate engagement mechanisms.DeviceRetrievalHelperbuild()Builds theDeviceRetrievalHelperand starts presentation.DeviceRetrievalHelper.BuilderuseForwardEngagement(DataTransport transport, byte[] deviceEngagement, byte[] handover)Configures the helper to use normal engagement.DeviceRetrievalHelper.BuilderuseReverseEngagement(DataTransport transport, byte[] readerEngagement, java.util.List<OriginInfo> originInfos)Configures the helper to use reverse engagement.
-
-
-
Constructor Detail
-
Builder
public Builder(@NonNull android.content.Context context, @Nullable DeviceRetrievalHelper.Listener listener, @Nullable java.util.concurrent.Executor executor, @NonNull PresentationSession session)Create a new Builder forDeviceRetrievalHelper.Use
useForwardEngagement(DataTransport, byte[], byte[])oruseReverseEngagement(DataTransport, byte[], List)to specifiy which kind of engagement will be used. At least one of these must be used.- Parameters:
context- The context.listener- the listener ornullto stop listening.executor- aExecutorto do the call in ornulliflistenerisnull.session- aPresentationSession.- Throws:
java.lang.IllegalStateException- ifExecutorisnullfor a non-nulllistener.
-
-
Method Detail
-
useForwardEngagement
@NonNull public DeviceRetrievalHelper.Builder useForwardEngagement(@NonNull DataTransport transport, @NonNull byte[] deviceEngagement, @NonNull byte[] handover)
Configures the helper to use normal engagement.Applications can use this together with
QrEngagementHelperandNfcEngagementHelper.- Parameters:
transport- the transport the mdoc reader used to connect with.deviceEngagement- the bytes of theDeviceEngagementCBOR.handover- the bytes of theHandoverCBOR.- Returns:
- the builder.
-
addAlternateForwardEngagement
@NonNull public DeviceRetrievalHelper.Builder addAlternateForwardEngagement(@Nullable byte[] deviceEngagement, @Nullable byte[] handover)
Tells the helper about secondary/alternate engagement mechanisms.This is useful if using multiple forward engagement mechanisms at the same time, for example QR and NFC.
- Parameters:
deviceEngagement- the bytes of theDeviceEngagementCBOR.handover- the bytes of theHandoverCBOR.- Returns:
- the builder
-
useReverseEngagement
@NonNull public DeviceRetrievalHelper.Builder useReverseEngagement(@NonNull DataTransport transport, @Nullable byte[] readerEngagement, java.util.List<OriginInfo> originInfos)
Configures the helper to use reverse engagement.- Parameters:
transport- the transport to use.readerEngagement- the bytes of theReaderEngagementCBOR.originInfos- a set of origin infos describing how reader engagement was obtained.- Returns:
- the builder.
-
build
@NonNull public DeviceRetrievalHelper build()
Builds theDeviceRetrievalHelperand starts presentation.- Returns:
- the helper, ready to be used.
-
-