• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *
3  * Copyright 2019 gRPC authors.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 #import <GRPCClient/GRPCCallLegacy.h>
20 
21 // Import category headers for Swift build
22 #import <GRPCClient/GRPCCall+ChannelArg.h>
23 #import <GRPCClient/GRPCCall+ChannelCredentials.h>
24 #import <GRPCClient/GRPCCall+Cronet.h>
25 #import <GRPCClient/GRPCCall+OAuth2.h>
26 #import <GRPCClient/GRPCCall+Tests.h>
27 #import <RxLibrary/GRXWriteable.h>
28 
29 @class GRPCProtoMethod;
30 @class GRXWriter;
31 @protocol GRXWriteable;
32 
33 __attribute__((deprecated("Please use GRPCProtoCall."))) @interface ProtoRPC : GRPCCall
34 
35 /**
36  * host parameter should not contain the scheme (http:// or https://), only the name or IP
37  * addr and the port number, for example @"localhost:5050".
38  */
39 - (instancetype)initWithHost:(NSString *)host
40                       method:(GRPCProtoMethod *)method
41               requestsWriter:(GRXWriter *)requestsWriter
42                responseClass:(Class)responseClass
43           responsesWriteable:(id<GRXWriteable>)responsesWriteable NS_DESIGNATED_INITIALIZER;
44 
45 - (void)start;
46 
47 @end
48 
49 /**
50  * This subclass is empty now. Eventually we'll remove ProtoRPC class
51  * to avoid potential naming conflict
52  */
53 #pragma clang diagnostic push
54 #pragma clang diagnostic ignored "-Wdeprecated-declarations"
55 @interface GRPCProtoCall : ProtoRPC
56 #pragma clang diagnostic pop
57 
58 @end
59 
60 /**
61  * Generate an NSError object that represents a failure in parsing a proto class. For gRPC
62  * internal use only.
63  */
64 NSError *ErrorForBadProto(id proto, Class expectedClass, NSError *parsingError);
65