1/**
2 * @file Describe the file
3 * Copyright (c) 2023 Huawei Device Co., Ltd.
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
17import data_rdb from '@ohos.data.relationalStore';
18import { Events } from './Events';
19import { EventIndexes } from './EventIndexes';
20
21/**
22 * parse all columns for table Events
23 *
24 * @param resultSet the result from somewhere rdb.query
25 */
26export function parseEvents(resultSet: data_rdb.ResultSet, indexes: EventIndexes | undefined): Events | undefined {
27  if (resultSet === null || resultSet === undefined || indexes === null || indexes === undefined) {
28    return undefined;
29  }
30  let event: Events = new Events();
31  if (indexes.idIndex >= 0) {
32    event.id = resultSet.getLong(indexes.idIndex);
33  }
34  if (indexes.syncIdIndex >= 0) {
35    event.syncId = resultSet.getString(indexes.syncIdIndex);
36  }
37  if (indexes.dirtyIndex >= 0) {
38    event.dirty = resultSet.getLong(indexes.dirtyIndex);
39  }
40  if (indexes.mutatorsIndex >= 0) {
41    event.mutators = resultSet.getString(indexes.mutatorsIndex);
42  }
43  if (indexes.calendarTypeIndex >= 0) {
44    event.calendarType = resultSet.getLong(indexes.calendarTypeIndex);
45  }
46  if (indexes.imageTypeIndex >= 0) {
47    event.imageType = resultSet.getString(indexes.imageTypeIndex);
48  }
49  if (indexes.lastSyncedIndex >= 0) {
50    event.lastSynced = resultSet.getLong(indexes.lastSyncedIndex);
51  }
52  if (indexes.calendarIdIndex >= 0) {
53    event.calendarId = resultSet.getLong(indexes.calendarIdIndex);
54  }
55  if (indexes.titleIndex >= 0) {
56    event.title = resultSet.getString(indexes.titleIndex);
57  }
58  if (indexes.eventLocationIndex >= 0) {
59    event.eventLocation = resultSet.getString(indexes.eventLocationIndex);
60  }
61  if (indexes.longitudeIndex >= 0) {
62    event.longitude = resultSet.getString(indexes.longitudeIndex);
63  }
64  if (indexes.latitudeIndex >= 0) {
65    event.latitude = resultSet.getString(indexes.latitudeIndex);
66  }
67  if (indexes.descriptionIndex >= 0) {
68    event.description = resultSet.getString(indexes.descriptionIndex);
69  }
70  if (indexes.eventColorIndex >= 0) {
71    event.eventColor = resultSet.getLong(indexes.eventColorIndex);
72  }
73  if (indexes.eventColorIndexIndex >= 0) {
74    event.eventColorIndex = resultSet.getString(indexes.eventColorIndexIndex);
75  }
76  if (indexes.eventStatusIndex >= 0) {
77    event.eventStatus = resultSet.getLong(indexes.eventStatusIndex);
78  }
79  if (indexes.selfAttendeeStatusIndex >= 0) {
80    event.selfAttendeeStatus = resultSet.getLong(indexes.selfAttendeeStatusIndex);
81  }
82  if (indexes.dtStartIndex >= 0) {
83    event.dtStart = resultSet.getLong(indexes.dtStartIndex);
84  }
85  if (indexes.dtEndIndex >= 0) {
86    event.dtEnd = resultSet.getLong(indexes.dtEndIndex);
87  }
88  if (indexes.eventTimeZoneIndex >= 0) {
89    event.eventTimeZone = resultSet.getString(indexes.eventTimeZoneIndex);
90  }
91  if (indexes.durationIndex >= 0) {
92    event.duration = resultSet.getString(indexes.durationIndex);
93  }
94  if (indexes.allDayIndex >= 0) {
95    event.allDay = resultSet.getLong(indexes.allDayIndex);
96  }
97  if (indexes.accessLevelIndex >= 0) {
98    event.accessLevel = resultSet.getLong(indexes.accessLevelIndex);
99  }
100  if (indexes.availabilityIndex >= 0) {
101    event.availability = resultSet.getLong(indexes.availabilityIndex);
102  }
103  if (indexes.hasAlarmIndex >= 0) {
104    event.hasAlarm = resultSet.getLong(indexes.hasAlarmIndex);
105  }
106  if (indexes.hasExtendedPropertiesIndex >= 0) {
107    event.hasExtendedProperties = resultSet.getLong(indexes.hasExtendedPropertiesIndex);
108  }
109  if (indexes.rRuleIndex >= 0) {
110    event.rRule = resultSet.getString(indexes.rRuleIndex);
111  }
112  if (indexes.rDateIndex >= 0) {
113    event.rDate = resultSet.getString(indexes.rDateIndex);
114  }
115  if (indexes.exRuleIndex >= 0) {
116    event.exRule = resultSet.getString(indexes.exRuleIndex);
117  }
118  if (indexes.exDateIndex >= 0) {
119    event.exDate = resultSet.getString(indexes.exDateIndex);
120  }
121  if (indexes.originalIdIndex >= 0) {
122    event.originalId = resultSet.getLong(indexes.originalIdIndex);
123  }
124  if (indexes.originalSyncIdIndex >= 0) {
125    event.originalSyncId = resultSet.getString(indexes.originalSyncIdIndex);
126  }
127  if (indexes.originalInstanceTimeIndex >= 0) {
128    event.originalInstanceTime = resultSet.getLong(indexes.originalInstanceTimeIndex);
129  }
130  if (indexes.originalAllDayIndex >= 0) {
131    event.originalAllDay = resultSet.getLong(indexes.originalAllDayIndex);
132  }
133  if (indexes.lastDateIndex >= 0) {
134    event.lastDate = resultSet.getLong(indexes.lastDateIndex);
135  }
136  if (indexes.eventTimeStampIndex >= 0) {
137    event.eventTimeStamp = resultSet.getLong(indexes.eventTimeStampIndex);
138  }
139  if (indexes.hasAttendeeDataIndex >= 0) {
140    event.hasAttendeeData = resultSet.getLong(indexes.hasAttendeeDataIndex);
141  }
142  if (indexes.guestsCanModifyIndex >= 0) {
143    event.guestsCanModify = resultSet.getLong(indexes.guestsCanModifyIndex);
144  }
145  if (indexes.guestsCanInviteOthersIndex >= 0) {
146    event.guestsCanInviteOthers = resultSet.getLong(indexes.guestsCanInviteOthersIndex);
147  }
148  if (indexes.guestsCanSeeGuestsIndex >= 0) {
149    event.guestsCanSeeGuests = resultSet.getLong(indexes.guestsCanSeeGuestsIndex);
150  }
151  if (indexes.organizerIndex >= 0) {
152    event.organizer = resultSet.getString(indexes.organizerIndex);
153  }
154  if (indexes.isOrganizerIndex >= 0) {
155    event.isOrganizer = resultSet.getLong(indexes.isOrganizerIndex);
156  }
157  if (indexes.deletedIndex >= 0) {
158    event.deleted = resultSet.getLong(indexes.deletedIndex);
159  }
160  if (indexes.eventEndTimezoneIndex >= 0) {
161    event.eventEndTimezone = resultSet.getString(indexes.eventEndTimezoneIndex);
162  }
163  if (indexes.customAppPackageIndex >= 0) {
164    event.customAppPackage = resultSet.getString(indexes.customAppPackageIndex);
165  }
166  if (indexes.customAppUriIndex >= 0) {
167    event.customAppUri = resultSet.getString(indexes.customAppUriIndex);
168  }
169  if (indexes.uid2445Index >= 0) {
170    event.uid2445 = resultSet.getString(indexes.uid2445Index);
171  }
172  if (indexes.versionIndex >= 0) {
173    event.version = resultSet.getLong(indexes.versionIndex);
174  }
175  if (indexes.eventUuidIndex >= 0) {
176    event.eventUuid = resultSet.getString(indexes.eventUuidIndex);
177  }
178  if (indexes.hwExtAlertTypeIndex >= 0) {
179    event.hwExtAlertType = resultSet.getLong(indexes.hwExtAlertTypeIndex);
180  }
181  if (indexes.importantEventTypeIndex >= 0) {
182    event.importantEventType = resultSet.getLong(indexes.importantEventTypeIndex);
183  }
184  if (indexes.serviceVerifiedIndex >= 0) {
185    event.serviceVerified = resultSet.getLong(indexes.serviceVerifiedIndex);
186  }
187  if (indexes.serviceTypeIndex >= 0) {
188    event.serviceType = resultSet.getString(indexes.serviceTypeIndex);
189  }
190  if (indexes.serviceCpBzUriIndex >= 0) {
191    event.serviceCpBzUri = resultSet.getString(indexes.serviceCpBzUriIndex);
192  }
193  if (indexes.serviceCpMngUriIndex >= 0) {
194    event.serviceCpMngUri = resultSet.getString(indexes.serviceCpMngUriIndex);
195  }
196  if (indexes.serviceDescriptionIndex >= 0) {
197    event.serviceDescription = resultSet.getString(indexes.serviceDescriptionIndex);
198  }
199  if (indexes.serviceSupportMinVersionIndex >= 0) {
200    event.serviceSupportMinVersion = resultSet.getLong(indexes.serviceSupportMinVersionIndex);
201  }
202  if (indexes.syncData1Index >= 0) {
203    event.syncData1 = resultSet.getString(indexes.syncData1Index);
204  }
205  if (indexes.syncData2Index >= 0) {
206    event.syncData1 = resultSet.getString(indexes.syncData2Index);
207  }
208  if (indexes.syncData3Index >= 0) {
209    event.syncData3 = resultSet.getString(indexes.syncData3Index);
210  }
211  if (indexes.syncData4Index >= 0) {
212    event.syncData4 = resultSet.getString(indexes.syncData4Index);
213  }
214  if (indexes.syncData5Index >= 0) {
215    event.syncData5 = resultSet.getString(indexes.syncData5Index);
216  }
217  if (indexes.syncData6Index >= 0) {
218    event.syncData6 = resultSet.getString(indexes.syncData6Index);
219  }
220  if (indexes.syncData7Index >= 0) {
221    event.syncData7 = resultSet.getString(indexes.syncData7Index);
222  }
223  if (indexes.syncData8Index >= 0) {
224    event.syncData8 = resultSet.getString(indexes.syncData8Index);
225  }
226  if (indexes.syncData9Index >= 0) {
227    event.syncData9 = resultSet.getString(indexes.syncData9Index);
228  }
229  if (indexes.syncData10Index >= 0) {
230    event.syncData10 = resultSet.getString(indexes.syncData10Index);
231  }
232  if (indexes.kvSyncedIndex >= 0) {
233    event.kvSynced = resultSet.getLong(indexes.kvSyncedIndex);
234  }
235  if (indexes.kvSyncTimeIndex >= 0) {
236    event.kvSyncTime = resultSet.getLong(indexes.kvSyncTimeIndex);
237  }
238  if (indexes.creatorIndex >= 0) {
239    event.creator = resultSet.getString(indexes.creatorIndex);
240  }
241  return event;
242}