aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/objective-c/GRPCClient/GRPCCallOptions.m
diff options
context:
space:
mode:
authorGravatar Muxi Yan <mxyan@google.com>2018-10-17 17:46:09 -0700
committerGravatar Muxi Yan <mxyan@google.com>2018-10-17 17:46:09 -0700
commitf48c90606f246afab3a2aa1e1547578c4c34292a (patch)
tree7da81562ec515253d1a692f7128103dc37cca614 /src/objective-c/GRPCClient/GRPCCallOptions.m
parentd47f4b4c23a9dab2813e9b521d2545ea26d0105c (diff)
Add isChannelOptionsEqualTo: to GRPCCallOptions
Diffstat (limited to 'src/objective-c/GRPCClient/GRPCCallOptions.m')
-rw-r--r--src/objective-c/GRPCClient/GRPCCallOptions.m40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/objective-c/GRPCClient/GRPCCallOptions.m b/src/objective-c/GRPCClient/GRPCCallOptions.m
index b19917d778..1fc8c9fb1a 100644
--- a/src/objective-c/GRPCClient/GRPCCallOptions.m
+++ b/src/objective-c/GRPCClient/GRPCCallOptions.m
@@ -227,6 +227,46 @@ static NSUInteger kDefaultChannelID = 0;
return newOptions;
}
+- (BOOL)isChannelOptionsEqualTo:(GRPCCallOptions *)callOptions {
+ if (!(callOptions.userAgentPrefix == _userAgentPrefix ||
+ [callOptions.userAgentPrefix isEqualToString:_userAgentPrefix]))
+ return NO;
+ if (!(callOptions.responseSizeLimit == _responseSizeLimit)) return NO;
+ if (!(callOptions.compressAlgorithm == _compressAlgorithm)) return NO;
+ if (!(callOptions.enableRetry == _enableRetry)) return NO;
+ if (!(callOptions.keepaliveInterval == _keepaliveInterval)) return NO;
+ if (!(callOptions.keepaliveTimeout == _keepaliveTimeout)) return NO;
+ if (!(callOptions.connectMinTimeout == _connectMinTimeout)) return NO;
+ if (!(callOptions.connectInitialBackoff == _connectInitialBackoff)) return NO;
+ if (!(callOptions.connectMaxBackoff == _connectMaxBackoff)) return NO;
+ if (!(callOptions.additionalChannelArgs == _additionalChannelArgs ||
+ [callOptions.additionalChannelArgs
+ isEqualToDictionary:_additionalChannelArgs]))
+ return NO;
+ if (!(callOptions.PEMRootCertificates == _PEMRootCertificates ||
+ [callOptions.PEMRootCertificates isEqualToString:_PEMRootCertificates]))
+ return NO;
+ if (!(callOptions.PEMPrivateKey == _PEMPrivateKey ||
+ [callOptions.PEMPrivateKey isEqualToString:_PEMPrivateKey]))
+ return NO;
+ if (!(callOptions.PEMCertChain == _PEMCertChain ||
+ [callOptions.PEMCertChain isEqualToString:_PEMCertChain]))
+ return NO;
+ if (!(callOptions.hostNameOverride == _hostNameOverride ||
+ [callOptions.hostNameOverride isEqualToString:_hostNameOverride]))
+ return NO;
+ if (!(callOptions.transportType == _transportType)) return NO;
+ if (!(callOptions.logContext == _logContext ||
+ [callOptions.logContext isEqual:_logContext]))
+ return NO;
+ if (!(callOptions.channelPoolDomain == _channelPoolDomain ||
+ [callOptions.channelPoolDomain isEqualToString:_channelPoolDomain]))
+ return NO;
+ if (!(callOptions.channelID == _channelID)) return NO;
+
+ return YES;
+}
+
@end
@implementation GRPCMutableCallOptions