1 /*
2  * Copyright 2023 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package androidx.appsearch.safeparcel.stub;
17 
18 import androidx.annotation.RestrictTo;
19 import androidx.appsearch.app.AppSearchBlobHandle;
20 import androidx.appsearch.app.AppSearchSchema;
21 import androidx.appsearch.app.CommitBlobResponse;
22 import androidx.appsearch.app.EmbeddingVector;
23 import androidx.appsearch.app.GetByDocumentIdRequest;
24 import androidx.appsearch.app.GetSchemaResponse;
25 import androidx.appsearch.app.InternalSetSchemaResponse;
26 import androidx.appsearch.app.InternalVisibilityConfig;
27 import androidx.appsearch.app.JoinSpec;
28 import androidx.appsearch.app.OpenBlobForReadResponse;
29 import androidx.appsearch.app.OpenBlobForWriteResponse;
30 import androidx.appsearch.app.RemoveBlobResponse;
31 import androidx.appsearch.app.RemoveByDocumentIdRequest;
32 import androidx.appsearch.app.ReportUsageRequest;
33 import androidx.appsearch.app.SchemaVisibilityConfig;
34 import androidx.appsearch.app.SearchResult;
35 import androidx.appsearch.app.SearchResult.EmbeddingMatchInfo;
36 import androidx.appsearch.app.SearchResult.MatchInfo;
37 import androidx.appsearch.app.SearchResult.MatchRange;
38 import androidx.appsearch.app.SearchResult.TextMatchInfo;
39 import androidx.appsearch.app.SearchResultPage;
40 import androidx.appsearch.app.SearchSpec;
41 import androidx.appsearch.app.SearchSuggestionResult;
42 import androidx.appsearch.app.SearchSuggestionSpec;
43 import androidx.appsearch.app.SetSchemaResponse;
44 import androidx.appsearch.app.SetSchemaResponse.MigrationFailure;
45 import androidx.appsearch.app.StorageInfo;
46 import androidx.appsearch.app.VisibilityPermissionConfig;
47 import androidx.appsearch.observer.ObserverSpec;
48 import androidx.appsearch.safeparcel.PropertyConfigParcel;
49 import androidx.appsearch.safeparcel.PropertyConfigParcel.DocumentIndexingConfigParcel;
50 import androidx.appsearch.safeparcel.PropertyConfigParcel.EmbeddingIndexingConfigParcel;
51 import androidx.appsearch.safeparcel.PropertyConfigParcel.IntegerIndexingConfigParcel;
52 import androidx.appsearch.safeparcel.PropertyConfigParcel.JoinableConfigParcel;
53 import androidx.appsearch.safeparcel.PropertyConfigParcel.StringIndexingConfigParcel;
54 import androidx.appsearch.stats.SchemaMigrationStats;
55 
56 /**
57  * Stub creators for any classes extending
58  * {@link androidx.appsearch.safeparcel.SafeParcelable}.
59  *
60  * <p>We don't have SafeParcelProcessor in Jetpack, so for each
61  * {@link androidx.appsearch.safeparcel.SafeParcelable}, a stub creator class needs to
62  * be provided for code sync purpose.
63  */
64 // @exportToFramework:skipFile()
65 @RestrictTo(RestrictTo.Scope.LIBRARY)
66 public class StubCreators {
67     /** Stub creator for {@link androidx.appsearch.app.StorageInfo}. */
68     public static class StorageInfoCreator extends AbstractCreator<StorageInfo> {
69     }
70 
71     /** Stub creator for {@link PropertyConfigParcel}. */
72     public static class PropertyConfigParcelCreator extends AbstractCreator<PropertyConfigParcel> {
73     }
74 
75     /**
76      * Stub creator for
77      * {@link PropertyConfigParcel.JoinableConfigParcel}.
78      */
79     public static class JoinableConfigParcelCreator extends AbstractCreator<JoinableConfigParcel> {
80     }
81 
82     /**
83      * Stub creator for
84      * {@link PropertyConfigParcel.StringIndexingConfigParcel}.
85      */
86     public static class StringIndexingConfigParcelCreator extends
87             AbstractCreator<StringIndexingConfigParcel> {
88     }
89 
90     /**
91      * Stub creator for
92      * {@link PropertyConfigParcel.IntegerIndexingConfigParcel}.
93      */
94     public static class IntegerIndexingConfigParcelCreator extends
95             AbstractCreator<IntegerIndexingConfigParcel> {
96     }
97 
98     /**
99      * Stub creator for
100      * {@link PropertyConfigParcel.DocumentIndexingConfigParcel}.
101      */
102     public static class DocumentIndexingConfigParcelCreator extends
103             AbstractCreator<DocumentIndexingConfigParcel> {
104     }
105 
106     /** Stub creator for {@link SchemaVisibilityConfig}. */
107     public static class VisibilityConfigCreator extends AbstractCreator<SchemaVisibilityConfig> {
108     }
109 
110     /**
111      * Stub creator for {@link EmbeddingIndexingConfigParcel}.
112      */
113     public static class EmbeddingIndexingConfigParcelCreator extends
114             AbstractCreator<EmbeddingIndexingConfigParcel> {
115     }
116 
117     /** Stub creator for {@link InternalVisibilityConfig}. */
118     public static class InternalVisibilityConfigCreator
119             extends AbstractCreator<InternalVisibilityConfig> {
120     }
121 
122     /** Stub creator for {@link VisibilityPermissionConfig}. */
123     public static class VisibilityPermissionConfigCreator extends
124             AbstractCreator<VisibilityPermissionConfig> {
125     }
126 
127     /** Stub creator for {@link androidx.appsearch.stats.SchemaMigrationStats}. */
128     public static class SchemaMigrationStatsCreator extends AbstractCreator<SchemaMigrationStats> {
129     }
130 
131     /** Stub creator for {@link androidx.appsearch.app.SearchSuggestionResult}. */
132     public static class SearchSuggestionResultCreator extends
133             AbstractCreator<SearchSuggestionResult> {
134     }
135 
136     /** Stub creator for {@link androidx.appsearch.app.SearchSuggestionSpec}. */
137     public static class SearchSuggestionSpecCreator extends AbstractCreator<SearchSuggestionSpec> {
138     }
139 
140     /** Stub creator for {@link androidx.appsearch.observer.ObserverSpec}. */
141     public static class ObserverSpecCreator extends AbstractCreator<ObserverSpec> {
142     }
143 
144     /** Stub creator for {@link androidx.appsearch.app.SetSchemaResponse}. */
145     public static class SetSchemaResponseCreator extends
146             AbstractCreator<SetSchemaResponse> {
147     }
148 
149     /** Stub creator for {@link androidx.appsearch.app.SetSchemaResponse.MigrationFailure}. */
150     public static class MigrationFailureCreator extends
151             AbstractCreator<MigrationFailure> {
152     }
153 
154     /** Stub creator for {@link androidx.appsearch.app.InternalSetSchemaResponse}. */
155     public static class InternalSetSchemaResponseCreator extends
156             AbstractCreator<InternalSetSchemaResponse> {
157     }
158 
159     /** Stub creator for {@link androidx.appsearch.app.SearchSpec}. */
160     public static class SearchSpecCreator extends AbstractCreator<SearchSpec> {
161     }
162 
163     /** Stub creator for {@link androidx.appsearch.app.JoinSpec}. */
164     public static class JoinSpecCreator extends AbstractCreator<JoinSpec> {
165     }
166 
167     /** Stub creator for {@link androidx.appsearch.app.GetSchemaResponse}. */
168     public static class GetSchemaResponseCreator extends AbstractCreator<GetSchemaResponse> {
169     }
170 
171     /** Stub creator for {@link androidx.appsearch.app.AppSearchSchema}. */
172     public static class AppSearchSchemaCreator extends
173             AbstractCreator<AppSearchSchema> {
174     }
175 
176     /** Stub creator for {@link androidx.appsearch.app.SearchResult}. */
177     public static class SearchResultCreator extends AbstractCreator<SearchResult> {
178     }
179 
180     /** Stub creator for {@link androidx.appsearch.app.SearchResult.MatchInfo}. */
181     public static class MatchInfoCreator extends AbstractCreator<MatchInfo> {
182     }
183 
184     /** Stub creator for {@link androidx.appsearch.app.SearchResult.TextMatchInfo}. */
185     public static class TextMatchInfoCreator extends AbstractCreator<TextMatchInfo> {
186     }
187 
188     /** Stub creator for {@link androidx.appsearch.app.SearchResult.EmbeddingMatchInfo}. */
189     public static class EmbeddingMatchInfoCreator extends AbstractCreator<EmbeddingMatchInfo> {
190     }
191 
192     /** Stub creator for {@link androidx.appsearch.app.SearchResult.MatchRange}. */
193     public static class MatchRangeCreator extends AbstractCreator<MatchRange> {
194     }
195 
196     /** Stub creator for {@link androidx.appsearch.app.SearchResultPage}. */
197     public static class SearchResultPageCreator extends AbstractCreator<SearchResultPage> {
198     }
199 
200     /** Stub creator for {@link androidx.appsearch.app.RemoveByDocumentIdRequest}. */
201     public static class RemoveByDocumentIdRequestCreator extends
202             AbstractCreator<RemoveByDocumentIdRequest> {
203     }
204 
205     /** Stub creator for {@link androidx.appsearch.app.ReportUsageRequest}. */
206     public static class ReportUsageRequestCreator extends AbstractCreator<ReportUsageRequest> {
207     }
208 
209     /** Stub creator for {@link androidx.appsearch.app.GetByDocumentIdRequest}. */
210     public static class GetByDocumentIdRequestCreator extends
211             AbstractCreator<GetByDocumentIdRequest> {
212     }
213 
214     /** Stub creator for {@link EmbeddingVector}. */
215     public static class EmbeddingVectorCreator extends
216             AbstractCreator<EmbeddingVector> {
217     }
218 
219     /** Stub creator for {@link androidx.appsearch.app.AppSearchBlobHandle}. */
220     public static class AppSearchBlobHandleCreator extends
221             AbstractCreator<AppSearchBlobHandle> {
222     }
223 
224     /** Stub creator for {@link OpenBlobForWriteResponse}. */
225     public static class OpenBlobForWriteResponseCreator extends
226             AbstractCreator<OpenBlobForWriteResponse> {
227     }
228 
229     /** Stub creator for {@link CommitBlobResponse}. */
230     public static class CommitBlobResponseCreator extends
231             AbstractCreator<CommitBlobResponse> {
232     }
233 
234     /** Stub creator for {@link OpenBlobForReadResponse}. */
235     public static class OpenBlobForReadResponseCreator extends
236             AbstractCreator<OpenBlobForReadResponse> {
237     }
238 
239     /** Stub creator for {@link RemoveBlobResponse}. */
240     public static class RemoveBlobResponseCreator extends
241             AbstractCreator<RemoveBlobResponse> {
242     }
243 }
244