1 // This file was automatically generated by protocompiler
3 // Compiled from C2Metric.proto
5 #import "SECC2MPNetworkEvent.h"
6 #import <ProtocolBuffer/PBConstants.h>
7 #import <ProtocolBuffer/PBHashUtil.h>
8 #import <ProtocolBuffer/PBDataReader.h>
10 #import "SECC2MPError.h"
12 #if !__has_feature(objc_arc)
13 # error This generated file depends on ARC but it is not enabled; turn on ARC, or use 'objc_use_arc' option to generate non-ARC code.
16 @implementation SECC2MPNetworkEvent
18 @synthesize triggers = _triggers;
19 - (void)setTriggers:(uint64_t)v
24 - (void)setHasTriggers:(BOOL)f
32 @synthesize reportFrequency = _reportFrequency;
33 - (void)setReportFrequency:(uint64_t)v
35 _has.reportFrequency = YES;
38 - (void)setHasReportFrequency:(BOOL)f
40 _has.reportFrequency = f;
42 - (BOOL)hasReportFrequency
44 return _has.reportFrequency;
46 @synthesize reportFrequencyBase = _reportFrequencyBase;
47 - (void)setReportFrequencyBase:(uint64_t)v
49 _has.reportFrequencyBase = YES;
50 _reportFrequencyBase = v;
52 - (void)setHasReportFrequencyBase:(BOOL)f
54 _has.reportFrequencyBase = f;
56 - (BOOL)hasReportFrequencyBase
58 return _has.reportFrequencyBase;
60 - (BOOL)hasNetworkTaskDescription
62 return _networkTaskDescription != nil;
64 @synthesize networkTaskDescription = _networkTaskDescription;
65 - (BOOL)hasNetworkHostname
67 return _networkHostname != nil;
69 @synthesize networkHostname = _networkHostname;
70 - (BOOL)hasNetworkRemoteAddresssAndPort
72 return _networkRemoteAddresssAndPort != nil;
74 @synthesize networkRemoteAddresssAndPort = _networkRemoteAddresssAndPort;
75 - (BOOL)hasNetworkConnectionUuid
77 return _networkConnectionUuid != nil;
79 @synthesize networkConnectionUuid = _networkConnectionUuid;
80 @synthesize networkConnectionReused = _networkConnectionReused;
81 - (void)setNetworkConnectionReused:(BOOL)v
83 _has.networkConnectionReused = YES;
84 _networkConnectionReused = v;
86 - (void)setHasNetworkConnectionReused:(BOOL)f
88 _has.networkConnectionReused = f;
90 - (BOOL)hasNetworkConnectionReused
92 return _has.networkConnectionReused;
94 - (BOOL)hasNetworkInterfaceIdentifier
96 return _networkInterfaceIdentifier != nil;
98 @synthesize networkInterfaceIdentifier = _networkInterfaceIdentifier;
99 - (BOOL)hasNetworkProtocolName
101 return _networkProtocolName != nil;
103 @synthesize networkProtocolName = _networkProtocolName;
104 @synthesize networkRequestHeaderSize = _networkRequestHeaderSize;
105 - (void)setNetworkRequestHeaderSize:(uint32_t)v
107 _has.networkRequestHeaderSize = YES;
108 _networkRequestHeaderSize = v;
110 - (void)setHasNetworkRequestHeaderSize:(BOOL)f
112 _has.networkRequestHeaderSize = f;
114 - (BOOL)hasNetworkRequestHeaderSize
116 return _has.networkRequestHeaderSize;
118 @synthesize networkRequestBodyBytesSent = _networkRequestBodyBytesSent;
119 - (void)setNetworkRequestBodyBytesSent:(uint64_t)v
121 _has.networkRequestBodyBytesSent = YES;
122 _networkRequestBodyBytesSent = v;
124 - (void)setHasNetworkRequestBodyBytesSent:(BOOL)f
126 _has.networkRequestBodyBytesSent = f;
128 - (BOOL)hasNetworkRequestBodyBytesSent
130 return _has.networkRequestBodyBytesSent;
132 @synthesize networkResponseHeaderSize = _networkResponseHeaderSize;
133 - (void)setNetworkResponseHeaderSize:(uint32_t)v
135 _has.networkResponseHeaderSize = YES;
136 _networkResponseHeaderSize = v;
138 - (void)setHasNetworkResponseHeaderSize:(BOOL)f
140 _has.networkResponseHeaderSize = f;
142 - (BOOL)hasNetworkResponseHeaderSize
144 return _has.networkResponseHeaderSize;
146 @synthesize networkResponseBodyBytesReceived = _networkResponseBodyBytesReceived;
147 - (void)setNetworkResponseBodyBytesReceived:(uint64_t)v
149 _has.networkResponseBodyBytesReceived = YES;
150 _networkResponseBodyBytesReceived = v;
152 - (void)setHasNetworkResponseBodyBytesReceived:(BOOL)f
154 _has.networkResponseBodyBytesReceived = f;
156 - (BOOL)hasNetworkResponseBodyBytesReceived
158 return _has.networkResponseBodyBytesReceived;
160 @synthesize networkPreviousAttemptCount = _networkPreviousAttemptCount;
161 - (void)setNetworkPreviousAttemptCount:(uint32_t)v
163 _has.networkPreviousAttemptCount = YES;
164 _networkPreviousAttemptCount = v;
166 - (void)setHasNetworkPreviousAttemptCount:(BOOL)f
168 _has.networkPreviousAttemptCount = f;
170 - (BOOL)hasNetworkPreviousAttemptCount
172 return _has.networkPreviousAttemptCount;
174 - (BOOL)hasNetworkFatalError
176 return _networkFatalError != nil;
178 @synthesize networkFatalError = _networkFatalError;
179 @synthesize networkStatusCode = _networkStatusCode;
180 - (void)setNetworkStatusCode:(uint64_t)v
182 _has.networkStatusCode = YES;
183 _networkStatusCode = v;
185 - (void)setHasNetworkStatusCode:(BOOL)f
187 _has.networkStatusCode = f;
189 - (BOOL)hasNetworkStatusCode
191 return _has.networkStatusCode;
193 - (BOOL)hasNetworkRequestUri
195 return _networkRequestUri != nil;
197 @synthesize networkRequestUri = _networkRequestUri;
198 @synthesize timestampC2Init = _timestampC2Init;
199 - (void)setTimestampC2Init:(uint64_t)v
201 _has.timestampC2Init = YES;
202 _timestampC2Init = v;
204 - (void)setHasTimestampC2Init:(BOOL)f
206 _has.timestampC2Init = f;
208 - (BOOL)hasTimestampC2Init
210 return _has.timestampC2Init;
212 @synthesize timestampC2Start = _timestampC2Start;
213 - (void)setTimestampC2Start:(uint64_t)v
215 _has.timestampC2Start = YES;
216 _timestampC2Start = v;
218 - (void)setHasTimestampC2Start:(BOOL)f
220 _has.timestampC2Start = f;
222 - (BOOL)hasTimestampC2Start
224 return _has.timestampC2Start;
226 @synthesize timestampC2Now = _timestampC2Now;
227 - (void)setTimestampC2Now:(uint64_t)v
229 _has.timestampC2Now = YES;
232 - (void)setHasTimestampC2Now:(BOOL)f
234 _has.timestampC2Now = f;
236 - (BOOL)hasTimestampC2Now
238 return _has.timestampC2Now;
240 @synthesize timestampDnsStart = _timestampDnsStart;
241 - (void)setTimestampDnsStart:(uint64_t)v
243 _has.timestampDnsStart = YES;
244 _timestampDnsStart = v;
246 - (void)setHasTimestampDnsStart:(BOOL)f
248 _has.timestampDnsStart = f;
250 - (BOOL)hasTimestampDnsStart
252 return _has.timestampDnsStart;
254 @synthesize timestampDnsEnd = _timestampDnsEnd;
255 - (void)setTimestampDnsEnd:(uint64_t)v
257 _has.timestampDnsEnd = YES;
258 _timestampDnsEnd = v;
260 - (void)setHasTimestampDnsEnd:(BOOL)f
262 _has.timestampDnsEnd = f;
264 - (BOOL)hasTimestampDnsEnd
266 return _has.timestampDnsEnd;
268 @synthesize timestampTcpStart = _timestampTcpStart;
269 - (void)setTimestampTcpStart:(uint64_t)v
271 _has.timestampTcpStart = YES;
272 _timestampTcpStart = v;
274 - (void)setHasTimestampTcpStart:(BOOL)f
276 _has.timestampTcpStart = f;
278 - (BOOL)hasTimestampTcpStart
280 return _has.timestampTcpStart;
282 @synthesize timestampTcpEnd = _timestampTcpEnd;
283 - (void)setTimestampTcpEnd:(uint64_t)v
285 _has.timestampTcpEnd = YES;
286 _timestampTcpEnd = v;
288 - (void)setHasTimestampTcpEnd:(BOOL)f
290 _has.timestampTcpEnd = f;
292 - (BOOL)hasTimestampTcpEnd
294 return _has.timestampTcpEnd;
296 @synthesize timestampSslStart = _timestampSslStart;
297 - (void)setTimestampSslStart:(uint64_t)v
299 _has.timestampSslStart = YES;
300 _timestampSslStart = v;
302 - (void)setHasTimestampSslStart:(BOOL)f
304 _has.timestampSslStart = f;
306 - (BOOL)hasTimestampSslStart
308 return _has.timestampSslStart;
310 @synthesize timestampRequestStart = _timestampRequestStart;
311 - (void)setTimestampRequestStart:(uint64_t)v
313 _has.timestampRequestStart = YES;
314 _timestampRequestStart = v;
316 - (void)setHasTimestampRequestStart:(BOOL)f
318 _has.timestampRequestStart = f;
320 - (BOOL)hasTimestampRequestStart
322 return _has.timestampRequestStart;
324 @synthesize timestampRequestEnd = _timestampRequestEnd;
325 - (void)setTimestampRequestEnd:(uint64_t)v
327 _has.timestampRequestEnd = YES;
328 _timestampRequestEnd = v;
330 - (void)setHasTimestampRequestEnd:(BOOL)f
332 _has.timestampRequestEnd = f;
334 - (BOOL)hasTimestampRequestEnd
336 return _has.timestampRequestEnd;
338 @synthesize timestampResponseStart = _timestampResponseStart;
339 - (void)setTimestampResponseStart:(uint64_t)v
341 _has.timestampResponseStart = YES;
342 _timestampResponseStart = v;
344 - (void)setHasTimestampResponseStart:(BOOL)f
346 _has.timestampResponseStart = f;
348 - (BOOL)hasTimestampResponseStart
350 return _has.timestampResponseStart;
352 @synthesize timestampResponseEnd = _timestampResponseEnd;
353 - (void)setTimestampResponseEnd:(uint64_t)v
355 _has.timestampResponseEnd = YES;
356 _timestampResponseEnd = v;
358 - (void)setHasTimestampResponseEnd:(BOOL)f
360 _has.timestampResponseEnd = f;
362 - (BOOL)hasTimestampResponseEnd
364 return _has.timestampResponseEnd;
366 - (BOOL)hasOptionsQualityOfService
368 return _optionsQualityOfService != nil;
370 @synthesize optionsQualityOfService = _optionsQualityOfService;
371 @synthesize optionsOutOfProcess = _optionsOutOfProcess;
372 - (void)setOptionsOutOfProcess:(BOOL)v
374 _has.optionsOutOfProcess = YES;
375 _optionsOutOfProcess = v;
377 - (void)setHasOptionsOutOfProcess:(BOOL)f
379 _has.optionsOutOfProcess = f;
381 - (BOOL)hasOptionsOutOfProcess
383 return _has.optionsOutOfProcess;
385 @synthesize optionsOutOfProcessForceDiscretionary = _optionsOutOfProcessForceDiscretionary;
386 - (void)setOptionsOutOfProcessForceDiscretionary:(BOOL)v
388 _has.optionsOutOfProcessForceDiscretionary = YES;
389 _optionsOutOfProcessForceDiscretionary = v;
391 - (void)setHasOptionsOutOfProcessForceDiscretionary:(BOOL)f
393 _has.optionsOutOfProcessForceDiscretionary = f;
395 - (BOOL)hasOptionsOutOfProcessForceDiscretionary
397 return _has.optionsOutOfProcessForceDiscretionary;
399 @synthesize optionsAllowExpensiveAccess = _optionsAllowExpensiveAccess;
400 - (void)setOptionsAllowExpensiveAccess:(BOOL)v
402 _has.optionsAllowExpensiveAccess = YES;
403 _optionsAllowExpensiveAccess = v;
405 - (void)setHasOptionsAllowExpensiveAccess:(BOOL)f
407 _has.optionsAllowExpensiveAccess = f;
409 - (BOOL)hasOptionsAllowExpensiveAccess
411 return _has.optionsAllowExpensiveAccess;
413 @synthesize optionsAllowPowerNapScheduling = _optionsAllowPowerNapScheduling;
414 - (void)setOptionsAllowPowerNapScheduling:(BOOL)v
416 _has.optionsAllowPowerNapScheduling = YES;
417 _optionsAllowPowerNapScheduling = v;
419 - (void)setHasOptionsAllowPowerNapScheduling:(BOOL)f
421 _has.optionsAllowPowerNapScheduling = f;
423 - (BOOL)hasOptionsAllowPowerNapScheduling
425 return _has.optionsAllowPowerNapScheduling;
427 @synthesize optionsTimeoutIntervalForRequest = _optionsTimeoutIntervalForRequest;
428 - (void)setOptionsTimeoutIntervalForRequest:(uint32_t)v
430 _has.optionsTimeoutIntervalForRequest = YES;
431 _optionsTimeoutIntervalForRequest = v;
433 - (void)setHasOptionsTimeoutIntervalForRequest:(BOOL)f
435 _has.optionsTimeoutIntervalForRequest = f;
437 - (BOOL)hasOptionsTimeoutIntervalForRequest
439 return _has.optionsTimeoutIntervalForRequest;
441 @synthesize optionsTimeoutIntervalForResource = _optionsTimeoutIntervalForResource;
442 - (void)setOptionsTimeoutIntervalForResource:(uint32_t)v
444 _has.optionsTimeoutIntervalForResource = YES;
445 _optionsTimeoutIntervalForResource = v;
447 - (void)setHasOptionsTimeoutIntervalForResource:(BOOL)f
449 _has.optionsTimeoutIntervalForResource = f;
451 - (BOOL)hasOptionsTimeoutIntervalForResource
453 return _has.optionsTimeoutIntervalForResource;
455 - (BOOL)hasOptionsSourceApplicationBundleIdentifier
457 return _optionsSourceApplicationBundleIdentifier != nil;
459 @synthesize optionsSourceApplicationBundleIdentifier = _optionsSourceApplicationBundleIdentifier;
460 - (BOOL)hasOptionsSourceApplicationSecondaryIdentifier
462 return _optionsSourceApplicationSecondaryIdentifier != nil;
464 @synthesize optionsSourceApplicationSecondaryIdentifier = _optionsSourceApplicationSecondaryIdentifier;
465 @synthesize optionsAppleIdContext = _optionsAppleIdContext;
466 - (void)setOptionsAppleIdContext:(BOOL)v
468 _has.optionsAppleIdContext = YES;
469 _optionsAppleIdContext = v;
471 - (void)setHasOptionsAppleIdContext:(BOOL)f
473 _has.optionsAppleIdContext = f;
475 - (BOOL)hasOptionsAppleIdContext
477 return _has.optionsAppleIdContext;
479 @synthesize optionsTlsPinningRequired = _optionsTlsPinningRequired;
480 - (void)setOptionsTlsPinningRequired:(BOOL)v
482 _has.optionsTlsPinningRequired = YES;
483 _optionsTlsPinningRequired = v;
485 - (void)setHasOptionsTlsPinningRequired:(BOOL)f
487 _has.optionsTlsPinningRequired = f;
489 - (BOOL)hasOptionsTlsPinningRequired
491 return _has.optionsTlsPinningRequired;
494 - (NSString *)description
496 return [NSString stringWithFormat:@"%@ %@", [super description], [self dictionaryRepresentation]];
499 - (NSDictionary *)dictionaryRepresentation
501 NSMutableDictionary *dict = [NSMutableDictionary dictionary];
502 if (self->_has.triggers)
504 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_triggers] forKey:@"triggers"];
506 if (self->_has.reportFrequency)
508 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_reportFrequency] forKey:@"report_frequency"];
510 if (self->_has.reportFrequencyBase)
512 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_reportFrequencyBase] forKey:@"report_frequency_base"];
514 if (self->_networkTaskDescription)
516 [dict setObject:self->_networkTaskDescription forKey:@"network_task_description"];
518 if (self->_networkHostname)
520 [dict setObject:self->_networkHostname forKey:@"network_hostname"];
522 if (self->_networkRemoteAddresssAndPort)
524 [dict setObject:self->_networkRemoteAddresssAndPort forKey:@"network_remote_addresss_and_port"];
526 if (self->_networkConnectionUuid)
528 [dict setObject:self->_networkConnectionUuid forKey:@"network_connection_uuid"];
530 if (self->_has.networkConnectionReused)
532 [dict setObject:[NSNumber numberWithBool:self->_networkConnectionReused] forKey:@"network_connection_reused"];
534 if (self->_networkInterfaceIdentifier)
536 [dict setObject:self->_networkInterfaceIdentifier forKey:@"network_interface_identifier"];
538 if (self->_networkProtocolName)
540 [dict setObject:self->_networkProtocolName forKey:@"network_protocol_name"];
542 if (self->_has.networkRequestHeaderSize)
544 [dict setObject:[NSNumber numberWithUnsignedInt:self->_networkRequestHeaderSize] forKey:@"network_request_header_size"];
546 if (self->_has.networkRequestBodyBytesSent)
548 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_networkRequestBodyBytesSent] forKey:@"network_request_body_bytes_sent"];
550 if (self->_has.networkResponseHeaderSize)
552 [dict setObject:[NSNumber numberWithUnsignedInt:self->_networkResponseHeaderSize] forKey:@"network_response_header_size"];
554 if (self->_has.networkResponseBodyBytesReceived)
556 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_networkResponseBodyBytesReceived] forKey:@"network_response_body_bytes_received"];
558 if (self->_has.networkPreviousAttemptCount)
560 [dict setObject:[NSNumber numberWithUnsignedInt:self->_networkPreviousAttemptCount] forKey:@"network_previous_attempt_count"];
562 if (self->_networkFatalError)
564 [dict setObject:[_networkFatalError dictionaryRepresentation] forKey:@"network_fatal_error"];
566 if (self->_has.networkStatusCode)
568 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_networkStatusCode] forKey:@"network_status_code"];
570 if (self->_networkRequestUri)
572 [dict setObject:self->_networkRequestUri forKey:@"network_request_uri"];
574 if (self->_has.timestampC2Init)
576 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampC2Init] forKey:@"timestamp_c2_init"];
578 if (self->_has.timestampC2Start)
580 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampC2Start] forKey:@"timestamp_c2_start"];
582 if (self->_has.timestampC2Now)
584 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampC2Now] forKey:@"timestamp_c2_now"];
586 if (self->_has.timestampDnsStart)
588 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampDnsStart] forKey:@"timestamp_dns_start"];
590 if (self->_has.timestampDnsEnd)
592 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampDnsEnd] forKey:@"timestamp_dns_end"];
594 if (self->_has.timestampTcpStart)
596 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampTcpStart] forKey:@"timestamp_tcp_start"];
598 if (self->_has.timestampTcpEnd)
600 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampTcpEnd] forKey:@"timestamp_tcp_end"];
602 if (self->_has.timestampSslStart)
604 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampSslStart] forKey:@"timestamp_ssl_start"];
606 if (self->_has.timestampRequestStart)
608 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampRequestStart] forKey:@"timestamp_request_start"];
610 if (self->_has.timestampRequestEnd)
612 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampRequestEnd] forKey:@"timestamp_request_end"];
614 if (self->_has.timestampResponseStart)
616 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampResponseStart] forKey:@"timestamp_response_start"];
618 if (self->_has.timestampResponseEnd)
620 [dict setObject:[NSNumber numberWithUnsignedLongLong:self->_timestampResponseEnd] forKey:@"timestamp_response_end"];
622 if (self->_optionsQualityOfService)
624 [dict setObject:self->_optionsQualityOfService forKey:@"options_quality_of_service"];
626 if (self->_has.optionsOutOfProcess)
628 [dict setObject:[NSNumber numberWithBool:self->_optionsOutOfProcess] forKey:@"options_out_of_process"];
630 if (self->_has.optionsOutOfProcessForceDiscretionary)
632 [dict setObject:[NSNumber numberWithBool:self->_optionsOutOfProcessForceDiscretionary] forKey:@"options_out_of_process_force_discretionary"];
634 if (self->_has.optionsAllowExpensiveAccess)
636 [dict setObject:[NSNumber numberWithBool:self->_optionsAllowExpensiveAccess] forKey:@"options_allow_expensive_access"];
638 if (self->_has.optionsAllowPowerNapScheduling)
640 [dict setObject:[NSNumber numberWithBool:self->_optionsAllowPowerNapScheduling] forKey:@"options_allow_power_nap_scheduling"];
642 if (self->_has.optionsTimeoutIntervalForRequest)
644 [dict setObject:[NSNumber numberWithUnsignedInt:self->_optionsTimeoutIntervalForRequest] forKey:@"options_timeout_interval_for_request"];
646 if (self->_has.optionsTimeoutIntervalForResource)
648 [dict setObject:[NSNumber numberWithUnsignedInt:self->_optionsTimeoutIntervalForResource] forKey:@"options_timeout_interval_for_resource"];
650 if (self->_optionsSourceApplicationBundleIdentifier)
652 [dict setObject:self->_optionsSourceApplicationBundleIdentifier forKey:@"options_source_application_bundle_identifier"];
654 if (self->_optionsSourceApplicationSecondaryIdentifier)
656 [dict setObject:self->_optionsSourceApplicationSecondaryIdentifier forKey:@"options_source_application_secondary_identifier"];
658 if (self->_has.optionsAppleIdContext)
660 [dict setObject:[NSNumber numberWithBool:self->_optionsAppleIdContext] forKey:@"options_apple_id_context"];
662 if (self->_has.optionsTlsPinningRequired)
664 [dict setObject:[NSNumber numberWithBool:self->_optionsTlsPinningRequired] forKey:@"options_tls_pinning_required"];
669 BOOL SECC2MPNetworkEventReadFrom(__unsafe_unretained SECC2MPNetworkEvent *self, __unsafe_unretained PBDataReader *reader) {
670 while (PBReaderHasMoreData(reader)) {
674 PBReaderReadTag32AndType(reader, &tag, &aType);
676 if (PBReaderHasError(reader))
679 if (aType == TYPE_END_GROUP) {
685 case 1 /* triggers */:
687 self->_has.triggers = YES;
688 self->_triggers = PBReaderReadUint64(reader);
691 case 2 /* reportFrequency */:
693 self->_has.reportFrequency = YES;
694 self->_reportFrequency = PBReaderReadUint64(reader);
697 case 3 /* reportFrequencyBase */:
699 self->_has.reportFrequencyBase = YES;
700 self->_reportFrequencyBase = PBReaderReadUint64(reader);
703 case 101 /* networkTaskDescription */:
705 NSString *new_networkTaskDescription = PBReaderReadString(reader);
706 self->_networkTaskDescription = new_networkTaskDescription;
709 case 102 /* networkHostname */:
711 NSString *new_networkHostname = PBReaderReadString(reader);
712 self->_networkHostname = new_networkHostname;
715 case 103 /* networkRemoteAddresssAndPort */:
717 NSString *new_networkRemoteAddresssAndPort = PBReaderReadString(reader);
718 self->_networkRemoteAddresssAndPort = new_networkRemoteAddresssAndPort;
721 case 104 /* networkConnectionUuid */:
723 NSString *new_networkConnectionUuid = PBReaderReadString(reader);
724 self->_networkConnectionUuid = new_networkConnectionUuid;
727 case 105 /* networkConnectionReused */:
729 self->_has.networkConnectionReused = YES;
730 self->_networkConnectionReused = PBReaderReadBOOL(reader);
733 case 106 /* networkInterfaceIdentifier */:
735 NSString *new_networkInterfaceIdentifier = PBReaderReadString(reader);
736 self->_networkInterfaceIdentifier = new_networkInterfaceIdentifier;
739 case 107 /* networkProtocolName */:
741 NSString *new_networkProtocolName = PBReaderReadString(reader);
742 self->_networkProtocolName = new_networkProtocolName;
745 case 108 /* networkRequestHeaderSize */:
747 self->_has.networkRequestHeaderSize = YES;
748 self->_networkRequestHeaderSize = PBReaderReadUint32(reader);
751 case 109 /* networkRequestBodyBytesSent */:
753 self->_has.networkRequestBodyBytesSent = YES;
754 self->_networkRequestBodyBytesSent = PBReaderReadUint64(reader);
757 case 110 /* networkResponseHeaderSize */:
759 self->_has.networkResponseHeaderSize = YES;
760 self->_networkResponseHeaderSize = PBReaderReadUint32(reader);
763 case 111 /* networkResponseBodyBytesReceived */:
765 self->_has.networkResponseBodyBytesReceived = YES;
766 self->_networkResponseBodyBytesReceived = PBReaderReadUint64(reader);
769 case 112 /* networkPreviousAttemptCount */:
771 self->_has.networkPreviousAttemptCount = YES;
772 self->_networkPreviousAttemptCount = PBReaderReadUint32(reader);
775 case 113 /* networkFatalError */:
777 SECC2MPError *new_networkFatalError = [[SECC2MPError alloc] init];
778 self->_networkFatalError = new_networkFatalError;
779 PBDataReaderMark mark_networkFatalError;
780 BOOL markError = !PBReaderPlaceMark(reader, &mark_networkFatalError);
785 BOOL inError = !SECC2MPErrorReadFrom(new_networkFatalError, reader);
790 PBReaderRecallMark(reader, &mark_networkFatalError);
793 case 114 /* networkStatusCode */:
795 self->_has.networkStatusCode = YES;
796 self->_networkStatusCode = PBReaderReadUint64(reader);
799 case 115 /* networkRequestUri */:
801 NSString *new_networkRequestUri = PBReaderReadString(reader);
802 self->_networkRequestUri = new_networkRequestUri;
805 case 201 /* timestampC2Init */:
807 self->_has.timestampC2Init = YES;
808 self->_timestampC2Init = PBReaderReadUint64(reader);
811 case 202 /* timestampC2Start */:
813 self->_has.timestampC2Start = YES;
814 self->_timestampC2Start = PBReaderReadUint64(reader);
817 case 203 /* timestampC2Now */:
819 self->_has.timestampC2Now = YES;
820 self->_timestampC2Now = PBReaderReadUint64(reader);
823 case 204 /* timestampDnsStart */:
825 self->_has.timestampDnsStart = YES;
826 self->_timestampDnsStart = PBReaderReadUint64(reader);
829 case 205 /* timestampDnsEnd */:
831 self->_has.timestampDnsEnd = YES;
832 self->_timestampDnsEnd = PBReaderReadUint64(reader);
835 case 206 /* timestampTcpStart */:
837 self->_has.timestampTcpStart = YES;
838 self->_timestampTcpStart = PBReaderReadUint64(reader);
841 case 207 /* timestampTcpEnd */:
843 self->_has.timestampTcpEnd = YES;
844 self->_timestampTcpEnd = PBReaderReadUint64(reader);
847 case 208 /* timestampSslStart */:
849 self->_has.timestampSslStart = YES;
850 self->_timestampSslStart = PBReaderReadUint64(reader);
853 case 209 /* timestampRequestStart */:
855 self->_has.timestampRequestStart = YES;
856 self->_timestampRequestStart = PBReaderReadUint64(reader);
859 case 210 /* timestampRequestEnd */:
861 self->_has.timestampRequestEnd = YES;
862 self->_timestampRequestEnd = PBReaderReadUint64(reader);
865 case 211 /* timestampResponseStart */:
867 self->_has.timestampResponseStart = YES;
868 self->_timestampResponseStart = PBReaderReadUint64(reader);
871 case 212 /* timestampResponseEnd */:
873 self->_has.timestampResponseEnd = YES;
874 self->_timestampResponseEnd = PBReaderReadUint64(reader);
877 case 301 /* optionsQualityOfService */:
879 NSString *new_optionsQualityOfService = PBReaderReadString(reader);
880 self->_optionsQualityOfService = new_optionsQualityOfService;
883 case 302 /* optionsOutOfProcess */:
885 self->_has.optionsOutOfProcess = YES;
886 self->_optionsOutOfProcess = PBReaderReadBOOL(reader);
889 case 303 /* optionsOutOfProcessForceDiscretionary */:
891 self->_has.optionsOutOfProcessForceDiscretionary = YES;
892 self->_optionsOutOfProcessForceDiscretionary = PBReaderReadBOOL(reader);
895 case 304 /* optionsAllowExpensiveAccess */:
897 self->_has.optionsAllowExpensiveAccess = YES;
898 self->_optionsAllowExpensiveAccess = PBReaderReadBOOL(reader);
901 case 305 /* optionsAllowPowerNapScheduling */:
903 self->_has.optionsAllowPowerNapScheduling = YES;
904 self->_optionsAllowPowerNapScheduling = PBReaderReadBOOL(reader);
907 case 306 /* optionsTimeoutIntervalForRequest */:
909 self->_has.optionsTimeoutIntervalForRequest = YES;
910 self->_optionsTimeoutIntervalForRequest = PBReaderReadUint32(reader);
913 case 307 /* optionsTimeoutIntervalForResource */:
915 self->_has.optionsTimeoutIntervalForResource = YES;
916 self->_optionsTimeoutIntervalForResource = PBReaderReadUint32(reader);
919 case 308 /* optionsSourceApplicationBundleIdentifier */:
921 NSString *new_optionsSourceApplicationBundleIdentifier = PBReaderReadString(reader);
922 self->_optionsSourceApplicationBundleIdentifier = new_optionsSourceApplicationBundleIdentifier;
925 case 309 /* optionsSourceApplicationSecondaryIdentifier */:
927 NSString *new_optionsSourceApplicationSecondaryIdentifier = PBReaderReadString(reader);
928 self->_optionsSourceApplicationSecondaryIdentifier = new_optionsSourceApplicationSecondaryIdentifier;
931 case 310 /* optionsAppleIdContext */:
933 self->_has.optionsAppleIdContext = YES;
934 self->_optionsAppleIdContext = PBReaderReadBOOL(reader);
937 case 311 /* optionsTlsPinningRequired */:
939 self->_has.optionsTlsPinningRequired = YES;
940 self->_optionsTlsPinningRequired = PBReaderReadBOOL(reader);
944 if (!PBReaderSkipValueWithTag(reader, tag, aType))
949 return !PBReaderHasError(reader);
952 - (BOOL)readFrom:(PBDataReader *)reader
954 return SECC2MPNetworkEventReadFrom(self, reader);
956 - (void)writeTo:(PBDataWriter *)writer
960 if (self->_has.triggers)
962 PBDataWriterWriteUint64Field(writer, self->_triggers, 1);
965 /* reportFrequency */
967 if (self->_has.reportFrequency)
969 PBDataWriterWriteUint64Field(writer, self->_reportFrequency, 2);
972 /* reportFrequencyBase */
974 if (self->_has.reportFrequencyBase)
976 PBDataWriterWriteUint64Field(writer, self->_reportFrequencyBase, 3);
979 /* networkTaskDescription */
981 if (self->_networkTaskDescription)
983 PBDataWriterWriteStringField(writer, self->_networkTaskDescription, 101);
986 /* networkHostname */
988 if (self->_networkHostname)
990 PBDataWriterWriteStringField(writer, self->_networkHostname, 102);
993 /* networkRemoteAddresssAndPort */
995 if (self->_networkRemoteAddresssAndPort)
997 PBDataWriterWriteStringField(writer, self->_networkRemoteAddresssAndPort, 103);
1000 /* networkConnectionUuid */
1002 if (self->_networkConnectionUuid)
1004 PBDataWriterWriteStringField(writer, self->_networkConnectionUuid, 104);
1007 /* networkConnectionReused */
1009 if (self->_has.networkConnectionReused)
1011 PBDataWriterWriteBOOLField(writer, self->_networkConnectionReused, 105);
1014 /* networkInterfaceIdentifier */
1016 if (self->_networkInterfaceIdentifier)
1018 PBDataWriterWriteStringField(writer, self->_networkInterfaceIdentifier, 106);
1021 /* networkProtocolName */
1023 if (self->_networkProtocolName)
1025 PBDataWriterWriteStringField(writer, self->_networkProtocolName, 107);
1028 /* networkRequestHeaderSize */
1030 if (self->_has.networkRequestHeaderSize)
1032 PBDataWriterWriteUint32Field(writer, self->_networkRequestHeaderSize, 108);
1035 /* networkRequestBodyBytesSent */
1037 if (self->_has.networkRequestBodyBytesSent)
1039 PBDataWriterWriteUint64Field(writer, self->_networkRequestBodyBytesSent, 109);
1042 /* networkResponseHeaderSize */
1044 if (self->_has.networkResponseHeaderSize)
1046 PBDataWriterWriteUint32Field(writer, self->_networkResponseHeaderSize, 110);
1049 /* networkResponseBodyBytesReceived */
1051 if (self->_has.networkResponseBodyBytesReceived)
1053 PBDataWriterWriteUint64Field(writer, self->_networkResponseBodyBytesReceived, 111);
1056 /* networkPreviousAttemptCount */
1058 if (self->_has.networkPreviousAttemptCount)
1060 PBDataWriterWriteUint32Field(writer, self->_networkPreviousAttemptCount, 112);
1063 /* networkFatalError */
1065 if (self->_networkFatalError != nil)
1067 PBDataWriterWriteSubmessage(writer, self->_networkFatalError, 113);
1070 /* networkStatusCode */
1072 if (self->_has.networkStatusCode)
1074 PBDataWriterWriteUint64Field(writer, self->_networkStatusCode, 114);
1077 /* networkRequestUri */
1079 if (self->_networkRequestUri)
1081 PBDataWriterWriteStringField(writer, self->_networkRequestUri, 115);
1084 /* timestampC2Init */
1086 if (self->_has.timestampC2Init)
1088 PBDataWriterWriteUint64Field(writer, self->_timestampC2Init, 201);
1091 /* timestampC2Start */
1093 if (self->_has.timestampC2Start)
1095 PBDataWriterWriteUint64Field(writer, self->_timestampC2Start, 202);
1098 /* timestampC2Now */
1100 if (self->_has.timestampC2Now)
1102 PBDataWriterWriteUint64Field(writer, self->_timestampC2Now, 203);
1105 /* timestampDnsStart */
1107 if (self->_has.timestampDnsStart)
1109 PBDataWriterWriteUint64Field(writer, self->_timestampDnsStart, 204);
1112 /* timestampDnsEnd */
1114 if (self->_has.timestampDnsEnd)
1116 PBDataWriterWriteUint64Field(writer, self->_timestampDnsEnd, 205);
1119 /* timestampTcpStart */
1121 if (self->_has.timestampTcpStart)
1123 PBDataWriterWriteUint64Field(writer, self->_timestampTcpStart, 206);
1126 /* timestampTcpEnd */
1128 if (self->_has.timestampTcpEnd)
1130 PBDataWriterWriteUint64Field(writer, self->_timestampTcpEnd, 207);
1133 /* timestampSslStart */
1135 if (self->_has.timestampSslStart)
1137 PBDataWriterWriteUint64Field(writer, self->_timestampSslStart, 208);
1140 /* timestampRequestStart */
1142 if (self->_has.timestampRequestStart)
1144 PBDataWriterWriteUint64Field(writer, self->_timestampRequestStart, 209);
1147 /* timestampRequestEnd */
1149 if (self->_has.timestampRequestEnd)
1151 PBDataWriterWriteUint64Field(writer, self->_timestampRequestEnd, 210);
1154 /* timestampResponseStart */
1156 if (self->_has.timestampResponseStart)
1158 PBDataWriterWriteUint64Field(writer, self->_timestampResponseStart, 211);
1161 /* timestampResponseEnd */
1163 if (self->_has.timestampResponseEnd)
1165 PBDataWriterWriteUint64Field(writer, self->_timestampResponseEnd, 212);
1168 /* optionsQualityOfService */
1170 if (self->_optionsQualityOfService)
1172 PBDataWriterWriteStringField(writer, self->_optionsQualityOfService, 301);
1175 /* optionsOutOfProcess */
1177 if (self->_has.optionsOutOfProcess)
1179 PBDataWriterWriteBOOLField(writer, self->_optionsOutOfProcess, 302);
1182 /* optionsOutOfProcessForceDiscretionary */
1184 if (self->_has.optionsOutOfProcessForceDiscretionary)
1186 PBDataWriterWriteBOOLField(writer, self->_optionsOutOfProcessForceDiscretionary, 303);
1189 /* optionsAllowExpensiveAccess */
1191 if (self->_has.optionsAllowExpensiveAccess)
1193 PBDataWriterWriteBOOLField(writer, self->_optionsAllowExpensiveAccess, 304);
1196 /* optionsAllowPowerNapScheduling */
1198 if (self->_has.optionsAllowPowerNapScheduling)
1200 PBDataWriterWriteBOOLField(writer, self->_optionsAllowPowerNapScheduling, 305);
1203 /* optionsTimeoutIntervalForRequest */
1205 if (self->_has.optionsTimeoutIntervalForRequest)
1207 PBDataWriterWriteUint32Field(writer, self->_optionsTimeoutIntervalForRequest, 306);
1210 /* optionsTimeoutIntervalForResource */
1212 if (self->_has.optionsTimeoutIntervalForResource)
1214 PBDataWriterWriteUint32Field(writer, self->_optionsTimeoutIntervalForResource, 307);
1217 /* optionsSourceApplicationBundleIdentifier */
1219 if (self->_optionsSourceApplicationBundleIdentifier)
1221 PBDataWriterWriteStringField(writer, self->_optionsSourceApplicationBundleIdentifier, 308);
1224 /* optionsSourceApplicationSecondaryIdentifier */
1226 if (self->_optionsSourceApplicationSecondaryIdentifier)
1228 PBDataWriterWriteStringField(writer, self->_optionsSourceApplicationSecondaryIdentifier, 309);
1231 /* optionsAppleIdContext */
1233 if (self->_has.optionsAppleIdContext)
1235 PBDataWriterWriteBOOLField(writer, self->_optionsAppleIdContext, 310);
1238 /* optionsTlsPinningRequired */
1240 if (self->_has.optionsTlsPinningRequired)
1242 PBDataWriterWriteBOOLField(writer, self->_optionsTlsPinningRequired, 311);
1247 - (void)copyTo:(SECC2MPNetworkEvent *)other
1249 if (self->_has.triggers)
1251 other->_triggers = _triggers;
1252 other->_has.triggers = YES;
1254 if (self->_has.reportFrequency)
1256 other->_reportFrequency = _reportFrequency;
1257 other->_has.reportFrequency = YES;
1259 if (self->_has.reportFrequencyBase)
1261 other->_reportFrequencyBase = _reportFrequencyBase;
1262 other->_has.reportFrequencyBase = YES;
1264 if (_networkTaskDescription)
1266 other.networkTaskDescription = _networkTaskDescription;
1268 if (_networkHostname)
1270 other.networkHostname = _networkHostname;
1272 if (_networkRemoteAddresssAndPort)
1274 other.networkRemoteAddresssAndPort = _networkRemoteAddresssAndPort;
1276 if (_networkConnectionUuid)
1278 other.networkConnectionUuid = _networkConnectionUuid;
1280 if (self->_has.networkConnectionReused)
1282 other->_networkConnectionReused = _networkConnectionReused;
1283 other->_has.networkConnectionReused = YES;
1285 if (_networkInterfaceIdentifier)
1287 other.networkInterfaceIdentifier = _networkInterfaceIdentifier;
1289 if (_networkProtocolName)
1291 other.networkProtocolName = _networkProtocolName;
1293 if (self->_has.networkRequestHeaderSize)
1295 other->_networkRequestHeaderSize = _networkRequestHeaderSize;
1296 other->_has.networkRequestHeaderSize = YES;
1298 if (self->_has.networkRequestBodyBytesSent)
1300 other->_networkRequestBodyBytesSent = _networkRequestBodyBytesSent;
1301 other->_has.networkRequestBodyBytesSent = YES;
1303 if (self->_has.networkResponseHeaderSize)
1305 other->_networkResponseHeaderSize = _networkResponseHeaderSize;
1306 other->_has.networkResponseHeaderSize = YES;
1308 if (self->_has.networkResponseBodyBytesReceived)
1310 other->_networkResponseBodyBytesReceived = _networkResponseBodyBytesReceived;
1311 other->_has.networkResponseBodyBytesReceived = YES;
1313 if (self->_has.networkPreviousAttemptCount)
1315 other->_networkPreviousAttemptCount = _networkPreviousAttemptCount;
1316 other->_has.networkPreviousAttemptCount = YES;
1318 if (_networkFatalError)
1320 other.networkFatalError = _networkFatalError;
1322 if (self->_has.networkStatusCode)
1324 other->_networkStatusCode = _networkStatusCode;
1325 other->_has.networkStatusCode = YES;
1327 if (_networkRequestUri)
1329 other.networkRequestUri = _networkRequestUri;
1331 if (self->_has.timestampC2Init)
1333 other->_timestampC2Init = _timestampC2Init;
1334 other->_has.timestampC2Init = YES;
1336 if (self->_has.timestampC2Start)
1338 other->_timestampC2Start = _timestampC2Start;
1339 other->_has.timestampC2Start = YES;
1341 if (self->_has.timestampC2Now)
1343 other->_timestampC2Now = _timestampC2Now;
1344 other->_has.timestampC2Now = YES;
1346 if (self->_has.timestampDnsStart)
1348 other->_timestampDnsStart = _timestampDnsStart;
1349 other->_has.timestampDnsStart = YES;
1351 if (self->_has.timestampDnsEnd)
1353 other->_timestampDnsEnd = _timestampDnsEnd;
1354 other->_has.timestampDnsEnd = YES;
1356 if (self->_has.timestampTcpStart)
1358 other->_timestampTcpStart = _timestampTcpStart;
1359 other->_has.timestampTcpStart = YES;
1361 if (self->_has.timestampTcpEnd)
1363 other->_timestampTcpEnd = _timestampTcpEnd;
1364 other->_has.timestampTcpEnd = YES;
1366 if (self->_has.timestampSslStart)
1368 other->_timestampSslStart = _timestampSslStart;
1369 other->_has.timestampSslStart = YES;
1371 if (self->_has.timestampRequestStart)
1373 other->_timestampRequestStart = _timestampRequestStart;
1374 other->_has.timestampRequestStart = YES;
1376 if (self->_has.timestampRequestEnd)
1378 other->_timestampRequestEnd = _timestampRequestEnd;
1379 other->_has.timestampRequestEnd = YES;
1381 if (self->_has.timestampResponseStart)
1383 other->_timestampResponseStart = _timestampResponseStart;
1384 other->_has.timestampResponseStart = YES;
1386 if (self->_has.timestampResponseEnd)
1388 other->_timestampResponseEnd = _timestampResponseEnd;
1389 other->_has.timestampResponseEnd = YES;
1391 if (_optionsQualityOfService)
1393 other.optionsQualityOfService = _optionsQualityOfService;
1395 if (self->_has.optionsOutOfProcess)
1397 other->_optionsOutOfProcess = _optionsOutOfProcess;
1398 other->_has.optionsOutOfProcess = YES;
1400 if (self->_has.optionsOutOfProcessForceDiscretionary)
1402 other->_optionsOutOfProcessForceDiscretionary = _optionsOutOfProcessForceDiscretionary;
1403 other->_has.optionsOutOfProcessForceDiscretionary = YES;
1405 if (self->_has.optionsAllowExpensiveAccess)
1407 other->_optionsAllowExpensiveAccess = _optionsAllowExpensiveAccess;
1408 other->_has.optionsAllowExpensiveAccess = YES;
1410 if (self->_has.optionsAllowPowerNapScheduling)
1412 other->_optionsAllowPowerNapScheduling = _optionsAllowPowerNapScheduling;
1413 other->_has.optionsAllowPowerNapScheduling = YES;
1415 if (self->_has.optionsTimeoutIntervalForRequest)
1417 other->_optionsTimeoutIntervalForRequest = _optionsTimeoutIntervalForRequest;
1418 other->_has.optionsTimeoutIntervalForRequest = YES;
1420 if (self->_has.optionsTimeoutIntervalForResource)
1422 other->_optionsTimeoutIntervalForResource = _optionsTimeoutIntervalForResource;
1423 other->_has.optionsTimeoutIntervalForResource = YES;
1425 if (_optionsSourceApplicationBundleIdentifier)
1427 other.optionsSourceApplicationBundleIdentifier = _optionsSourceApplicationBundleIdentifier;
1429 if (_optionsSourceApplicationSecondaryIdentifier)
1431 other.optionsSourceApplicationSecondaryIdentifier = _optionsSourceApplicationSecondaryIdentifier;
1433 if (self->_has.optionsAppleIdContext)
1435 other->_optionsAppleIdContext = _optionsAppleIdContext;
1436 other->_has.optionsAppleIdContext = YES;
1438 if (self->_has.optionsTlsPinningRequired)
1440 other->_optionsTlsPinningRequired = _optionsTlsPinningRequired;
1441 other->_has.optionsTlsPinningRequired = YES;
1445 - (id)copyWithZone:(NSZone *)zone
1447 SECC2MPNetworkEvent *copy = [[[self class] allocWithZone:zone] init];
1448 if (self->_has.triggers)
1450 copy->_triggers = _triggers;
1451 copy->_has.triggers = YES;
1453 if (self->_has.reportFrequency)
1455 copy->_reportFrequency = _reportFrequency;
1456 copy->_has.reportFrequency = YES;
1458 if (self->_has.reportFrequencyBase)
1460 copy->_reportFrequencyBase = _reportFrequencyBase;
1461 copy->_has.reportFrequencyBase = YES;
1463 copy->_networkTaskDescription = [_networkTaskDescription copyWithZone:zone];
1464 copy->_networkHostname = [_networkHostname copyWithZone:zone];
1465 copy->_networkRemoteAddresssAndPort = [_networkRemoteAddresssAndPort copyWithZone:zone];
1466 copy->_networkConnectionUuid = [_networkConnectionUuid copyWithZone:zone];
1467 if (self->_has.networkConnectionReused)
1469 copy->_networkConnectionReused = _networkConnectionReused;
1470 copy->_has.networkConnectionReused = YES;
1472 copy->_networkInterfaceIdentifier = [_networkInterfaceIdentifier copyWithZone:zone];
1473 copy->_networkProtocolName = [_networkProtocolName copyWithZone:zone];
1474 if (self->_has.networkRequestHeaderSize)
1476 copy->_networkRequestHeaderSize = _networkRequestHeaderSize;
1477 copy->_has.networkRequestHeaderSize = YES;
1479 if (self->_has.networkRequestBodyBytesSent)
1481 copy->_networkRequestBodyBytesSent = _networkRequestBodyBytesSent;
1482 copy->_has.networkRequestBodyBytesSent = YES;
1484 if (self->_has.networkResponseHeaderSize)
1486 copy->_networkResponseHeaderSize = _networkResponseHeaderSize;
1487 copy->_has.networkResponseHeaderSize = YES;
1489 if (self->_has.networkResponseBodyBytesReceived)
1491 copy->_networkResponseBodyBytesReceived = _networkResponseBodyBytesReceived;
1492 copy->_has.networkResponseBodyBytesReceived = YES;
1494 if (self->_has.networkPreviousAttemptCount)
1496 copy->_networkPreviousAttemptCount = _networkPreviousAttemptCount;
1497 copy->_has.networkPreviousAttemptCount = YES;
1499 copy->_networkFatalError = [_networkFatalError copyWithZone:zone];
1500 if (self->_has.networkStatusCode)
1502 copy->_networkStatusCode = _networkStatusCode;
1503 copy->_has.networkStatusCode = YES;
1505 copy->_networkRequestUri = [_networkRequestUri copyWithZone:zone];
1506 if (self->_has.timestampC2Init)
1508 copy->_timestampC2Init = _timestampC2Init;
1509 copy->_has.timestampC2Init = YES;
1511 if (self->_has.timestampC2Start)
1513 copy->_timestampC2Start = _timestampC2Start;
1514 copy->_has.timestampC2Start = YES;
1516 if (self->_has.timestampC2Now)
1518 copy->_timestampC2Now = _timestampC2Now;
1519 copy->_has.timestampC2Now = YES;
1521 if (self->_has.timestampDnsStart)
1523 copy->_timestampDnsStart = _timestampDnsStart;
1524 copy->_has.timestampDnsStart = YES;
1526 if (self->_has.timestampDnsEnd)
1528 copy->_timestampDnsEnd = _timestampDnsEnd;
1529 copy->_has.timestampDnsEnd = YES;
1531 if (self->_has.timestampTcpStart)
1533 copy->_timestampTcpStart = _timestampTcpStart;
1534 copy->_has.timestampTcpStart = YES;
1536 if (self->_has.timestampTcpEnd)
1538 copy->_timestampTcpEnd = _timestampTcpEnd;
1539 copy->_has.timestampTcpEnd = YES;
1541 if (self->_has.timestampSslStart)
1543 copy->_timestampSslStart = _timestampSslStart;
1544 copy->_has.timestampSslStart = YES;
1546 if (self->_has.timestampRequestStart)
1548 copy->_timestampRequestStart = _timestampRequestStart;
1549 copy->_has.timestampRequestStart = YES;
1551 if (self->_has.timestampRequestEnd)
1553 copy->_timestampRequestEnd = _timestampRequestEnd;
1554 copy->_has.timestampRequestEnd = YES;
1556 if (self->_has.timestampResponseStart)
1558 copy->_timestampResponseStart = _timestampResponseStart;
1559 copy->_has.timestampResponseStart = YES;
1561 if (self->_has.timestampResponseEnd)
1563 copy->_timestampResponseEnd = _timestampResponseEnd;
1564 copy->_has.timestampResponseEnd = YES;
1566 copy->_optionsQualityOfService = [_optionsQualityOfService copyWithZone:zone];
1567 if (self->_has.optionsOutOfProcess)
1569 copy->_optionsOutOfProcess = _optionsOutOfProcess;
1570 copy->_has.optionsOutOfProcess = YES;
1572 if (self->_has.optionsOutOfProcessForceDiscretionary)
1574 copy->_optionsOutOfProcessForceDiscretionary = _optionsOutOfProcessForceDiscretionary;
1575 copy->_has.optionsOutOfProcessForceDiscretionary = YES;
1577 if (self->_has.optionsAllowExpensiveAccess)
1579 copy->_optionsAllowExpensiveAccess = _optionsAllowExpensiveAccess;
1580 copy->_has.optionsAllowExpensiveAccess = YES;
1582 if (self->_has.optionsAllowPowerNapScheduling)
1584 copy->_optionsAllowPowerNapScheduling = _optionsAllowPowerNapScheduling;
1585 copy->_has.optionsAllowPowerNapScheduling = YES;
1587 if (self->_has.optionsTimeoutIntervalForRequest)
1589 copy->_optionsTimeoutIntervalForRequest = _optionsTimeoutIntervalForRequest;
1590 copy->_has.optionsTimeoutIntervalForRequest = YES;
1592 if (self->_has.optionsTimeoutIntervalForResource)
1594 copy->_optionsTimeoutIntervalForResource = _optionsTimeoutIntervalForResource;
1595 copy->_has.optionsTimeoutIntervalForResource = YES;
1597 copy->_optionsSourceApplicationBundleIdentifier = [_optionsSourceApplicationBundleIdentifier copyWithZone:zone];
1598 copy->_optionsSourceApplicationSecondaryIdentifier = [_optionsSourceApplicationSecondaryIdentifier copyWithZone:zone];
1599 if (self->_has.optionsAppleIdContext)
1601 copy->_optionsAppleIdContext = _optionsAppleIdContext;
1602 copy->_has.optionsAppleIdContext = YES;
1604 if (self->_has.optionsTlsPinningRequired)
1606 copy->_optionsTlsPinningRequired = _optionsTlsPinningRequired;
1607 copy->_has.optionsTlsPinningRequired = YES;
1612 - (BOOL)isEqual:(id)object
1614 SECC2MPNetworkEvent *other = (SECC2MPNetworkEvent *)object;
1615 return [other isMemberOfClass:[self class]]
1617 ((self->_has.triggers && other->_has.triggers && self->_triggers == other->_triggers) || (!self->_has.triggers && !other->_has.triggers))
1619 ((self->_has.reportFrequency && other->_has.reportFrequency && self->_reportFrequency == other->_reportFrequency) || (!self->_has.reportFrequency && !other->_has.reportFrequency))
1621 ((self->_has.reportFrequencyBase && other->_has.reportFrequencyBase && self->_reportFrequencyBase == other->_reportFrequencyBase) || (!self->_has.reportFrequencyBase && !other->_has.reportFrequencyBase))
1623 ((!self->_networkTaskDescription && !other->_networkTaskDescription) || [self->_networkTaskDescription isEqual:other->_networkTaskDescription])
1625 ((!self->_networkHostname && !other->_networkHostname) || [self->_networkHostname isEqual:other->_networkHostname])
1627 ((!self->_networkRemoteAddresssAndPort && !other->_networkRemoteAddresssAndPort) || [self->_networkRemoteAddresssAndPort isEqual:other->_networkRemoteAddresssAndPort])
1629 ((!self->_networkConnectionUuid && !other->_networkConnectionUuid) || [self->_networkConnectionUuid isEqual:other->_networkConnectionUuid])
1631 ((self->_has.networkConnectionReused && other->_has.networkConnectionReused && ((self->_networkConnectionReused && other->_networkConnectionReused) || (!self->_networkConnectionReused && !other->_networkConnectionReused))) || (!self->_has.networkConnectionReused && !other->_has.networkConnectionReused))
1633 ((!self->_networkInterfaceIdentifier && !other->_networkInterfaceIdentifier) || [self->_networkInterfaceIdentifier isEqual:other->_networkInterfaceIdentifier])
1635 ((!self->_networkProtocolName && !other->_networkProtocolName) || [self->_networkProtocolName isEqual:other->_networkProtocolName])
1637 ((self->_has.networkRequestHeaderSize && other->_has.networkRequestHeaderSize && self->_networkRequestHeaderSize == other->_networkRequestHeaderSize) || (!self->_has.networkRequestHeaderSize && !other->_has.networkRequestHeaderSize))
1639 ((self->_has.networkRequestBodyBytesSent && other->_has.networkRequestBodyBytesSent && self->_networkRequestBodyBytesSent == other->_networkRequestBodyBytesSent) || (!self->_has.networkRequestBodyBytesSent && !other->_has.networkRequestBodyBytesSent))
1641 ((self->_has.networkResponseHeaderSize && other->_has.networkResponseHeaderSize && self->_networkResponseHeaderSize == other->_networkResponseHeaderSize) || (!self->_has.networkResponseHeaderSize && !other->_has.networkResponseHeaderSize))
1643 ((self->_has.networkResponseBodyBytesReceived && other->_has.networkResponseBodyBytesReceived && self->_networkResponseBodyBytesReceived == other->_networkResponseBodyBytesReceived) || (!self->_has.networkResponseBodyBytesReceived && !other->_has.networkResponseBodyBytesReceived))
1645 ((self->_has.networkPreviousAttemptCount && other->_has.networkPreviousAttemptCount && self->_networkPreviousAttemptCount == other->_networkPreviousAttemptCount) || (!self->_has.networkPreviousAttemptCount && !other->_has.networkPreviousAttemptCount))
1647 ((!self->_networkFatalError && !other->_networkFatalError) || [self->_networkFatalError isEqual:other->_networkFatalError])
1649 ((self->_has.networkStatusCode && other->_has.networkStatusCode && self->_networkStatusCode == other->_networkStatusCode) || (!self->_has.networkStatusCode && !other->_has.networkStatusCode))
1651 ((!self->_networkRequestUri && !other->_networkRequestUri) || [self->_networkRequestUri isEqual:other->_networkRequestUri])
1653 ((self->_has.timestampC2Init && other->_has.timestampC2Init && self->_timestampC2Init == other->_timestampC2Init) || (!self->_has.timestampC2Init && !other->_has.timestampC2Init))
1655 ((self->_has.timestampC2Start && other->_has.timestampC2Start && self->_timestampC2Start == other->_timestampC2Start) || (!self->_has.timestampC2Start && !other->_has.timestampC2Start))
1657 ((self->_has.timestampC2Now && other->_has.timestampC2Now && self->_timestampC2Now == other->_timestampC2Now) || (!self->_has.timestampC2Now && !other->_has.timestampC2Now))
1659 ((self->_has.timestampDnsStart && other->_has.timestampDnsStart && self->_timestampDnsStart == other->_timestampDnsStart) || (!self->_has.timestampDnsStart && !other->_has.timestampDnsStart))
1661 ((self->_has.timestampDnsEnd && other->_has.timestampDnsEnd && self->_timestampDnsEnd == other->_timestampDnsEnd) || (!self->_has.timestampDnsEnd && !other->_has.timestampDnsEnd))
1663 ((self->_has.timestampTcpStart && other->_has.timestampTcpStart && self->_timestampTcpStart == other->_timestampTcpStart) || (!self->_has.timestampTcpStart && !other->_has.timestampTcpStart))
1665 ((self->_has.timestampTcpEnd && other->_has.timestampTcpEnd && self->_timestampTcpEnd == other->_timestampTcpEnd) || (!self->_has.timestampTcpEnd && !other->_has.timestampTcpEnd))
1667 ((self->_has.timestampSslStart && other->_has.timestampSslStart && self->_timestampSslStart == other->_timestampSslStart) || (!self->_has.timestampSslStart && !other->_has.timestampSslStart))
1669 ((self->_has.timestampRequestStart && other->_has.timestampRequestStart && self->_timestampRequestStart == other->_timestampRequestStart) || (!self->_has.timestampRequestStart && !other->_has.timestampRequestStart))
1671 ((self->_has.timestampRequestEnd && other->_has.timestampRequestEnd && self->_timestampRequestEnd == other->_timestampRequestEnd) || (!self->_has.timestampRequestEnd && !other->_has.timestampRequestEnd))
1673 ((self->_has.timestampResponseStart && other->_has.timestampResponseStart && self->_timestampResponseStart == other->_timestampResponseStart) || (!self->_has.timestampResponseStart && !other->_has.timestampResponseStart))
1675 ((self->_has.timestampResponseEnd && other->_has.timestampResponseEnd && self->_timestampResponseEnd == other->_timestampResponseEnd) || (!self->_has.timestampResponseEnd && !other->_has.timestampResponseEnd))
1677 ((!self->_optionsQualityOfService && !other->_optionsQualityOfService) || [self->_optionsQualityOfService isEqual:other->_optionsQualityOfService])
1679 ((self->_has.optionsOutOfProcess && other->_has.optionsOutOfProcess && ((self->_optionsOutOfProcess && other->_optionsOutOfProcess) || (!self->_optionsOutOfProcess && !other->_optionsOutOfProcess))) || (!self->_has.optionsOutOfProcess && !other->_has.optionsOutOfProcess))
1681 ((self->_has.optionsOutOfProcessForceDiscretionary && other->_has.optionsOutOfProcessForceDiscretionary && ((self->_optionsOutOfProcessForceDiscretionary && other->_optionsOutOfProcessForceDiscretionary) || (!self->_optionsOutOfProcessForceDiscretionary && !other->_optionsOutOfProcessForceDiscretionary))) || (!self->_has.optionsOutOfProcessForceDiscretionary && !other->_has.optionsOutOfProcessForceDiscretionary))
1683 ((self->_has.optionsAllowExpensiveAccess && other->_has.optionsAllowExpensiveAccess && ((self->_optionsAllowExpensiveAccess && other->_optionsAllowExpensiveAccess) || (!self->_optionsAllowExpensiveAccess && !other->_optionsAllowExpensiveAccess))) || (!self->_has.optionsAllowExpensiveAccess && !other->_has.optionsAllowExpensiveAccess))
1685 ((self->_has.optionsAllowPowerNapScheduling && other->_has.optionsAllowPowerNapScheduling && ((self->_optionsAllowPowerNapScheduling && other->_optionsAllowPowerNapScheduling) || (!self->_optionsAllowPowerNapScheduling && !other->_optionsAllowPowerNapScheduling))) || (!self->_has.optionsAllowPowerNapScheduling && !other->_has.optionsAllowPowerNapScheduling))
1687 ((self->_has.optionsTimeoutIntervalForRequest && other->_has.optionsTimeoutIntervalForRequest && self->_optionsTimeoutIntervalForRequest == other->_optionsTimeoutIntervalForRequest) || (!self->_has.optionsTimeoutIntervalForRequest && !other->_has.optionsTimeoutIntervalForRequest))
1689 ((self->_has.optionsTimeoutIntervalForResource && other->_has.optionsTimeoutIntervalForResource && self->_optionsTimeoutIntervalForResource == other->_optionsTimeoutIntervalForResource) || (!self->_has.optionsTimeoutIntervalForResource && !other->_has.optionsTimeoutIntervalForResource))
1691 ((!self->_optionsSourceApplicationBundleIdentifier && !other->_optionsSourceApplicationBundleIdentifier) || [self->_optionsSourceApplicationBundleIdentifier isEqual:other->_optionsSourceApplicationBundleIdentifier])
1693 ((!self->_optionsSourceApplicationSecondaryIdentifier && !other->_optionsSourceApplicationSecondaryIdentifier) || [self->_optionsSourceApplicationSecondaryIdentifier isEqual:other->_optionsSourceApplicationSecondaryIdentifier])
1695 ((self->_has.optionsAppleIdContext && other->_has.optionsAppleIdContext && ((self->_optionsAppleIdContext && other->_optionsAppleIdContext) || (!self->_optionsAppleIdContext && !other->_optionsAppleIdContext))) || (!self->_has.optionsAppleIdContext && !other->_has.optionsAppleIdContext))
1697 ((self->_has.optionsTlsPinningRequired && other->_has.optionsTlsPinningRequired && ((self->_optionsTlsPinningRequired && other->_optionsTlsPinningRequired) || (!self->_optionsTlsPinningRequired && !other->_optionsTlsPinningRequired))) || (!self->_has.optionsTlsPinningRequired && !other->_has.optionsTlsPinningRequired))
1705 (self->_has.triggers ? PBHashInt((NSUInteger)self->_triggers) : 0)
1707 (self->_has.reportFrequency ? PBHashInt((NSUInteger)self->_reportFrequency) : 0)
1709 (self->_has.reportFrequencyBase ? PBHashInt((NSUInteger)self->_reportFrequencyBase) : 0)
1711 [self->_networkTaskDescription hash]
1713 [self->_networkHostname hash]
1715 [self->_networkRemoteAddresssAndPort hash]
1717 [self->_networkConnectionUuid hash]
1719 (self->_has.networkConnectionReused ? PBHashInt((NSUInteger)self->_networkConnectionReused) : 0)
1721 [self->_networkInterfaceIdentifier hash]
1723 [self->_networkProtocolName hash]
1725 (self->_has.networkRequestHeaderSize ? PBHashInt((NSUInteger)self->_networkRequestHeaderSize) : 0)
1727 (self->_has.networkRequestBodyBytesSent ? PBHashInt((NSUInteger)self->_networkRequestBodyBytesSent) : 0)
1729 (self->_has.networkResponseHeaderSize ? PBHashInt((NSUInteger)self->_networkResponseHeaderSize) : 0)
1731 (self->_has.networkResponseBodyBytesReceived ? PBHashInt((NSUInteger)self->_networkResponseBodyBytesReceived) : 0)
1733 (self->_has.networkPreviousAttemptCount ? PBHashInt((NSUInteger)self->_networkPreviousAttemptCount) : 0)
1735 [self->_networkFatalError hash]
1737 (self->_has.networkStatusCode ? PBHashInt((NSUInteger)self->_networkStatusCode) : 0)
1739 [self->_networkRequestUri hash]
1741 (self->_has.timestampC2Init ? PBHashInt((NSUInteger)self->_timestampC2Init) : 0)
1743 (self->_has.timestampC2Start ? PBHashInt((NSUInteger)self->_timestampC2Start) : 0)
1745 (self->_has.timestampC2Now ? PBHashInt((NSUInteger)self->_timestampC2Now) : 0)
1747 (self->_has.timestampDnsStart ? PBHashInt((NSUInteger)self->_timestampDnsStart) : 0)
1749 (self->_has.timestampDnsEnd ? PBHashInt((NSUInteger)self->_timestampDnsEnd) : 0)
1751 (self->_has.timestampTcpStart ? PBHashInt((NSUInteger)self->_timestampTcpStart) : 0)
1753 (self->_has.timestampTcpEnd ? PBHashInt((NSUInteger)self->_timestampTcpEnd) : 0)
1755 (self->_has.timestampSslStart ? PBHashInt((NSUInteger)self->_timestampSslStart) : 0)
1757 (self->_has.timestampRequestStart ? PBHashInt((NSUInteger)self->_timestampRequestStart) : 0)
1759 (self->_has.timestampRequestEnd ? PBHashInt((NSUInteger)self->_timestampRequestEnd) : 0)
1761 (self->_has.timestampResponseStart ? PBHashInt((NSUInteger)self->_timestampResponseStart) : 0)
1763 (self->_has.timestampResponseEnd ? PBHashInt((NSUInteger)self->_timestampResponseEnd) : 0)
1765 [self->_optionsQualityOfService hash]
1767 (self->_has.optionsOutOfProcess ? PBHashInt((NSUInteger)self->_optionsOutOfProcess) : 0)
1769 (self->_has.optionsOutOfProcessForceDiscretionary ? PBHashInt((NSUInteger)self->_optionsOutOfProcessForceDiscretionary) : 0)
1771 (self->_has.optionsAllowExpensiveAccess ? PBHashInt((NSUInteger)self->_optionsAllowExpensiveAccess) : 0)
1773 (self->_has.optionsAllowPowerNapScheduling ? PBHashInt((NSUInteger)self->_optionsAllowPowerNapScheduling) : 0)
1775 (self->_has.optionsTimeoutIntervalForRequest ? PBHashInt((NSUInteger)self->_optionsTimeoutIntervalForRequest) : 0)
1777 (self->_has.optionsTimeoutIntervalForResource ? PBHashInt((NSUInteger)self->_optionsTimeoutIntervalForResource) : 0)
1779 [self->_optionsSourceApplicationBundleIdentifier hash]
1781 [self->_optionsSourceApplicationSecondaryIdentifier hash]
1783 (self->_has.optionsAppleIdContext ? PBHashInt((NSUInteger)self->_optionsAppleIdContext) : 0)
1785 (self->_has.optionsTlsPinningRequired ? PBHashInt((NSUInteger)self->_optionsTlsPinningRequired) : 0)
1789 - (void)mergeFrom:(SECC2MPNetworkEvent *)other
1791 if (other->_has.triggers)
1793 self->_triggers = other->_triggers;
1794 self->_has.triggers = YES;
1796 if (other->_has.reportFrequency)
1798 self->_reportFrequency = other->_reportFrequency;
1799 self->_has.reportFrequency = YES;
1801 if (other->_has.reportFrequencyBase)
1803 self->_reportFrequencyBase = other->_reportFrequencyBase;
1804 self->_has.reportFrequencyBase = YES;
1806 if (other->_networkTaskDescription)
1808 [self setNetworkTaskDescription:other->_networkTaskDescription];
1810 if (other->_networkHostname)
1812 [self setNetworkHostname:other->_networkHostname];
1814 if (other->_networkRemoteAddresssAndPort)
1816 [self setNetworkRemoteAddresssAndPort:other->_networkRemoteAddresssAndPort];
1818 if (other->_networkConnectionUuid)
1820 [self setNetworkConnectionUuid:other->_networkConnectionUuid];
1822 if (other->_has.networkConnectionReused)
1824 self->_networkConnectionReused = other->_networkConnectionReused;
1825 self->_has.networkConnectionReused = YES;
1827 if (other->_networkInterfaceIdentifier)
1829 [self setNetworkInterfaceIdentifier:other->_networkInterfaceIdentifier];
1831 if (other->_networkProtocolName)
1833 [self setNetworkProtocolName:other->_networkProtocolName];
1835 if (other->_has.networkRequestHeaderSize)
1837 self->_networkRequestHeaderSize = other->_networkRequestHeaderSize;
1838 self->_has.networkRequestHeaderSize = YES;
1840 if (other->_has.networkRequestBodyBytesSent)
1842 self->_networkRequestBodyBytesSent = other->_networkRequestBodyBytesSent;
1843 self->_has.networkRequestBodyBytesSent = YES;
1845 if (other->_has.networkResponseHeaderSize)
1847 self->_networkResponseHeaderSize = other->_networkResponseHeaderSize;
1848 self->_has.networkResponseHeaderSize = YES;
1850 if (other->_has.networkResponseBodyBytesReceived)
1852 self->_networkResponseBodyBytesReceived = other->_networkResponseBodyBytesReceived;
1853 self->_has.networkResponseBodyBytesReceived = YES;
1855 if (other->_has.networkPreviousAttemptCount)
1857 self->_networkPreviousAttemptCount = other->_networkPreviousAttemptCount;
1858 self->_has.networkPreviousAttemptCount = YES;
1860 if (self->_networkFatalError && other->_networkFatalError)
1862 [self->_networkFatalError mergeFrom:other->_networkFatalError];
1864 else if (!self->_networkFatalError && other->_networkFatalError)
1866 [self setNetworkFatalError:other->_networkFatalError];
1868 if (other->_has.networkStatusCode)
1870 self->_networkStatusCode = other->_networkStatusCode;
1871 self->_has.networkStatusCode = YES;
1873 if (other->_networkRequestUri)
1875 [self setNetworkRequestUri:other->_networkRequestUri];
1877 if (other->_has.timestampC2Init)
1879 self->_timestampC2Init = other->_timestampC2Init;
1880 self->_has.timestampC2Init = YES;
1882 if (other->_has.timestampC2Start)
1884 self->_timestampC2Start = other->_timestampC2Start;
1885 self->_has.timestampC2Start = YES;
1887 if (other->_has.timestampC2Now)
1889 self->_timestampC2Now = other->_timestampC2Now;
1890 self->_has.timestampC2Now = YES;
1892 if (other->_has.timestampDnsStart)
1894 self->_timestampDnsStart = other->_timestampDnsStart;
1895 self->_has.timestampDnsStart = YES;
1897 if (other->_has.timestampDnsEnd)
1899 self->_timestampDnsEnd = other->_timestampDnsEnd;
1900 self->_has.timestampDnsEnd = YES;
1902 if (other->_has.timestampTcpStart)
1904 self->_timestampTcpStart = other->_timestampTcpStart;
1905 self->_has.timestampTcpStart = YES;
1907 if (other->_has.timestampTcpEnd)
1909 self->_timestampTcpEnd = other->_timestampTcpEnd;
1910 self->_has.timestampTcpEnd = YES;
1912 if (other->_has.timestampSslStart)
1914 self->_timestampSslStart = other->_timestampSslStart;
1915 self->_has.timestampSslStart = YES;
1917 if (other->_has.timestampRequestStart)
1919 self->_timestampRequestStart = other->_timestampRequestStart;
1920 self->_has.timestampRequestStart = YES;
1922 if (other->_has.timestampRequestEnd)
1924 self->_timestampRequestEnd = other->_timestampRequestEnd;
1925 self->_has.timestampRequestEnd = YES;
1927 if (other->_has.timestampResponseStart)
1929 self->_timestampResponseStart = other->_timestampResponseStart;
1930 self->_has.timestampResponseStart = YES;
1932 if (other->_has.timestampResponseEnd)
1934 self->_timestampResponseEnd = other->_timestampResponseEnd;
1935 self->_has.timestampResponseEnd = YES;
1937 if (other->_optionsQualityOfService)
1939 [self setOptionsQualityOfService:other->_optionsQualityOfService];
1941 if (other->_has.optionsOutOfProcess)
1943 self->_optionsOutOfProcess = other->_optionsOutOfProcess;
1944 self->_has.optionsOutOfProcess = YES;
1946 if (other->_has.optionsOutOfProcessForceDiscretionary)
1948 self->_optionsOutOfProcessForceDiscretionary = other->_optionsOutOfProcessForceDiscretionary;
1949 self->_has.optionsOutOfProcessForceDiscretionary = YES;
1951 if (other->_has.optionsAllowExpensiveAccess)
1953 self->_optionsAllowExpensiveAccess = other->_optionsAllowExpensiveAccess;
1954 self->_has.optionsAllowExpensiveAccess = YES;
1956 if (other->_has.optionsAllowPowerNapScheduling)
1958 self->_optionsAllowPowerNapScheduling = other->_optionsAllowPowerNapScheduling;
1959 self->_has.optionsAllowPowerNapScheduling = YES;
1961 if (other->_has.optionsTimeoutIntervalForRequest)
1963 self->_optionsTimeoutIntervalForRequest = other->_optionsTimeoutIntervalForRequest;
1964 self->_has.optionsTimeoutIntervalForRequest = YES;
1966 if (other->_has.optionsTimeoutIntervalForResource)
1968 self->_optionsTimeoutIntervalForResource = other->_optionsTimeoutIntervalForResource;
1969 self->_has.optionsTimeoutIntervalForResource = YES;
1971 if (other->_optionsSourceApplicationBundleIdentifier)
1973 [self setOptionsSourceApplicationBundleIdentifier:other->_optionsSourceApplicationBundleIdentifier];
1975 if (other->_optionsSourceApplicationSecondaryIdentifier)
1977 [self setOptionsSourceApplicationSecondaryIdentifier:other->_optionsSourceApplicationSecondaryIdentifier];
1979 if (other->_has.optionsAppleIdContext)
1981 self->_optionsAppleIdContext = other->_optionsAppleIdContext;
1982 self->_has.optionsAppleIdContext = YES;
1984 if (other->_has.optionsTlsPinningRequired)
1986 self->_optionsTlsPinningRequired = other->_optionsTlsPinningRequired;
1987 self->_has.optionsTlsPinningRequired = YES;