mirror of https://github.com/grpc/grpc.git
commit
6ad62a7204
62 changed files with 6756 additions and 1227 deletions
@ -1,2 +1,3 @@ |
||||
bin |
||||
obj |
||||
obj |
||||
*.nupkg |
||||
|
@ -0,0 +1,38 @@ |
||||
/*
|
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
|
||||
#import "GRPCChannel.h" |
||||
|
||||
@interface GRPCSecureChannel : GRPCChannel |
||||
|
||||
@end |
@ -0,0 +1,52 @@ |
||||
/* |
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
|
||||
#import "GRPCSecureChannel.h" |
||||
|
||||
#import <grpc/grpc_security.h> |
||||
|
||||
@implementation GRPCSecureChannel |
||||
|
||||
- (instancetype)initWithHost:(NSString *)host { |
||||
// TODO(jcanizales): Load certs only once. |
||||
NSURL *certsURL = [[NSBundle mainBundle] URLForResource:@"gRPC.bundle/roots" withExtension:@"pem"]; |
||||
NSData *certsData = [NSData dataWithContentsOfURL:certsURL]; |
||||
NSString *certsString = [[NSString alloc] initWithData:certsData encoding:NSUTF8StringEncoding]; |
||||
|
||||
grpc_credentials *credentials = grpc_ssl_credentials_create(certsString.UTF8String, NULL); |
||||
return (self = [super initWithChannel:grpc_secure_channel_create(credentials, |
||||
host.UTF8String, |
||||
NULL)]); |
||||
} |
||||
|
||||
@end |
@ -0,0 +1,38 @@ |
||||
/*
|
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
|
||||
#import "GRPCChannel.h" |
||||
|
||||
@interface GRPCUnsecuredChannel : GRPCChannel |
||||
|
||||
@end |
@ -0,0 +1,44 @@ |
||||
/* |
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
|
||||
#import "GRPCUnsecuredChannel.h" |
||||
|
||||
#include <grpc/grpc.h> |
||||
|
||||
@implementation GRPCUnsecuredChannel |
||||
|
||||
- (instancetype)initWithHost:(NSString *)host { |
||||
return (self = [super initWithChannel:grpc_channel_create(host.UTF8String, NULL)]); |
||||
} |
||||
|
||||
@end |
@ -0,0 +1,103 @@ |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
|
||||
#import <ProtocolBuffers/ProtocolBuffers.h> |
||||
|
||||
// @@protoc_insertion_point(imports)
|
||||
|
||||
@class ObjectiveCFileOptions; |
||||
@class ObjectiveCFileOptionsBuilder; |
||||
@class PBDescriptorProto; |
||||
@class PBDescriptorProtoBuilder; |
||||
@class PBDescriptorProtoExtensionRange; |
||||
@class PBDescriptorProtoExtensionRangeBuilder; |
||||
@class PBEnumDescriptorProto; |
||||
@class PBEnumDescriptorProtoBuilder; |
||||
@class PBEnumOptions; |
||||
@class PBEnumOptionsBuilder; |
||||
@class PBEnumValueDescriptorProto; |
||||
@class PBEnumValueDescriptorProtoBuilder; |
||||
@class PBEnumValueOptions; |
||||
@class PBEnumValueOptionsBuilder; |
||||
@class PBFieldDescriptorProto; |
||||
@class PBFieldDescriptorProtoBuilder; |
||||
@class PBFieldOptions; |
||||
@class PBFieldOptionsBuilder; |
||||
@class PBFileDescriptorProto; |
||||
@class PBFileDescriptorProtoBuilder; |
||||
@class PBFileDescriptorSet; |
||||
@class PBFileDescriptorSetBuilder; |
||||
@class PBFileOptions; |
||||
@class PBFileOptionsBuilder; |
||||
@class PBMessageOptions; |
||||
@class PBMessageOptionsBuilder; |
||||
@class PBMethodDescriptorProto; |
||||
@class PBMethodDescriptorProtoBuilder; |
||||
@class PBMethodOptions; |
||||
@class PBMethodOptionsBuilder; |
||||
@class PBOneofDescriptorProto; |
||||
@class PBOneofDescriptorProtoBuilder; |
||||
@class PBServiceDescriptorProto; |
||||
@class PBServiceDescriptorProtoBuilder; |
||||
@class PBServiceOptions; |
||||
@class PBServiceOptionsBuilder; |
||||
@class PBSourceCodeInfo; |
||||
@class PBSourceCodeInfoBuilder; |
||||
@class PBSourceCodeInfoLocation; |
||||
@class PBSourceCodeInfoLocationBuilder; |
||||
@class PBUninterpretedOption; |
||||
@class PBUninterpretedOptionBuilder; |
||||
@class PBUninterpretedOptionNamePart; |
||||
@class PBUninterpretedOptionNamePartBuilder; |
||||
@class RMTEmpty; |
||||
@class RMTEmptyBuilder; |
||||
|
||||
|
||||
|
||||
@interface RMTEmptyRoot : NSObject { |
||||
} |
||||
+ (PBExtensionRegistry*) extensionRegistry; |
||||
+ (void) registerAllExtensions:(PBMutableExtensionRegistry*) registry; |
||||
@end |
||||
|
||||
@interface RMTEmpty : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
} |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTEmptyBuilder*) builder; |
||||
+ (RMTEmptyBuilder*) builder; |
||||
+ (RMTEmptyBuilder*) builderWithPrototype:(RMTEmpty*) prototype; |
||||
- (RMTEmptyBuilder*) toBuilder; |
||||
|
||||
+ (RMTEmpty*) parseFromData:(NSData*) data; |
||||
+ (RMTEmpty*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTEmpty*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTEmpty*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTEmpty*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTEmpty*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTEmptyBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTEmpty* resultEmpty; |
||||
} |
||||
|
||||
- (RMTEmpty*) defaultInstance; |
||||
|
||||
- (RMTEmptyBuilder*) clear; |
||||
- (RMTEmptyBuilder*) clone; |
||||
|
||||
- (RMTEmpty*) build; |
||||
- (RMTEmpty*) buildPartial; |
||||
|
||||
- (RMTEmptyBuilder*) mergeFrom:(RMTEmpty*) other; |
||||
- (RMTEmptyBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTEmptyBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
|
||||
// @@protoc_insertion_point(global_scope)
|
@ -0,0 +1,179 @@ |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT! |
||||
|
||||
#import "Empty.pb.h" |
||||
// @@protoc_insertion_point(imports) |
||||
|
||||
@implementation RMTEmptyRoot |
||||
static PBExtensionRegistry* extensionRegistry = nil; |
||||
+ (PBExtensionRegistry*) extensionRegistry { |
||||
return extensionRegistry; |
||||
} |
||||
|
||||
+ (void) initialize { |
||||
if (self == [RMTEmptyRoot class]) { |
||||
PBMutableExtensionRegistry* registry = [PBMutableExtensionRegistry registry]; |
||||
[self registerAllExtensions:registry]; |
||||
[ObjectivecDescriptorRoot registerAllExtensions:registry]; |
||||
extensionRegistry = registry; |
||||
} |
||||
} |
||||
+ (void) registerAllExtensions:(PBMutableExtensionRegistry*) registry { |
||||
} |
||||
@end |
||||
|
||||
@interface RMTEmpty () |
||||
@end |
||||
|
||||
@implementation RMTEmpty |
||||
|
||||
- (instancetype) init { |
||||
if ((self = [super init])) { |
||||
} |
||||
return self; |
||||
} |
||||
static RMTEmpty* defaultRMTEmptyInstance = nil; |
||||
+ (void) initialize { |
||||
if (self == [RMTEmpty class]) { |
||||
defaultRMTEmptyInstance = [[RMTEmpty alloc] init]; |
||||
} |
||||
} |
||||
+ (instancetype) defaultInstance { |
||||
return defaultRMTEmptyInstance; |
||||
} |
||||
- (instancetype) defaultInstance { |
||||
return defaultRMTEmptyInstance; |
||||
} |
||||
- (BOOL) isInitialized { |
||||
return YES; |
||||
} |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output { |
||||
[self.unknownFields writeToCodedOutputStream:output]; |
||||
} |
||||
- (SInt32) serializedSize { |
||||
__block SInt32 size_ = memoizedSerializedSize; |
||||
if (size_ != -1) { |
||||
return size_; |
||||
} |
||||
|
||||
size_ = 0; |
||||
size_ += self.unknownFields.serializedSize; |
||||
memoizedSerializedSize = size_; |
||||
return size_; |
||||
} |
||||
+ (RMTEmpty*) parseFromData:(NSData*) data { |
||||
return (RMTEmpty*)[[[RMTEmpty builder] mergeFromData:data] build]; |
||||
} |
||||
+ (RMTEmpty*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry { |
||||
return (RMTEmpty*)[[[RMTEmpty builder] mergeFromData:data extensionRegistry:extensionRegistry] build]; |
||||
} |
||||
+ (RMTEmpty*) parseFromInputStream:(NSInputStream*) input { |
||||
return (RMTEmpty*)[[[RMTEmpty builder] mergeFromInputStream:input] build]; |
||||
} |
||||
+ (RMTEmpty*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry { |
||||
return (RMTEmpty*)[[[RMTEmpty builder] mergeFromInputStream:input extensionRegistry:extensionRegistry] build]; |
||||
} |
||||
+ (RMTEmpty*) parseFromCodedInputStream:(PBCodedInputStream*) input { |
||||
return (RMTEmpty*)[[[RMTEmpty builder] mergeFromCodedInputStream:input] build]; |
||||
} |
||||
+ (RMTEmpty*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry { |
||||
return (RMTEmpty*)[[[RMTEmpty builder] mergeFromCodedInputStream:input extensionRegistry:extensionRegistry] build]; |
||||
} |
||||
+ (RMTEmptyBuilder*) builder { |
||||
return [[RMTEmptyBuilder alloc] init]; |
||||
} |
||||
+ (RMTEmptyBuilder*) builderWithPrototype:(RMTEmpty*) prototype { |
||||
return [[RMTEmpty builder] mergeFrom:prototype]; |
||||
} |
||||
- (RMTEmptyBuilder*) builder { |
||||
return [RMTEmpty builder]; |
||||
} |
||||
- (RMTEmptyBuilder*) toBuilder { |
||||
return [RMTEmpty builderWithPrototype:self]; |
||||
} |
||||
- (void) writeDescriptionTo:(NSMutableString*) output withIndent:(NSString*) indent { |
||||
[self.unknownFields writeDescriptionTo:output withIndent:indent]; |
||||
} |
||||
- (BOOL) isEqual:(id)other { |
||||
if (other == self) { |
||||
return YES; |
||||
} |
||||
if (![other isKindOfClass:[RMTEmpty class]]) { |
||||
return NO; |
||||
} |
||||
RMTEmpty *otherMessage = other; |
||||
return |
||||
(self.unknownFields == otherMessage.unknownFields || (self.unknownFields != nil && [self.unknownFields isEqual:otherMessage.unknownFields])); |
||||
} |
||||
- (NSUInteger) hash { |
||||
__block NSUInteger hashCode = 7; |
||||
hashCode = hashCode * 31 + [self.unknownFields hash]; |
||||
return hashCode; |
||||
} |
||||
@end |
||||
|
||||
@interface RMTEmptyBuilder() |
||||
@property (strong) RMTEmpty* resultEmpty; |
||||
@end |
||||
|
||||
@implementation RMTEmptyBuilder |
||||
@synthesize resultEmpty; |
||||
- (instancetype) init { |
||||
if ((self = [super init])) { |
||||
self.resultEmpty = [[RMTEmpty alloc] init]; |
||||
} |
||||
return self; |
||||
} |
||||
- (PBGeneratedMessage*) internalGetResult { |
||||
return resultEmpty; |
||||
} |
||||
- (RMTEmptyBuilder*) clear { |
||||
self.resultEmpty = [[RMTEmpty alloc] init]; |
||||
return self; |
||||
} |
||||
- (RMTEmptyBuilder*) clone { |
||||
return [RMTEmpty builderWithPrototype:resultEmpty]; |
||||
} |
||||
- (RMTEmpty*) defaultInstance { |
||||
return [RMTEmpty defaultInstance]; |
||||
} |
||||
- (RMTEmpty*) build { |
||||
[self checkInitialized]; |
||||
return [self buildPartial]; |
||||
} |
||||
- (RMTEmpty*) buildPartial { |
||||
RMTEmpty* returnMe = resultEmpty; |
||||
self.resultEmpty = nil; |
||||
return returnMe; |
||||
} |
||||
- (RMTEmptyBuilder*) mergeFrom:(RMTEmpty*) other { |
||||
if (other == [RMTEmpty defaultInstance]) { |
||||
return self; |
||||
} |
||||
[self mergeUnknownFields:other.unknownFields]; |
||||
return self; |
||||
} |
||||
- (RMTEmptyBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input { |
||||
return [self mergeFromCodedInputStream:input extensionRegistry:[PBExtensionRegistry emptyRegistry]]; |
||||
} |
||||
- (RMTEmptyBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry { |
||||
PBUnknownFieldSetBuilder* unknownFields = [PBUnknownFieldSet builderWithUnknownFields:self.unknownFields]; |
||||
while (YES) { |
||||
SInt32 tag = [input readTag]; |
||||
switch (tag) { |
||||
case 0: |
||||
[self setUnknownFields:[unknownFields build]]; |
||||
return self; |
||||
default: { |
||||
if (![self parseUnknownField:input unknownFields:unknownFields extensionRegistry:extensionRegistry tag:tag]) { |
||||
[self setUnknownFields:[unknownFields build]]; |
||||
return self; |
||||
} |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
@end |
||||
|
||||
|
||||
// @@protoc_insertion_point(global_scope) |
@ -0,0 +1,578 @@ |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
|
||||
#import <ProtocolBuffers/ProtocolBuffers.h> |
||||
|
||||
// @@protoc_insertion_point(imports)
|
||||
|
||||
@class ObjectiveCFileOptions; |
||||
@class ObjectiveCFileOptionsBuilder; |
||||
@class PBDescriptorProto; |
||||
@class PBDescriptorProtoBuilder; |
||||
@class PBDescriptorProtoExtensionRange; |
||||
@class PBDescriptorProtoExtensionRangeBuilder; |
||||
@class PBEnumDescriptorProto; |
||||
@class PBEnumDescriptorProtoBuilder; |
||||
@class PBEnumOptions; |
||||
@class PBEnumOptionsBuilder; |
||||
@class PBEnumValueDescriptorProto; |
||||
@class PBEnumValueDescriptorProtoBuilder; |
||||
@class PBEnumValueOptions; |
||||
@class PBEnumValueOptionsBuilder; |
||||
@class PBFieldDescriptorProto; |
||||
@class PBFieldDescriptorProtoBuilder; |
||||
@class PBFieldOptions; |
||||
@class PBFieldOptionsBuilder; |
||||
@class PBFileDescriptorProto; |
||||
@class PBFileDescriptorProtoBuilder; |
||||
@class PBFileDescriptorSet; |
||||
@class PBFileDescriptorSetBuilder; |
||||
@class PBFileOptions; |
||||
@class PBFileOptionsBuilder; |
||||
@class PBMessageOptions; |
||||
@class PBMessageOptionsBuilder; |
||||
@class PBMethodDescriptorProto; |
||||
@class PBMethodDescriptorProtoBuilder; |
||||
@class PBMethodOptions; |
||||
@class PBMethodOptionsBuilder; |
||||
@class PBOneofDescriptorProto; |
||||
@class PBOneofDescriptorProtoBuilder; |
||||
@class PBServiceDescriptorProto; |
||||
@class PBServiceDescriptorProtoBuilder; |
||||
@class PBServiceOptions; |
||||
@class PBServiceOptionsBuilder; |
||||
@class PBSourceCodeInfo; |
||||
@class PBSourceCodeInfoBuilder; |
||||
@class PBSourceCodeInfoLocation; |
||||
@class PBSourceCodeInfoLocationBuilder; |
||||
@class PBUninterpretedOption; |
||||
@class PBUninterpretedOptionBuilder; |
||||
@class PBUninterpretedOptionNamePart; |
||||
@class PBUninterpretedOptionNamePartBuilder; |
||||
@class RMTPayload; |
||||
@class RMTPayloadBuilder; |
||||
@class RMTResponseParameters; |
||||
@class RMTResponseParametersBuilder; |
||||
@class RMTSimpleRequest; |
||||
@class RMTSimpleRequestBuilder; |
||||
@class RMTSimpleResponse; |
||||
@class RMTSimpleResponseBuilder; |
||||
@class RMTStreamingInputCallRequest; |
||||
@class RMTStreamingInputCallRequestBuilder; |
||||
@class RMTStreamingInputCallResponse; |
||||
@class RMTStreamingInputCallResponseBuilder; |
||||
@class RMTStreamingOutputCallRequest; |
||||
@class RMTStreamingOutputCallRequestBuilder; |
||||
@class RMTStreamingOutputCallResponse; |
||||
@class RMTStreamingOutputCallResponseBuilder; |
||||
|
||||
|
||||
typedef NS_ENUM(SInt32, RMTPayloadType) { |
||||
RMTPayloadTypeCompressable = 0, |
||||
RMTPayloadTypeUncompressable = 1, |
||||
RMTPayloadTypeRandom = 2, |
||||
}; |
||||
|
||||
BOOL RMTPayloadTypeIsValidValue(RMTPayloadType value); |
||||
NSString *NSStringFromRMTPayloadType(RMTPayloadType value); |
||||
|
||||
|
||||
@interface RMTMessagesRoot : NSObject { |
||||
} |
||||
+ (PBExtensionRegistry*) extensionRegistry; |
||||
+ (void) registerAllExtensions:(PBMutableExtensionRegistry*) registry; |
||||
@end |
||||
|
||||
@interface RMTPayload : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasBody_:1; |
||||
BOOL hasType_:1; |
||||
NSData* body; |
||||
RMTPayloadType type; |
||||
} |
||||
- (BOOL) hasType; |
||||
- (BOOL) hasBody; |
||||
@property (readonly) RMTPayloadType type; |
||||
@property (readonly, strong) NSData* body; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTPayloadBuilder*) builder; |
||||
+ (RMTPayloadBuilder*) builder; |
||||
+ (RMTPayloadBuilder*) builderWithPrototype:(RMTPayload*) prototype; |
||||
- (RMTPayloadBuilder*) toBuilder; |
||||
|
||||
+ (RMTPayload*) parseFromData:(NSData*) data; |
||||
+ (RMTPayload*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTPayload*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTPayload*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTPayload*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTPayload*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTPayloadBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTPayload* resultPayload; |
||||
} |
||||
|
||||
- (RMTPayload*) defaultInstance; |
||||
|
||||
- (RMTPayloadBuilder*) clear; |
||||
- (RMTPayloadBuilder*) clone; |
||||
|
||||
- (RMTPayload*) build; |
||||
- (RMTPayload*) buildPartial; |
||||
|
||||
- (RMTPayloadBuilder*) mergeFrom:(RMTPayload*) other; |
||||
- (RMTPayloadBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTPayloadBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasType; |
||||
- (RMTPayloadType) type; |
||||
- (RMTPayloadBuilder*) setType:(RMTPayloadType) value; |
||||
- (RMTPayloadBuilder*) clearType; |
||||
|
||||
- (BOOL) hasBody; |
||||
- (NSData*) body; |
||||
- (RMTPayloadBuilder*) setBody:(NSData*) value; |
||||
- (RMTPayloadBuilder*) clearBody; |
||||
@end |
||||
|
||||
@interface RMTSimpleRequest : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasFillUsername_:1; |
||||
BOOL hasFillOauthScope_:1; |
||||
BOOL hasResponseSize_:1; |
||||
BOOL hasPayload_:1; |
||||
BOOL hasResponseType_:1; |
||||
BOOL fillUsername_:1; |
||||
BOOL fillOauthScope_:1; |
||||
SInt32 responseSize; |
||||
RMTPayload* payload; |
||||
RMTPayloadType responseType; |
||||
} |
||||
- (BOOL) hasResponseType; |
||||
- (BOOL) hasResponseSize; |
||||
- (BOOL) hasPayload; |
||||
- (BOOL) hasFillUsername; |
||||
- (BOOL) hasFillOauthScope; |
||||
@property (readonly) RMTPayloadType responseType; |
||||
@property (readonly) SInt32 responseSize; |
||||
@property (readonly, strong) RMTPayload* payload; |
||||
- (BOOL) fillUsername; |
||||
- (BOOL) fillOauthScope; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTSimpleRequestBuilder*) builder; |
||||
+ (RMTSimpleRequestBuilder*) builder; |
||||
+ (RMTSimpleRequestBuilder*) builderWithPrototype:(RMTSimpleRequest*) prototype; |
||||
- (RMTSimpleRequestBuilder*) toBuilder; |
||||
|
||||
+ (RMTSimpleRequest*) parseFromData:(NSData*) data; |
||||
+ (RMTSimpleRequest*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTSimpleRequest*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTSimpleRequest*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTSimpleRequest*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTSimpleRequest*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTSimpleRequestBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTSimpleRequest* resultSimpleRequest; |
||||
} |
||||
|
||||
- (RMTSimpleRequest*) defaultInstance; |
||||
|
||||
- (RMTSimpleRequestBuilder*) clear; |
||||
- (RMTSimpleRequestBuilder*) clone; |
||||
|
||||
- (RMTSimpleRequest*) build; |
||||
- (RMTSimpleRequest*) buildPartial; |
||||
|
||||
- (RMTSimpleRequestBuilder*) mergeFrom:(RMTSimpleRequest*) other; |
||||
- (RMTSimpleRequestBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTSimpleRequestBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasResponseType; |
||||
- (RMTPayloadType) responseType; |
||||
- (RMTSimpleRequestBuilder*) setResponseType:(RMTPayloadType) value; |
||||
- (RMTSimpleRequestBuilder*) clearResponseType; |
||||
|
||||
- (BOOL) hasResponseSize; |
||||
- (SInt32) responseSize; |
||||
- (RMTSimpleRequestBuilder*) setResponseSize:(SInt32) value; |
||||
- (RMTSimpleRequestBuilder*) clearResponseSize; |
||||
|
||||
- (BOOL) hasPayload; |
||||
- (RMTPayload*) payload; |
||||
- (RMTSimpleRequestBuilder*) setPayload:(RMTPayload*) value; |
||||
- (RMTSimpleRequestBuilder*) setPayloadBuilder:(RMTPayloadBuilder*) builderForValue; |
||||
- (RMTSimpleRequestBuilder*) mergePayload:(RMTPayload*) value; |
||||
- (RMTSimpleRequestBuilder*) clearPayload; |
||||
|
||||
- (BOOL) hasFillUsername; |
||||
- (BOOL) fillUsername; |
||||
- (RMTSimpleRequestBuilder*) setFillUsername:(BOOL) value; |
||||
- (RMTSimpleRequestBuilder*) clearFillUsername; |
||||
|
||||
- (BOOL) hasFillOauthScope; |
||||
- (BOOL) fillOauthScope; |
||||
- (RMTSimpleRequestBuilder*) setFillOauthScope:(BOOL) value; |
||||
- (RMTSimpleRequestBuilder*) clearFillOauthScope; |
||||
@end |
||||
|
||||
@interface RMTSimpleResponse : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasUsername_:1; |
||||
BOOL hasOauthScope_:1; |
||||
BOOL hasPayload_:1; |
||||
NSString* username; |
||||
NSString* oauthScope; |
||||
RMTPayload* payload; |
||||
} |
||||
- (BOOL) hasPayload; |
||||
- (BOOL) hasUsername; |
||||
- (BOOL) hasOauthScope; |
||||
@property (readonly, strong) RMTPayload* payload; |
||||
@property (readonly, strong) NSString* username; |
||||
@property (readonly, strong) NSString* oauthScope; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTSimpleResponseBuilder*) builder; |
||||
+ (RMTSimpleResponseBuilder*) builder; |
||||
+ (RMTSimpleResponseBuilder*) builderWithPrototype:(RMTSimpleResponse*) prototype; |
||||
- (RMTSimpleResponseBuilder*) toBuilder; |
||||
|
||||
+ (RMTSimpleResponse*) parseFromData:(NSData*) data; |
||||
+ (RMTSimpleResponse*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTSimpleResponse*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTSimpleResponse*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTSimpleResponse*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTSimpleResponse*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTSimpleResponseBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTSimpleResponse* resultSimpleResponse; |
||||
} |
||||
|
||||
- (RMTSimpleResponse*) defaultInstance; |
||||
|
||||
- (RMTSimpleResponseBuilder*) clear; |
||||
- (RMTSimpleResponseBuilder*) clone; |
||||
|
||||
- (RMTSimpleResponse*) build; |
||||
- (RMTSimpleResponse*) buildPartial; |
||||
|
||||
- (RMTSimpleResponseBuilder*) mergeFrom:(RMTSimpleResponse*) other; |
||||
- (RMTSimpleResponseBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTSimpleResponseBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasPayload; |
||||
- (RMTPayload*) payload; |
||||
- (RMTSimpleResponseBuilder*) setPayload:(RMTPayload*) value; |
||||
- (RMTSimpleResponseBuilder*) setPayloadBuilder:(RMTPayloadBuilder*) builderForValue; |
||||
- (RMTSimpleResponseBuilder*) mergePayload:(RMTPayload*) value; |
||||
- (RMTSimpleResponseBuilder*) clearPayload; |
||||
|
||||
- (BOOL) hasUsername; |
||||
- (NSString*) username; |
||||
- (RMTSimpleResponseBuilder*) setUsername:(NSString*) value; |
||||
- (RMTSimpleResponseBuilder*) clearUsername; |
||||
|
||||
- (BOOL) hasOauthScope; |
||||
- (NSString*) oauthScope; |
||||
- (RMTSimpleResponseBuilder*) setOauthScope:(NSString*) value; |
||||
- (RMTSimpleResponseBuilder*) clearOauthScope; |
||||
@end |
||||
|
||||
@interface RMTStreamingInputCallRequest : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasPayload_:1; |
||||
RMTPayload* payload; |
||||
} |
||||
- (BOOL) hasPayload; |
||||
@property (readonly, strong) RMTPayload* payload; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTStreamingInputCallRequestBuilder*) builder; |
||||
+ (RMTStreamingInputCallRequestBuilder*) builder; |
||||
+ (RMTStreamingInputCallRequestBuilder*) builderWithPrototype:(RMTStreamingInputCallRequest*) prototype; |
||||
- (RMTStreamingInputCallRequestBuilder*) toBuilder; |
||||
|
||||
+ (RMTStreamingInputCallRequest*) parseFromData:(NSData*) data; |
||||
+ (RMTStreamingInputCallRequest*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingInputCallRequest*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTStreamingInputCallRequest*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingInputCallRequest*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTStreamingInputCallRequest*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTStreamingInputCallRequestBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTStreamingInputCallRequest* resultStreamingInputCallRequest; |
||||
} |
||||
|
||||
- (RMTStreamingInputCallRequest*) defaultInstance; |
||||
|
||||
- (RMTStreamingInputCallRequestBuilder*) clear; |
||||
- (RMTStreamingInputCallRequestBuilder*) clone; |
||||
|
||||
- (RMTStreamingInputCallRequest*) build; |
||||
- (RMTStreamingInputCallRequest*) buildPartial; |
||||
|
||||
- (RMTStreamingInputCallRequestBuilder*) mergeFrom:(RMTStreamingInputCallRequest*) other; |
||||
- (RMTStreamingInputCallRequestBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTStreamingInputCallRequestBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasPayload; |
||||
- (RMTPayload*) payload; |
||||
- (RMTStreamingInputCallRequestBuilder*) setPayload:(RMTPayload*) value; |
||||
- (RMTStreamingInputCallRequestBuilder*) setPayloadBuilder:(RMTPayloadBuilder*) builderForValue; |
||||
- (RMTStreamingInputCallRequestBuilder*) mergePayload:(RMTPayload*) value; |
||||
- (RMTStreamingInputCallRequestBuilder*) clearPayload; |
||||
@end |
||||
|
||||
@interface RMTStreamingInputCallResponse : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasAggregatedPayloadSize_:1; |
||||
SInt32 aggregatedPayloadSize; |
||||
} |
||||
- (BOOL) hasAggregatedPayloadSize; |
||||
@property (readonly) SInt32 aggregatedPayloadSize; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTStreamingInputCallResponseBuilder*) builder; |
||||
+ (RMTStreamingInputCallResponseBuilder*) builder; |
||||
+ (RMTStreamingInputCallResponseBuilder*) builderWithPrototype:(RMTStreamingInputCallResponse*) prototype; |
||||
- (RMTStreamingInputCallResponseBuilder*) toBuilder; |
||||
|
||||
+ (RMTStreamingInputCallResponse*) parseFromData:(NSData*) data; |
||||
+ (RMTStreamingInputCallResponse*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingInputCallResponse*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTStreamingInputCallResponse*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingInputCallResponse*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTStreamingInputCallResponse*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTStreamingInputCallResponseBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTStreamingInputCallResponse* resultStreamingInputCallResponse; |
||||
} |
||||
|
||||
- (RMTStreamingInputCallResponse*) defaultInstance; |
||||
|
||||
- (RMTStreamingInputCallResponseBuilder*) clear; |
||||
- (RMTStreamingInputCallResponseBuilder*) clone; |
||||
|
||||
- (RMTStreamingInputCallResponse*) build; |
||||
- (RMTStreamingInputCallResponse*) buildPartial; |
||||
|
||||
- (RMTStreamingInputCallResponseBuilder*) mergeFrom:(RMTStreamingInputCallResponse*) other; |
||||
- (RMTStreamingInputCallResponseBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTStreamingInputCallResponseBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasAggregatedPayloadSize; |
||||
- (SInt32) aggregatedPayloadSize; |
||||
- (RMTStreamingInputCallResponseBuilder*) setAggregatedPayloadSize:(SInt32) value; |
||||
- (RMTStreamingInputCallResponseBuilder*) clearAggregatedPayloadSize; |
||||
@end |
||||
|
||||
@interface RMTResponseParameters : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasSize_:1; |
||||
BOOL hasIntervalUs_:1; |
||||
SInt32 size; |
||||
SInt32 intervalUs; |
||||
} |
||||
- (BOOL) hasSize; |
||||
- (BOOL) hasIntervalUs; |
||||
@property (readonly) SInt32 size; |
||||
@property (readonly) SInt32 intervalUs; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTResponseParametersBuilder*) builder; |
||||
+ (RMTResponseParametersBuilder*) builder; |
||||
+ (RMTResponseParametersBuilder*) builderWithPrototype:(RMTResponseParameters*) prototype; |
||||
- (RMTResponseParametersBuilder*) toBuilder; |
||||
|
||||
+ (RMTResponseParameters*) parseFromData:(NSData*) data; |
||||
+ (RMTResponseParameters*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTResponseParameters*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTResponseParameters*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTResponseParameters*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTResponseParameters*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTResponseParametersBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTResponseParameters* resultResponseParameters; |
||||
} |
||||
|
||||
- (RMTResponseParameters*) defaultInstance; |
||||
|
||||
- (RMTResponseParametersBuilder*) clear; |
||||
- (RMTResponseParametersBuilder*) clone; |
||||
|
||||
- (RMTResponseParameters*) build; |
||||
- (RMTResponseParameters*) buildPartial; |
||||
|
||||
- (RMTResponseParametersBuilder*) mergeFrom:(RMTResponseParameters*) other; |
||||
- (RMTResponseParametersBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTResponseParametersBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasSize; |
||||
- (SInt32) size; |
||||
- (RMTResponseParametersBuilder*) setSize:(SInt32) value; |
||||
- (RMTResponseParametersBuilder*) clearSize; |
||||
|
||||
- (BOOL) hasIntervalUs; |
||||
- (SInt32) intervalUs; |
||||
- (RMTResponseParametersBuilder*) setIntervalUs:(SInt32) value; |
||||
- (RMTResponseParametersBuilder*) clearIntervalUs; |
||||
@end |
||||
|
||||
@interface RMTStreamingOutputCallRequest : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasPayload_:1; |
||||
BOOL hasResponseType_:1; |
||||
RMTPayload* payload; |
||||
RMTPayloadType responseType; |
||||
NSMutableArray * responseParametersArray; |
||||
} |
||||
- (BOOL) hasResponseType; |
||||
- (BOOL) hasPayload; |
||||
@property (readonly) RMTPayloadType responseType; |
||||
@property (readonly, strong) NSArray * responseParameters; |
||||
@property (readonly, strong) RMTPayload* payload; |
||||
- (RMTResponseParameters*)responseParametersAtIndex:(NSUInteger)index; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTStreamingOutputCallRequestBuilder*) builder; |
||||
+ (RMTStreamingOutputCallRequestBuilder*) builder; |
||||
+ (RMTStreamingOutputCallRequestBuilder*) builderWithPrototype:(RMTStreamingOutputCallRequest*) prototype; |
||||
- (RMTStreamingOutputCallRequestBuilder*) toBuilder; |
||||
|
||||
+ (RMTStreamingOutputCallRequest*) parseFromData:(NSData*) data; |
||||
+ (RMTStreamingOutputCallRequest*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingOutputCallRequest*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTStreamingOutputCallRequest*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingOutputCallRequest*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTStreamingOutputCallRequest*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTStreamingOutputCallRequestBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTStreamingOutputCallRequest* resultStreamingOutputCallRequest; |
||||
} |
||||
|
||||
- (RMTStreamingOutputCallRequest*) defaultInstance; |
||||
|
||||
- (RMTStreamingOutputCallRequestBuilder*) clear; |
||||
- (RMTStreamingOutputCallRequestBuilder*) clone; |
||||
|
||||
- (RMTStreamingOutputCallRequest*) build; |
||||
- (RMTStreamingOutputCallRequest*) buildPartial; |
||||
|
||||
- (RMTStreamingOutputCallRequestBuilder*) mergeFrom:(RMTStreamingOutputCallRequest*) other; |
||||
- (RMTStreamingOutputCallRequestBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTStreamingOutputCallRequestBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasResponseType; |
||||
- (RMTPayloadType) responseType; |
||||
- (RMTStreamingOutputCallRequestBuilder*) setResponseType:(RMTPayloadType) value; |
||||
- (RMTStreamingOutputCallRequestBuilder*) clearResponseType; |
||||
|
||||
- (NSMutableArray *)responseParameters; |
||||
- (RMTResponseParameters*)responseParametersAtIndex:(NSUInteger)index; |
||||
- (RMTStreamingOutputCallRequestBuilder *)addResponseParameters:(RMTResponseParameters*)value; |
||||
- (RMTStreamingOutputCallRequestBuilder *)setResponseParametersArray:(NSArray *)array; |
||||
- (RMTStreamingOutputCallRequestBuilder *)clearResponseParameters; |
||||
|
||||
- (BOOL) hasPayload; |
||||
- (RMTPayload*) payload; |
||||
- (RMTStreamingOutputCallRequestBuilder*) setPayload:(RMTPayload*) value; |
||||
- (RMTStreamingOutputCallRequestBuilder*) setPayloadBuilder:(RMTPayloadBuilder*) builderForValue; |
||||
- (RMTStreamingOutputCallRequestBuilder*) mergePayload:(RMTPayload*) value; |
||||
- (RMTStreamingOutputCallRequestBuilder*) clearPayload; |
||||
@end |
||||
|
||||
@interface RMTStreamingOutputCallResponse : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasPayload_:1; |
||||
RMTPayload* payload; |
||||
} |
||||
- (BOOL) hasPayload; |
||||
@property (readonly, strong) RMTPayload* payload; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RMTStreamingOutputCallResponseBuilder*) builder; |
||||
+ (RMTStreamingOutputCallResponseBuilder*) builder; |
||||
+ (RMTStreamingOutputCallResponseBuilder*) builderWithPrototype:(RMTStreamingOutputCallResponse*) prototype; |
||||
- (RMTStreamingOutputCallResponseBuilder*) toBuilder; |
||||
|
||||
+ (RMTStreamingOutputCallResponse*) parseFromData:(NSData*) data; |
||||
+ (RMTStreamingOutputCallResponse*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingOutputCallResponse*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RMTStreamingOutputCallResponse*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RMTStreamingOutputCallResponse*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RMTStreamingOutputCallResponse*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RMTStreamingOutputCallResponseBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RMTStreamingOutputCallResponse* resultStreamingOutputCallResponse; |
||||
} |
||||
|
||||
- (RMTStreamingOutputCallResponse*) defaultInstance; |
||||
|
||||
- (RMTStreamingOutputCallResponseBuilder*) clear; |
||||
- (RMTStreamingOutputCallResponseBuilder*) clone; |
||||
|
||||
- (RMTStreamingOutputCallResponse*) build; |
||||
- (RMTStreamingOutputCallResponse*) buildPartial; |
||||
|
||||
- (RMTStreamingOutputCallResponseBuilder*) mergeFrom:(RMTStreamingOutputCallResponse*) other; |
||||
- (RMTStreamingOutputCallResponseBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RMTStreamingOutputCallResponseBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasPayload; |
||||
- (RMTPayload*) payload; |
||||
- (RMTStreamingOutputCallResponseBuilder*) setPayload:(RMTPayload*) value; |
||||
- (RMTStreamingOutputCallResponseBuilder*) setPayloadBuilder:(RMTPayloadBuilder*) builderForValue; |
||||
- (RMTStreamingOutputCallResponseBuilder*) mergePayload:(RMTPayload*) value; |
||||
- (RMTStreamingOutputCallResponseBuilder*) clearPayload; |
||||
@end |
||||
|
||||
|
||||
// @@protoc_insertion_point(global_scope)
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,17 @@ |
||||
Pod::Spec.new do |s| |
||||
s.name = 'RemoteTest' |
||||
s.version = '0.0.1' |
||||
s.summary = 'Protobuf library generated from test.proto, messages.proto, and empty.proto' |
||||
s.homepage = 'https://github.com/grpc/grpc/tree/master/src/objective-c/examples/Sample/RemoteTestClient' |
||||
s.license = 'New BSD' |
||||
s.authors = { 'Jorge Canizales' => 'jcanizales@google.com' } |
||||
|
||||
s.source_files = '*.pb.{h,m}' |
||||
s.public_header_files = '*.pb.h' |
||||
|
||||
s.platform = :ios |
||||
s.ios.deployment_target = '6.0' |
||||
s.requires_arc = true |
||||
|
||||
s.dependency 'ProtocolBuffers', '~> 1.9' |
||||
end |
@ -0,0 +1,81 @@ |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
|
||||
#import <ProtocolBuffers/ProtocolBuffers.h> |
||||
|
||||
#import "Empty.pb.h" |
||||
#import "Messages.pb.h" |
||||
// @@protoc_insertion_point(imports)
|
||||
|
||||
@class ObjectiveCFileOptions; |
||||
@class ObjectiveCFileOptionsBuilder; |
||||
@class PBDescriptorProto; |
||||
@class PBDescriptorProtoBuilder; |
||||
@class PBDescriptorProtoExtensionRange; |
||||
@class PBDescriptorProtoExtensionRangeBuilder; |
||||
@class PBEnumDescriptorProto; |
||||
@class PBEnumDescriptorProtoBuilder; |
||||
@class PBEnumOptions; |
||||
@class PBEnumOptionsBuilder; |
||||
@class PBEnumValueDescriptorProto; |
||||
@class PBEnumValueDescriptorProtoBuilder; |
||||
@class PBEnumValueOptions; |
||||
@class PBEnumValueOptionsBuilder; |
||||
@class PBFieldDescriptorProto; |
||||
@class PBFieldDescriptorProtoBuilder; |
||||
@class PBFieldOptions; |
||||
@class PBFieldOptionsBuilder; |
||||
@class PBFileDescriptorProto; |
||||
@class PBFileDescriptorProtoBuilder; |
||||
@class PBFileDescriptorSet; |
||||
@class PBFileDescriptorSetBuilder; |
||||
@class PBFileOptions; |
||||
@class PBFileOptionsBuilder; |
||||
@class PBMessageOptions; |
||||
@class PBMessageOptionsBuilder; |
||||
@class PBMethodDescriptorProto; |
||||
@class PBMethodDescriptorProtoBuilder; |
||||
@class PBMethodOptions; |
||||
@class PBMethodOptionsBuilder; |
||||
@class PBOneofDescriptorProto; |
||||
@class PBOneofDescriptorProtoBuilder; |
||||
@class PBServiceDescriptorProto; |
||||
@class PBServiceDescriptorProtoBuilder; |
||||
@class PBServiceOptions; |
||||
@class PBServiceOptionsBuilder; |
||||
@class PBSourceCodeInfo; |
||||
@class PBSourceCodeInfoBuilder; |
||||
@class PBSourceCodeInfoLocation; |
||||
@class PBSourceCodeInfoLocationBuilder; |
||||
@class PBUninterpretedOption; |
||||
@class PBUninterpretedOptionBuilder; |
||||
@class PBUninterpretedOptionNamePart; |
||||
@class PBUninterpretedOptionNamePartBuilder; |
||||
@class RMTEmpty; |
||||
@class RMTEmptyBuilder; |
||||
@class RMTPayload; |
||||
@class RMTPayloadBuilder; |
||||
@class RMTResponseParameters; |
||||
@class RMTResponseParametersBuilder; |
||||
@class RMTSimpleRequest; |
||||
@class RMTSimpleRequestBuilder; |
||||
@class RMTSimpleResponse; |
||||
@class RMTSimpleResponseBuilder; |
||||
@class RMTStreamingInputCallRequest; |
||||
@class RMTStreamingInputCallRequestBuilder; |
||||
@class RMTStreamingInputCallResponse; |
||||
@class RMTStreamingInputCallResponseBuilder; |
||||
@class RMTStreamingOutputCallRequest; |
||||
@class RMTStreamingOutputCallRequestBuilder; |
||||
@class RMTStreamingOutputCallResponse; |
||||
@class RMTStreamingOutputCallResponseBuilder; |
||||
|
||||
|
||||
|
||||
@interface RMTTestRoot : NSObject { |
||||
} |
||||
+ (PBExtensionRegistry*) extensionRegistry; |
||||
+ (void) registerAllExtensions:(PBMutableExtensionRegistry*) registry; |
||||
@end |
||||
|
||||
|
||||
// @@protoc_insertion_point(global_scope)
|
@ -0,0 +1,27 @@ |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT! |
||||
|
||||
#import "Test.pb.h" |
||||
// @@protoc_insertion_point(imports) |
||||
|
||||
@implementation RMTTestRoot |
||||
static PBExtensionRegistry* extensionRegistry = nil; |
||||
+ (PBExtensionRegistry*) extensionRegistry { |
||||
return extensionRegistry; |
||||
} |
||||
|
||||
+ (void) initialize { |
||||
if (self == [RMTTestRoot class]) { |
||||
PBMutableExtensionRegistry* registry = [PBMutableExtensionRegistry registry]; |
||||
[self registerAllExtensions:registry]; |
||||
[RMTEmptyRoot registerAllExtensions:registry]; |
||||
[RMTMessagesRoot registerAllExtensions:registry]; |
||||
[ObjectivecDescriptorRoot registerAllExtensions:registry]; |
||||
extensionRegistry = registry; |
||||
} |
||||
} |
||||
+ (void) registerAllExtensions:(PBMutableExtensionRegistry*) registry { |
||||
} |
||||
@end |
||||
|
||||
|
||||
// @@protoc_insertion_point(global_scope) |
@ -0,0 +1,46 @@ |
||||
// Copyright 2015, Google Inc. |
||||
// All rights reserved. |
||||
// |
||||
// Redistribution and use in source and binary forms, with or without |
||||
// modification, are permitted provided that the following conditions are |
||||
// met: |
||||
// |
||||
// * Redistributions of source code must retain the above copyright |
||||
// notice, this list of conditions and the following disclaimer. |
||||
// * Redistributions in binary form must reproduce the above |
||||
// copyright notice, this list of conditions and the following disclaimer |
||||
// in the documentation and/or other materials provided with the |
||||
// distribution. |
||||
// * Neither the name of Google Inc. nor the names of its |
||||
// contributors may be used to endorse or promote products derived from |
||||
// this software without specific prior written permission. |
||||
// |
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
|
||||
syntax = "proto2"; |
||||
|
||||
import "google/protobuf/objectivec-descriptor.proto"; |
||||
|
||||
package grpc.testing; |
||||
|
||||
option (google.protobuf.objectivec_file_options).class_prefix = "RMT"; |
||||
|
||||
// An empty message that you can re-use to avoid defining duplicated empty |
||||
// messages in your project. A typical example is to use it as argument or the |
||||
// return value of a service API. For instance: |
||||
// |
||||
// service Foo { |
||||
// rpc Bar (grpc.testing.Empty) returns (grpc.testing.Empty) { }; |
||||
// }; |
||||
// |
||||
message Empty {} |
@ -0,0 +1,135 @@ |
||||
// Copyright 2015, Google Inc. |
||||
// All rights reserved. |
||||
// |
||||
// Redistribution and use in source and binary forms, with or without |
||||
// modification, are permitted provided that the following conditions are |
||||
// met: |
||||
// |
||||
// * Redistributions of source code must retain the above copyright |
||||
// notice, this list of conditions and the following disclaimer. |
||||
// * Redistributions in binary form must reproduce the above |
||||
// copyright notice, this list of conditions and the following disclaimer |
||||
// in the documentation and/or other materials provided with the |
||||
// distribution. |
||||
// * Neither the name of Google Inc. nor the names of its |
||||
// contributors may be used to endorse or promote products derived from |
||||
// this software without specific prior written permission. |
||||
// |
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
|
||||
// Message definitions to be used by integration test service definitions. |
||||
|
||||
syntax = "proto2"; |
||||
|
||||
import "google/protobuf/objectivec-descriptor.proto"; |
||||
|
||||
package grpc.testing; |
||||
|
||||
option (google.protobuf.objectivec_file_options).class_prefix = "RMT"; |
||||
|
||||
// The type of payload that should be returned. |
||||
enum PayloadType { |
||||
// Compressable text format. |
||||
COMPRESSABLE = 0; |
||||
|
||||
// Uncompressable binary format. |
||||
UNCOMPRESSABLE = 1; |
||||
|
||||
// Randomly chosen from all other formats defined in this enum. |
||||
RANDOM = 2; |
||||
} |
||||
|
||||
// A block of data, to simply increase gRPC message size. |
||||
message Payload { |
||||
// The type of data in body. |
||||
optional PayloadType type = 1; |
||||
// Primary contents of payload. |
||||
optional bytes body = 2; |
||||
} |
||||
|
||||
// Unary request. |
||||
message SimpleRequest { |
||||
// Desired payload type in the response from the server. |
||||
// If response_type is RANDOM, server randomly chooses one from other formats. |
||||
optional PayloadType response_type = 1; |
||||
|
||||
// Desired payload size in the response from the server. |
||||
// If response_type is COMPRESSABLE, this denotes the size before compression. |
||||
optional int32 response_size = 2; |
||||
|
||||
// Optional input payload sent along with the request. |
||||
optional Payload payload = 3; |
||||
|
||||
// Whether SimpleResponse should include username. |
||||
optional bool fill_username = 4; |
||||
|
||||
// Whether SimpleResponse should include OAuth scope. |
||||
optional bool fill_oauth_scope = 5; |
||||
} |
||||
|
||||
// Unary response, as configured by the request. |
||||
message SimpleResponse { |
||||
// Payload to increase message size. |
||||
optional Payload payload = 1; |
||||
// The user the request came from, for verifying authentication was |
||||
// successful when the client expected it. |
||||
optional string username = 2; |
||||
// OAuth scope. |
||||
optional string oauth_scope = 3; |
||||
} |
||||
|
||||
// Client-streaming request. |
||||
message StreamingInputCallRequest { |
||||
// Optional input payload sent along with the request. |
||||
optional Payload payload = 1; |
||||
|
||||
// Not expecting any payload from the response. |
||||
} |
||||
|
||||
// Client-streaming response. |
||||
message StreamingInputCallResponse { |
||||
// Aggregated size of payloads received from the client. |
||||
optional int32 aggregated_payload_size = 1; |
||||
} |
||||
|
||||
// Configuration for a particular response. |
||||
message ResponseParameters { |
||||
// Desired payload sizes in responses from the server. |
||||
// If response_type is COMPRESSABLE, this denotes the size before compression. |
||||
optional int32 size = 1; |
||||
|
||||
// Desired interval between consecutive responses in the response stream in |
||||
// microseconds. |
||||
optional int32 interval_us = 2; |
||||
} |
||||
|
||||
// Server-streaming request. |
||||
message StreamingOutputCallRequest { |
||||
// Desired payload type in the response from the server. |
||||
// If response_type is RANDOM, the payload from each response in the stream |
||||
// might be of different types. This is to simulate a mixed type of payload |
||||
// stream. |
||||
optional PayloadType response_type = 1; |
||||
|
||||
// Configuration for each expected response message. |
||||
repeated ResponseParameters response_parameters = 2; |
||||
|
||||
// Optional input payload sent along with the request. |
||||
optional Payload payload = 3; |
||||
} |
||||
|
||||
// Server-streaming response, as configured by the request and parameters. |
||||
message StreamingOutputCallResponse { |
||||
// Payload to increase response size. |
||||
optional Payload payload = 1; |
||||
} |
@ -0,0 +1,74 @@ |
||||
// Copyright 2015, Google Inc. |
||||
// All rights reserved. |
||||
// |
||||
// Redistribution and use in source and binary forms, with or without |
||||
// modification, are permitted provided that the following conditions are |
||||
// met: |
||||
// |
||||
// * Redistributions of source code must retain the above copyright |
||||
// notice, this list of conditions and the following disclaimer. |
||||
// * Redistributions in binary form must reproduce the above |
||||
// copyright notice, this list of conditions and the following disclaimer |
||||
// in the documentation and/or other materials provided with the |
||||
// distribution. |
||||
// * Neither the name of Google Inc. nor the names of its |
||||
// contributors may be used to endorse or promote products derived from |
||||
// this software without specific prior written permission. |
||||
// |
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
|
||||
// An integration test service that covers all the method signature permutations |
||||
// of unary/streaming requests/responses. |
||||
syntax = "proto2"; |
||||
|
||||
import "empty.proto"; |
||||
import "messages.proto"; |
||||
import "google/protobuf/objectivec-descriptor.proto"; |
||||
|
||||
package grpc.testing; |
||||
|
||||
option (google.protobuf.objectivec_file_options).class_prefix = "RMT"; |
||||
|
||||
// A simple service to test the various types of RPCs and experiment with |
||||
// performance with various types of payload. |
||||
service TestService { |
||||
// One empty request followed by one empty response. |
||||
rpc EmptyCall(grpc.testing.Empty) returns (grpc.testing.Empty); |
||||
|
||||
// One request followed by one response. |
||||
// TODO(Issue 527): Describe required server behavior. |
||||
rpc UnaryCall(SimpleRequest) returns (SimpleResponse); |
||||
|
||||
// One request followed by a sequence of responses (streamed download). |
||||
// The server returns the payload with client desired type and sizes. |
||||
// rpc StreamingOutputCall(StreamingOutputCallRequest) |
||||
// returns (stream StreamingOutputCallResponse); |
||||
|
||||
// A sequence of requests followed by one response (streamed upload). |
||||
// The server returns the aggregated size of client payload as the result. |
||||
// rpc StreamingInputCall(stream StreamingInputCallRequest) |
||||
// returns (StreamingInputCallResponse); |
||||
|
||||
// A sequence of requests with each request served by the server immediately. |
||||
// As one request could lead to multiple responses, this interface |
||||
// demonstrates the idea of full duplexing. |
||||
// rpc FullDuplexCall(stream StreamingOutputCallRequest) |
||||
// returns (stream StreamingOutputCallResponse); |
||||
|
||||
// A sequence of requests followed by a sequence of responses. |
||||
// The server buffers all the client requests and then serves them in order. A |
||||
// stream of responses are returned to the client when the server starts with |
||||
// first request. |
||||
// rpc HalfDuplexCall(stream StreamingOutputCallRequest) |
||||
// returns (stream StreamingOutputCallResponse); |
||||
} |
@ -0,0 +1,387 @@ |
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
|
||||
#import <ProtocolBuffers/ProtocolBuffers.h> |
||||
|
||||
// @@protoc_insertion_point(imports)
|
||||
|
||||
@class ObjectiveCFileOptions; |
||||
@class ObjectiveCFileOptionsBuilder; |
||||
@class PBDescriptorProto; |
||||
@class PBDescriptorProtoBuilder; |
||||
@class PBDescriptorProtoExtensionRange; |
||||
@class PBDescriptorProtoExtensionRangeBuilder; |
||||
@class PBEnumDescriptorProto; |
||||
@class PBEnumDescriptorProtoBuilder; |
||||
@class PBEnumOptions; |
||||
@class PBEnumOptionsBuilder; |
||||
@class PBEnumValueDescriptorProto; |
||||
@class PBEnumValueDescriptorProtoBuilder; |
||||
@class PBEnumValueOptions; |
||||
@class PBEnumValueOptionsBuilder; |
||||
@class PBFieldDescriptorProto; |
||||
@class PBFieldDescriptorProtoBuilder; |
||||
@class PBFieldOptions; |
||||
@class PBFieldOptionsBuilder; |
||||
@class PBFileDescriptorProto; |
||||
@class PBFileDescriptorProtoBuilder; |
||||
@class PBFileDescriptorSet; |
||||
@class PBFileDescriptorSetBuilder; |
||||
@class PBFileOptions; |
||||
@class PBFileOptionsBuilder; |
||||
@class PBMessageOptions; |
||||
@class PBMessageOptionsBuilder; |
||||
@class PBMethodDescriptorProto; |
||||
@class PBMethodDescriptorProtoBuilder; |
||||
@class PBMethodOptions; |
||||
@class PBMethodOptionsBuilder; |
||||
@class PBOneofDescriptorProto; |
||||
@class PBOneofDescriptorProtoBuilder; |
||||
@class PBServiceDescriptorProto; |
||||
@class PBServiceDescriptorProtoBuilder; |
||||
@class PBServiceOptions; |
||||
@class PBServiceOptionsBuilder; |
||||
@class PBSourceCodeInfo; |
||||
@class PBSourceCodeInfoBuilder; |
||||
@class PBSourceCodeInfoLocation; |
||||
@class PBSourceCodeInfoLocationBuilder; |
||||
@class PBUninterpretedOption; |
||||
@class PBUninterpretedOptionBuilder; |
||||
@class PBUninterpretedOptionNamePart; |
||||
@class PBUninterpretedOptionNamePartBuilder; |
||||
@class RGDFeature; |
||||
@class RGDFeatureBuilder; |
||||
@class RGDPoint; |
||||
@class RGDPointBuilder; |
||||
@class RGDRectangle; |
||||
@class RGDRectangleBuilder; |
||||
@class RGDRouteNote; |
||||
@class RGDRouteNoteBuilder; |
||||
@class RGDRouteSummary; |
||||
@class RGDRouteSummaryBuilder; |
||||
|
||||
|
||||
|
||||
@interface RGDRouteGuideRoot : NSObject { |
||||
} |
||||
+ (PBExtensionRegistry*) extensionRegistry; |
||||
+ (void) registerAllExtensions:(PBMutableExtensionRegistry*) registry; |
||||
@end |
||||
|
||||
@interface RGDPoint : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasLatitude_:1; |
||||
BOOL hasLongitude_:1; |
||||
SInt32 latitude; |
||||
SInt32 longitude; |
||||
} |
||||
- (BOOL) hasLatitude; |
||||
- (BOOL) hasLongitude; |
||||
@property (readonly) SInt32 latitude; |
||||
@property (readonly) SInt32 longitude; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RGDPointBuilder*) builder; |
||||
+ (RGDPointBuilder*) builder; |
||||
+ (RGDPointBuilder*) builderWithPrototype:(RGDPoint*) prototype; |
||||
- (RGDPointBuilder*) toBuilder; |
||||
|
||||
+ (RGDPoint*) parseFromData:(NSData*) data; |
||||
+ (RGDPoint*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDPoint*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RGDPoint*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDPoint*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RGDPoint*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RGDPointBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RGDPoint* resultPoint; |
||||
} |
||||
|
||||
- (RGDPoint*) defaultInstance; |
||||
|
||||
- (RGDPointBuilder*) clear; |
||||
- (RGDPointBuilder*) clone; |
||||
|
||||
- (RGDPoint*) build; |
||||
- (RGDPoint*) buildPartial; |
||||
|
||||
- (RGDPointBuilder*) mergeFrom:(RGDPoint*) other; |
||||
- (RGDPointBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RGDPointBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasLatitude; |
||||
- (SInt32) latitude; |
||||
- (RGDPointBuilder*) setLatitude:(SInt32) value; |
||||
- (RGDPointBuilder*) clearLatitude; |
||||
|
||||
- (BOOL) hasLongitude; |
||||
- (SInt32) longitude; |
||||
- (RGDPointBuilder*) setLongitude:(SInt32) value; |
||||
- (RGDPointBuilder*) clearLongitude; |
||||
@end |
||||
|
||||
@interface RGDRectangle : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasLo_:1; |
||||
BOOL hasHi_:1; |
||||
RGDPoint* lo; |
||||
RGDPoint* hi; |
||||
} |
||||
- (BOOL) hasLo; |
||||
- (BOOL) hasHi; |
||||
@property (readonly, strong) RGDPoint* lo; |
||||
@property (readonly, strong) RGDPoint* hi; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RGDRectangleBuilder*) builder; |
||||
+ (RGDRectangleBuilder*) builder; |
||||
+ (RGDRectangleBuilder*) builderWithPrototype:(RGDRectangle*) prototype; |
||||
- (RGDRectangleBuilder*) toBuilder; |
||||
|
||||
+ (RGDRectangle*) parseFromData:(NSData*) data; |
||||
+ (RGDRectangle*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDRectangle*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RGDRectangle*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDRectangle*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RGDRectangle*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RGDRectangleBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RGDRectangle* resultRectangle; |
||||
} |
||||
|
||||
- (RGDRectangle*) defaultInstance; |
||||
|
||||
- (RGDRectangleBuilder*) clear; |
||||
- (RGDRectangleBuilder*) clone; |
||||
|
||||
- (RGDRectangle*) build; |
||||
- (RGDRectangle*) buildPartial; |
||||
|
||||
- (RGDRectangleBuilder*) mergeFrom:(RGDRectangle*) other; |
||||
- (RGDRectangleBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RGDRectangleBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasLo; |
||||
- (RGDPoint*) lo; |
||||
- (RGDRectangleBuilder*) setLo:(RGDPoint*) value; |
||||
- (RGDRectangleBuilder*) setLoBuilder:(RGDPointBuilder*) builderForValue; |
||||
- (RGDRectangleBuilder*) mergeLo:(RGDPoint*) value; |
||||
- (RGDRectangleBuilder*) clearLo; |
||||
|
||||
- (BOOL) hasHi; |
||||
- (RGDPoint*) hi; |
||||
- (RGDRectangleBuilder*) setHi:(RGDPoint*) value; |
||||
- (RGDRectangleBuilder*) setHiBuilder:(RGDPointBuilder*) builderForValue; |
||||
- (RGDRectangleBuilder*) mergeHi:(RGDPoint*) value; |
||||
- (RGDRectangleBuilder*) clearHi; |
||||
@end |
||||
|
||||
@interface RGDFeature : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasName_:1; |
||||
BOOL hasLocation_:1; |
||||
NSString* name; |
||||
RGDPoint* location; |
||||
} |
||||
- (BOOL) hasName; |
||||
- (BOOL) hasLocation; |
||||
@property (readonly, strong) NSString* name; |
||||
@property (readonly, strong) RGDPoint* location; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RGDFeatureBuilder*) builder; |
||||
+ (RGDFeatureBuilder*) builder; |
||||
+ (RGDFeatureBuilder*) builderWithPrototype:(RGDFeature*) prototype; |
||||
- (RGDFeatureBuilder*) toBuilder; |
||||
|
||||
+ (RGDFeature*) parseFromData:(NSData*) data; |
||||
+ (RGDFeature*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDFeature*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RGDFeature*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDFeature*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RGDFeature*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RGDFeatureBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RGDFeature* resultFeature; |
||||
} |
||||
|
||||
- (RGDFeature*) defaultInstance; |
||||
|
||||
- (RGDFeatureBuilder*) clear; |
||||
- (RGDFeatureBuilder*) clone; |
||||
|
||||
- (RGDFeature*) build; |
||||
- (RGDFeature*) buildPartial; |
||||
|
||||
- (RGDFeatureBuilder*) mergeFrom:(RGDFeature*) other; |
||||
- (RGDFeatureBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RGDFeatureBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasName; |
||||
- (NSString*) name; |
||||
- (RGDFeatureBuilder*) setName:(NSString*) value; |
||||
- (RGDFeatureBuilder*) clearName; |
||||
|
||||
- (BOOL) hasLocation; |
||||
- (RGDPoint*) location; |
||||
- (RGDFeatureBuilder*) setLocation:(RGDPoint*) value; |
||||
- (RGDFeatureBuilder*) setLocationBuilder:(RGDPointBuilder*) builderForValue; |
||||
- (RGDFeatureBuilder*) mergeLocation:(RGDPoint*) value; |
||||
- (RGDFeatureBuilder*) clearLocation; |
||||
@end |
||||
|
||||
@interface RGDRouteNote : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasMessage_:1; |
||||
BOOL hasLocation_:1; |
||||
NSString* message; |
||||
RGDPoint* location; |
||||
} |
||||
- (BOOL) hasLocation; |
||||
- (BOOL) hasMessage; |
||||
@property (readonly, strong) RGDPoint* location; |
||||
@property (readonly, strong) NSString* message; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RGDRouteNoteBuilder*) builder; |
||||
+ (RGDRouteNoteBuilder*) builder; |
||||
+ (RGDRouteNoteBuilder*) builderWithPrototype:(RGDRouteNote*) prototype; |
||||
- (RGDRouteNoteBuilder*) toBuilder; |
||||
|
||||
+ (RGDRouteNote*) parseFromData:(NSData*) data; |
||||
+ (RGDRouteNote*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDRouteNote*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RGDRouteNote*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDRouteNote*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RGDRouteNote*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RGDRouteNoteBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RGDRouteNote* resultRouteNote; |
||||
} |
||||
|
||||
- (RGDRouteNote*) defaultInstance; |
||||
|
||||
- (RGDRouteNoteBuilder*) clear; |
||||
- (RGDRouteNoteBuilder*) clone; |
||||
|
||||
- (RGDRouteNote*) build; |
||||
- (RGDRouteNote*) buildPartial; |
||||
|
||||
- (RGDRouteNoteBuilder*) mergeFrom:(RGDRouteNote*) other; |
||||
- (RGDRouteNoteBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RGDRouteNoteBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasLocation; |
||||
- (RGDPoint*) location; |
||||
- (RGDRouteNoteBuilder*) setLocation:(RGDPoint*) value; |
||||
- (RGDRouteNoteBuilder*) setLocationBuilder:(RGDPointBuilder*) builderForValue; |
||||
- (RGDRouteNoteBuilder*) mergeLocation:(RGDPoint*) value; |
||||
- (RGDRouteNoteBuilder*) clearLocation; |
||||
|
||||
- (BOOL) hasMessage; |
||||
- (NSString*) message; |
||||
- (RGDRouteNoteBuilder*) setMessage:(NSString*) value; |
||||
- (RGDRouteNoteBuilder*) clearMessage; |
||||
@end |
||||
|
||||
@interface RGDRouteSummary : PBGeneratedMessage<GeneratedMessageProtocol> { |
||||
@private |
||||
BOOL hasPointCount_:1; |
||||
BOOL hasFeatureCount_:1; |
||||
BOOL hasDistance_:1; |
||||
BOOL hasElapsedTime_:1; |
||||
SInt32 pointCount; |
||||
SInt32 featureCount; |
||||
SInt32 distance; |
||||
SInt32 elapsedTime; |
||||
} |
||||
- (BOOL) hasPointCount; |
||||
- (BOOL) hasFeatureCount; |
||||
- (BOOL) hasDistance; |
||||
- (BOOL) hasElapsedTime; |
||||
@property (readonly) SInt32 pointCount; |
||||
@property (readonly) SInt32 featureCount; |
||||
@property (readonly) SInt32 distance; |
||||
@property (readonly) SInt32 elapsedTime; |
||||
|
||||
+ (instancetype) defaultInstance; |
||||
- (instancetype) defaultInstance; |
||||
|
||||
- (BOOL) isInitialized; |
||||
- (void) writeToCodedOutputStream:(PBCodedOutputStream*) output; |
||||
- (RGDRouteSummaryBuilder*) builder; |
||||
+ (RGDRouteSummaryBuilder*) builder; |
||||
+ (RGDRouteSummaryBuilder*) builderWithPrototype:(RGDRouteSummary*) prototype; |
||||
- (RGDRouteSummaryBuilder*) toBuilder; |
||||
|
||||
+ (RGDRouteSummary*) parseFromData:(NSData*) data; |
||||
+ (RGDRouteSummary*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDRouteSummary*) parseFromInputStream:(NSInputStream*) input; |
||||
+ (RGDRouteSummary*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
+ (RGDRouteSummary*) parseFromCodedInputStream:(PBCodedInputStream*) input; |
||||
+ (RGDRouteSummary*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
@end |
||||
|
||||
@interface RGDRouteSummaryBuilder : PBGeneratedMessageBuilder { |
||||
@private |
||||
RGDRouteSummary* resultRouteSummary; |
||||
} |
||||
|
||||
- (RGDRouteSummary*) defaultInstance; |
||||
|
||||
- (RGDRouteSummaryBuilder*) clear; |
||||
- (RGDRouteSummaryBuilder*) clone; |
||||
|
||||
- (RGDRouteSummary*) build; |
||||
- (RGDRouteSummary*) buildPartial; |
||||
|
||||
- (RGDRouteSummaryBuilder*) mergeFrom:(RGDRouteSummary*) other; |
||||
- (RGDRouteSummaryBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input; |
||||
- (RGDRouteSummaryBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry; |
||||
|
||||
- (BOOL) hasPointCount; |
||||
- (SInt32) pointCount; |
||||
- (RGDRouteSummaryBuilder*) setPointCount:(SInt32) value; |
||||
- (RGDRouteSummaryBuilder*) clearPointCount; |
||||
|
||||
- (BOOL) hasFeatureCount; |
||||
- (SInt32) featureCount; |
||||
- (RGDRouteSummaryBuilder*) setFeatureCount:(SInt32) value; |
||||
- (RGDRouteSummaryBuilder*) clearFeatureCount; |
||||
|
||||
- (BOOL) hasDistance; |
||||
- (SInt32) distance; |
||||
- (RGDRouteSummaryBuilder*) setDistance:(SInt32) value; |
||||
- (RGDRouteSummaryBuilder*) clearDistance; |
||||
|
||||
- (BOOL) hasElapsedTime; |
||||
- (SInt32) elapsedTime; |
||||
- (RGDRouteSummaryBuilder*) setElapsedTime:(SInt32) value; |
||||
- (RGDRouteSummaryBuilder*) clearElapsedTime; |
||||
@end |
||||
|
||||
|
||||
// @@protoc_insertion_point(global_scope)
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,17 @@ |
||||
Pod::Spec.new do |s| |
||||
s.name = 'Route_guide' |
||||
s.version = '0.0.1' |
||||
s.summary = 'Protobuf library generated from route_guide.proto' |
||||
s.homepage = 'https://github.com/grpc/grpc/tree/master/src/objective-c/examples/Sample/RouteGuideClient' |
||||
s.license = 'New BSD' |
||||
s.authors = { 'Jorge Canizales' => 'jcanizales@google.com' } |
||||
|
||||
s.source_files = '*.pb.{h,m}' |
||||
s.public_header_files = '*.pb.h' |
||||
|
||||
s.platform = :ios |
||||
s.ios.deployment_target = '6.0' |
||||
s.requires_arc = true |
||||
|
||||
s.dependency 'ProtocolBuffers', '~> 1.9' |
||||
end |
@ -0,0 +1,121 @@ |
||||
// Copyright 2015, Google Inc. |
||||
// All rights reserved. |
||||
// |
||||
// Redistribution and use in source and binary forms, with or without |
||||
// modification, are permitted provided that the following conditions are |
||||
// met: |
||||
// |
||||
// * Redistributions of source code must retain the above copyright |
||||
// notice, this list of conditions and the following disclaimer. |
||||
// * Redistributions in binary form must reproduce the above |
||||
// copyright notice, this list of conditions and the following disclaimer |
||||
// in the documentation and/or other materials provided with the |
||||
// distribution. |
||||
// * Neither the name of Google Inc. nor the names of its |
||||
// contributors may be used to endorse or promote products derived from |
||||
// this software without specific prior written permission. |
||||
// |
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
|
||||
syntax = "proto2"; |
||||
|
||||
package grpc.example.routeguide; |
||||
|
||||
import "google/protobuf/objectivec-descriptor.proto"; |
||||
option (google.protobuf.objectivec_file_options).class_prefix = "RGD"; |
||||
|
||||
// Interface exported by the server. |
||||
service RouteGuide { |
||||
// A simple RPC. |
||||
// |
||||
// Obtains the feature at a given position. |
||||
rpc GetFeature(Point) returns (Feature) {} |
||||
|
||||
// A server-to-client streaming RPC. |
||||
// |
||||
// Obtains the Features available within the given Rectangle. Results are |
||||
// streamed rather than returned at once (e.g. in a response message with a |
||||
// repeated field), as the rectangle may cover a large area and contain a |
||||
// huge number of features. |
||||
// rpc ListFeatures(Rectangle) returns (stream Feature) {} |
||||
|
||||
// A client-to-server streaming RPC. |
||||
// |
||||
// Accepts a stream of Points on a route being traversed, returning a |
||||
// RouteSummary when traversal is completed. |
||||
// rpc RecordRoute(stream Point) returns (RouteSummary) {} |
||||
|
||||
// A Bidirectional streaming RPC. |
||||
// |
||||
// Accepts a stream of RouteNotes sent while a route is being traversed, |
||||
// while receiving other RouteNotes (e.g. from other users). |
||||
// rpc RouteChat(stream RouteNote) returns (stream RouteNote) {} |
||||
} |
||||
|
||||
// Points are represented as latitude-longitude pairs in the E7 representation |
||||
// (degrees multiplied by 10**7 and rounded to the nearest integer). |
||||
// Latitudes should be in the range +/- 90 degrees and longitude should be in |
||||
// the range +/- 180 degrees (inclusive). |
||||
message Point { |
||||
optional int32 latitude = 1; |
||||
optional int32 longitude = 2; |
||||
} |
||||
|
||||
// A latitude-longitude rectangle, represented as two diagonally opposite |
||||
// points "lo" and "hi". |
||||
message Rectangle { |
||||
// One corner of the rectangle. |
||||
optional Point lo = 1; |
||||
|
||||
// The other corner of the rectangle. |
||||
optional Point hi = 2; |
||||
} |
||||
|
||||
// A feature names something at a given point. |
||||
// |
||||
// If a feature could not be named, the name is empty. |
||||
message Feature { |
||||
// The name of the feature. |
||||
optional string name = 1; |
||||
|
||||
// The point where the feature is detected. |
||||
optional Point location = 2; |
||||
} |
||||
|
||||
// A RouteNote is a message sent while at a given point. |
||||
message RouteNote { |
||||
// The location from which the message is sent. |
||||
optional Point location = 1; |
||||
|
||||
// The message to be sent. |
||||
optional string message = 2; |
||||
} |
||||
|
||||
// A RouteSummary is received in response to a RecordRoute rpc. |
||||
// |
||||
// It contains the number of individual points received, the number of |
||||
// detected features, and the total distance covered as the cumulative sum of |
||||
// the distance between each point. |
||||
message RouteSummary { |
||||
// The number of points received. |
||||
optional int32 point_count = 1; |
||||
|
||||
// The number of known features passed while traversing the route. |
||||
optional int32 feature_count = 2; |
||||
|
||||
// The distance covered in metres. |
||||
optional int32 distance = 3; |
||||
|
||||
// The duration of the traversal in seconds. |
||||
optional int32 elapsed_time = 4; |
||||
} |
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,144 @@ |
||||
/* |
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
|
||||
#import <UIKit/UIKit.h> |
||||
#import <XCTest/XCTest.h> |
||||
|
||||
#import <gRPC/GRPCCall.h> |
||||
#import <gRPC/GRPCMethodName.h> |
||||
#import <gRPC/GRXWriter+Immediate.h> |
||||
#import <gRPC/GRXWriteable.h> |
||||
#import <RemoteTest/Messages.pb.h> |
||||
|
||||
@interface RemoteTests : XCTestCase |
||||
@end |
||||
|
||||
@implementation RemoteTests |
||||
|
||||
- (void)testConnectionToRemoteServer { |
||||
__weak XCTestExpectation *expectation = [self expectationWithDescription:@"Server reachable."]; |
||||
|
||||
// This method isn't implemented by the remote server. |
||||
GRPCMethodName *method = [[GRPCMethodName alloc] initWithPackage:@"grpc.testing" |
||||
interface:@"TestService" |
||||
method:@"Nonexistent"]; |
||||
|
||||
id<GRXWriter> requestsWriter = [GRXWriter writerWithValue:[NSData data]]; |
||||
|
||||
GRPCCall *call = [[GRPCCall alloc] initWithHost:@"grpc-test.sandbox.google.com" |
||||
method:method |
||||
requestsWriter:requestsWriter]; |
||||
|
||||
id<GRXWriteable> responsesWriteable = [[GRXWriteable alloc] initWithValueHandler:^(NSData *value) { |
||||
XCTFail(@"Received unexpected response: %@", value); |
||||
} completionHandler:^(NSError *errorOrNil) { |
||||
XCTAssertNotNil(errorOrNil, @"Finished without error!"); |
||||
// TODO(jcanizales): The server should return code 12 UNIMPLEMENTED, not 5 NOT FOUND. |
||||
XCTAssertEqual(errorOrNil.code, 5, @"Finished with unexpected error: %@", errorOrNil); |
||||
[expectation fulfill]; |
||||
}]; |
||||
|
||||
[call startWithWriteable:responsesWriteable]; |
||||
|
||||
[self waitForExpectationsWithTimeout:2. handler:nil]; |
||||
} |
||||
|
||||
- (void)testEmptyRPC { |
||||
__weak XCTestExpectation *response = [self expectationWithDescription:@"Empty response received."]; |
||||
__weak XCTestExpectation *completion = [self expectationWithDescription:@"Empty RPC completed."]; |
||||
|
||||
GRPCMethodName *method = [[GRPCMethodName alloc] initWithPackage:@"grpc.testing" |
||||
interface:@"TestService" |
||||
method:@"EmptyCall"]; |
||||
|
||||
id<GRXWriter> requestsWriter = [GRXWriter writerWithValue:[NSData data]]; |
||||
|
||||
GRPCCall *call = [[GRPCCall alloc] initWithHost:@"grpc-test.sandbox.google.com" |
||||
method:method |
||||
requestsWriter:requestsWriter]; |
||||
|
||||
id<GRXWriteable> responsesWriteable = [[GRXWriteable alloc] initWithValueHandler:^(NSData *value) { |
||||
XCTAssertNotNil(value, @"nil value received as response."); |
||||
XCTAssertEqual([value length], 0, @"Non-empty response received: %@", value); |
||||
[response fulfill]; |
||||
} completionHandler:^(NSError *errorOrNil) { |
||||
XCTAssertNil(errorOrNil, @"Finished with unexpected error: %@", errorOrNil); |
||||
[completion fulfill]; |
||||
}]; |
||||
|
||||
[call startWithWriteable:responsesWriteable]; |
||||
|
||||
[self waitForExpectationsWithTimeout:2. handler:nil]; |
||||
} |
||||
|
||||
- (void)testSimpleProtoRPC { |
||||
__weak XCTestExpectation *response = [self expectationWithDescription:@"Response received."]; |
||||
__weak XCTestExpectation *expectedResponse = |
||||
[self expectationWithDescription:@"Expected response."]; |
||||
__weak XCTestExpectation *completion = [self expectationWithDescription:@"RPC completed."]; |
||||
|
||||
GRPCMethodName *method = [[GRPCMethodName alloc] initWithPackage:@"grpc.testing" |
||||
interface:@"TestService" |
||||
method:@"UnaryCall"]; |
||||
|
||||
RMTSimpleRequest *request = [[[[[[RMTSimpleRequestBuilder alloc] init] |
||||
setResponseSize:100] |
||||
setFillUsername:YES] |
||||
setFillOauthScope:YES] |
||||
build]; |
||||
id<GRXWriter> requestsWriter = [GRXWriter writerWithValue:[request data]]; |
||||
|
||||
GRPCCall *call = [[GRPCCall alloc] initWithHost:@"grpc-test.sandbox.google.com" |
||||
method:method |
||||
requestsWriter:requestsWriter]; |
||||
|
||||
id<GRXWriteable> responsesWriteable = [[GRXWriteable alloc] initWithValueHandler:^(NSData *value) { |
||||
XCTAssertNotNil(value, @"nil value received as response."); |
||||
[response fulfill]; |
||||
XCTAssertGreaterThan(value.length, 0, @"Empty response received."); |
||||
RMTSimpleResponse *response = [RMTSimpleResponse parseFromData:value]; |
||||
// We expect empty strings, not nil: |
||||
XCTAssertNotNil(response.username, @"Response's username is nil."); |
||||
XCTAssertNotNil(response.oauthScope, @"Response's OAuth scope is nil."); |
||||
[expectedResponse fulfill]; |
||||
} completionHandler:^(NSError *errorOrNil) { |
||||
XCTAssertNil(errorOrNil, @"Finished with unexpected error: %@", errorOrNil); |
||||
[completion fulfill]; |
||||
}]; |
||||
|
||||
[call startWithWriteable:responsesWriteable]; |
||||
|
||||
[self waitForExpectationsWithTimeout:2. handler:nil]; |
||||
} |
||||
|
||||
@end |
@ -0,0 +1,97 @@ |
||||
<?php |
||||
/* |
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
require_once realpath(dirname(__FILE__) . '/../../vendor/autoload.php'); |
||||
require 'DrSlump/Protobuf.php'; |
||||
\DrSlump\Protobuf::autoload(); |
||||
require 'math.php'; |
||||
abstract class AbstractGeneratedCodeTest extends PHPUnit_Framework_TestCase { |
||||
/* These tests require that a server exporting the math service must be |
||||
* running on $GRPC_TEST_HOST */ |
||||
protected static $client; |
||||
protected static $timeout; |
||||
|
||||
public function testSimpleRequest() { |
||||
$div_arg = new math\DivArgs(); |
||||
$div_arg->setDividend(7); |
||||
$div_arg->setDivisor(4); |
||||
list($response, $status) = self::$client->Div($div_arg)->wait(); |
||||
$this->assertSame(1, $response->getQuotient()); |
||||
$this->assertSame(3, $response->getRemainder()); |
||||
$this->assertSame(\Grpc\STATUS_OK, $status->code); |
||||
} |
||||
|
||||
public function testServerStreaming() { |
||||
$fib_arg = new math\FibArgs(); |
||||
$fib_arg->setLimit(7); |
||||
$call = self::$client->Fib($fib_arg); |
||||
$result_array = iterator_to_array($call->responses()); |
||||
$extract_num = function($num){ |
||||
return $num->getNum(); |
||||
}; |
||||
$values = array_map($extract_num, $result_array); |
||||
$this->assertSame([1, 1, 2, 3, 5, 8, 13], $values); |
||||
$status = $call->getStatus(); |
||||
$this->assertSame(\Grpc\STATUS_OK, $status->code); |
||||
} |
||||
|
||||
public function testClientStreaming() { |
||||
$num_iter = function() { |
||||
for ($i = 0; $i < 7; $i++) { |
||||
$num = new math\Num(); |
||||
$num->setNum($i); |
||||
yield $num; |
||||
} |
||||
}; |
||||
$call = self::$client->Sum($num_iter()); |
||||
list($response, $status) = $call->wait(); |
||||
$this->assertSame(21, $response->getNum()); |
||||
$this->assertSame(\Grpc\STATUS_OK, $status->code); |
||||
} |
||||
|
||||
public function testBidiStreaming() { |
||||
$call = self::$client->DivMany(); |
||||
for ($i = 0; $i < 7; $i++) { |
||||
$div_arg = new math\DivArgs(); |
||||
$div_arg->setDividend(2 * $i + 1); |
||||
$div_arg->setDivisor(2); |
||||
$call->write($div_arg); |
||||
$response = $call->read(); |
||||
$this->assertSame($i, $response->getQuotient()); |
||||
$this->assertSame(1, $response->getRemainder()); |
||||
} |
||||
$call->writesDone(); |
||||
$status = $call->getStatus(); |
||||
$this->assertSame(\Grpc\STATUS_OK, $status->code); |
||||
} |
||||
} |
@ -0,0 +1,47 @@ |
||||
<?php |
||||
/* |
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
require 'AbstractGeneratedCodeTest.php'; |
||||
|
||||
class GeneratedCodeWithCallbackTest extends AbstractGeneratedCodeTest { |
||||
public static function setUpBeforeClass() { |
||||
self::$client = new math\MathClient(new Grpc\BaseStub( |
||||
getenv('GRPC_TEST_HOST'), ['update_metadata' => |
||||
function($a_hash, |
||||
$client = array()) { |
||||
$a_copy = $a_hash; |
||||
$a_copy['foo'] = ['bar']; |
||||
return $a_copy; |
||||
}])); |
||||
} |
||||
} |
@ -0,0 +1,3 @@ |
||||
/tmp |
||||
/output |
||||
*.nupkg |
@ -0,0 +1,20 @@ |
||||
gRPC Native Nuget package |
||||
========================= |
||||
|
||||
Prerequisites |
||||
------------- |
||||
Multiple versions of VS installed to be able to build all the targets: |
||||
* Visual Studio 2013 |
||||
* Visual Studio 2010 (you might need SP1 to prevent LNK1123 error) |
||||
|
||||
NuGet binary |
||||
|
||||
Building the package |
||||
-------------------- |
||||
|
||||
Build all flavors of gRPC C# extension and package them as a NuGet package. |
||||
``` |
||||
buildall.bat |
||||
|
||||
nuget pack grpc.native.csharp_ext |
||||
``` |
@ -0,0 +1,46 @@ |
||||
@echo off |
||||
setlocal |
||||
|
||||
REM setlocal |
||||
REM call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 |
||||
REM call :build x64 Release v120 || goto :eof |
||||
REM call :build x64 Debug v120 || goto :eof |
||||
REM endlocal |
||||
|
||||
setlocal |
||||
call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86 |
||||
call :build Win32 Release v120 || goto :eof |
||||
call :build Win32 Debug v120 || goto :eof |
||||
endlocal |
||||
|
||||
REM setlocal |
||||
REM call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" amd64 |
||||
REM call :build x64 Release v110 || goto :eof |
||||
REM call :build x64 Debug v110 || goto :eof |
||||
REM endlocal |
||||
|
||||
REM setlocal |
||||
REM call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86 |
||||
REM call :build Win32 Release v110 || goto :eof |
||||
REM call :build Win32 Debug v110 || goto :eof |
||||
REM endlocal |
||||
|
||||
REM setlocal |
||||
REM call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64 |
||||
REM call :build x64 Release v100 || goto :eof |
||||
REM call :build x64 Debug v100 || goto :eof |
||||
REM endlocal |
||||
|
||||
setlocal |
||||
call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86 |
||||
call :build Win32 Release v100 || goto :eof |
||||
call :build Win32 Debug v100 || goto :eof |
||||
endlocal |
||||
|
||||
goto :eof |
||||
|
||||
:build |
||||
msbuild /t:grpc_csharp_ext /P:Platform=%1 /P:Configuration=%2 /P:PlatformToolset=%3 /P:OutDir=..\nuget_package\output\%3\%1\%2\ /P:IntDir=..\nuget_package\tmp\%3\%1\%2\ ..\grpc.sln || goto :eof |
||||
goto :eof |
||||
|
||||
|
Loading…
Reference in new issue