summaryrefslogtreecommitdiff
path: root/android/view/textclassifier/TextClassification.java
diff options
context:
space:
mode:
Diffstat (limited to 'android/view/textclassifier/TextClassification.java')
-rw-r--r--android/view/textclassifier/TextClassification.java73
1 files changed, 68 insertions, 5 deletions
diff --git a/android/view/textclassifier/TextClassification.java b/android/view/textclassifier/TextClassification.java
index 37a5d9a1..96016b44 100644
--- a/android/view/textclassifier/TextClassification.java
+++ b/android/view/textclassifier/TextClassification.java
@@ -375,13 +375,13 @@ public final class TextClassification implements Parcelable {
*/
public static final class Builder {
- @NonNull private String mText;
@NonNull private List<RemoteAction> mActions = new ArrayList<>();
@NonNull private final Map<String, Float> mEntityConfidence = new ArrayMap<>();
- @Nullable Drawable mLegacyIcon;
- @Nullable String mLegacyLabel;
- @Nullable Intent mLegacyIntent;
- @Nullable OnClickListener mLegacyOnClickListener;
+ @Nullable private String mText;
+ @Nullable private Drawable mLegacyIcon;
+ @Nullable private String mLegacyLabel;
+ @Nullable private Intent mLegacyIntent;
+ @Nullable private OnClickListener mLegacyOnClickListener;
@Nullable private String mId;
/**
@@ -721,4 +721,67 @@ public final class TextClassification implements Parcelable {
mEntityConfidence = EntityConfidence.CREATOR.createFromParcel(in);
mId = in.readString();
}
+
+ // TODO: Remove once apps can build against the latest sdk.
+ /**
+ * Optional input parameters for generating TextClassification.
+ * @hide
+ */
+ public static final class Options {
+
+ @Nullable private final TextClassificationSessionId mSessionId;
+ @Nullable private final Request mRequest;
+ @Nullable private LocaleList mDefaultLocales;
+ @Nullable private ZonedDateTime mReferenceTime;
+
+ public Options() {
+ this(null, null);
+ }
+
+ private Options(
+ @Nullable TextClassificationSessionId sessionId, @Nullable Request request) {
+ mSessionId = sessionId;
+ mRequest = request;
+ }
+
+ /** Helper to create Options from a Request. */
+ public static Options from(TextClassificationSessionId sessionId, Request request) {
+ final Options options = new Options(sessionId, request);
+ options.setDefaultLocales(request.getDefaultLocales());
+ options.setReferenceTime(request.getReferenceTime());
+ return options;
+ }
+
+ /** @param defaultLocales ordered list of locale preferences. */
+ public Options setDefaultLocales(@Nullable LocaleList defaultLocales) {
+ mDefaultLocales = defaultLocales;
+ return this;
+ }
+
+ /** @param referenceTime refrence time used for interpreting relatives dates */
+ public Options setReferenceTime(@Nullable ZonedDateTime referenceTime) {
+ mReferenceTime = referenceTime;
+ return this;
+ }
+
+ @Nullable
+ public LocaleList getDefaultLocales() {
+ return mDefaultLocales;
+ }
+
+ @Nullable
+ public ZonedDateTime getReferenceTime() {
+ return mReferenceTime;
+ }
+
+ @Nullable
+ public Request getRequest() {
+ return mRequest;
+ }
+
+ @Nullable
+ public TextClassificationSessionId getSessionId() {
+ return mSessionId;
+ }
+ }
}