Skip to content

Commit

Permalink
Merge pull request grpc#3989 from jcanizales/fix-routeguide
Browse files Browse the repository at this point in the history
Fix RouteGuide example to use the last surface
  • Loading branch information
murgatroid99 committed Oct 29, 2015
2 parents ed2216b + 2f0d11b commit d96a633
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 27 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,7 @@
6325277A1B1D0395003073D9 /* Frameworks */,
6325277B1B1D0395003073D9 /* Resources */,
FFE0BCF30339E7A50A989EAB /* Copy Pods Resources */,
B5388EC5A25E89021740B916 /* Embed Pods Frameworks */,
);
buildRules = (
);
Expand Down Expand Up @@ -177,6 +178,21 @@
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
B5388EC5A25E89021740B916 /* Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Embed Pods Frameworks";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-RouteGuideClient/Pods-RouteGuideClient-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
C6FC30AD2376EC04317237C5 /* Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
Expand Down
63 changes: 36 additions & 27 deletions examples/objective-c/route_guide/ViewControllers.m
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,14 @@
*/

#import <UIKit/UIKit.h>
#import <GRPCClient/GRPCCall+Tests.h>
#import <RouteGuide/RouteGuide.pbrpc.h>
#import <RxLibrary/GRXWriter+Immediate.h>
#import <RxLibrary/GRXWriter+Transformations.h>

static NSString * const kHostAddress = @"http://localhost:50051";
static NSString * const kHostAddress = @"localhost:50051";

// Category to override RTGPoint's description.
/** Category to override RTGPoint's description. */
@interface RTGPoint (Description)
- (NSString *)description;
@end
Expand All @@ -53,7 +54,7 @@ - (NSString *)description {
}
@end

// Category to give RTGRouteNote a convenience constructor.
/** Category to give RTGRouteNote a convenience constructor. */
@interface RTGRouteNote (Constructors)
+ (instancetype)noteWithMessage:(NSString *)message
latitude:(float)latitude
Expand All @@ -75,9 +76,10 @@ + (instancetype)noteWithMessage:(NSString *)message

#pragma mark Demo: Get Feature

// Run the getFeature demo. Calls getFeature with a point known to have a feature and a point known
// not to have a feature.

/**
* Run the getFeature demo. Calls getFeature with a point known to have a feature and a point known
* not to have a feature.
*/
@interface GetFeatureViewController : UIViewController
@end

Expand All @@ -86,7 +88,10 @@ @implementation GetFeatureViewController
- (void)viewDidLoad {
[super viewDidLoad];

RTGRouteGuide *client = [[RTGRouteGuide alloc] initWithHost:kHostAddress];
// This only needs to be done once per host, before creating service objects for that host.
[GRPCCall useInsecureConnectionsForHost:kHostAddress];

RTGRouteGuide *service = [[RTGRouteGuide alloc] initWithHost:kHostAddress];

void (^handler)(RTGFeature *response, NSError *error) = ^(RTGFeature *response, NSError *error) {
if (response.name.length) {
Expand All @@ -102,18 +107,19 @@ - (void)viewDidLoad {
point.latitude = 409146138;
point.longitude = -746188906;

[client getFeatureWithRequest:point handler:handler];
[client getFeatureWithRequest:[RTGPoint message] handler:handler];
[service getFeatureWithRequest:point handler:handler];
[service getFeatureWithRequest:[RTGPoint message] handler:handler];
}

@end


#pragma mark Demo: List Features

// Run the listFeatures demo. Calls listFeatures with a rectangle containing all of the features in
// the pre-generated database. Prints each response as it comes in.

/**
* Run the listFeatures demo. Calls listFeatures with a rectangle containing all of the features in
* the pre-generated database. Prints each response as it comes in.
*/
@interface ListFeaturesViewController : UIViewController
@end

Expand All @@ -122,7 +128,7 @@ @implementation ListFeaturesViewController
- (void)viewDidLoad {
[super viewDidLoad];

RTGRouteGuide *client = [[RTGRouteGuide alloc] initWithHost:kHostAddress];
RTGRouteGuide *service = [[RTGRouteGuide alloc] initWithHost:kHostAddress];

RTGRectangle *rectangle = [RTGRectangle message];
rectangle.lo.latitude = 405E6;
Expand All @@ -131,8 +137,8 @@ - (void)viewDidLoad {
rectangle.hi.longitude = -745E6;

NSLog(@"Looking for features between %@ and %@", rectangle.lo, rectangle.hi);
[client listFeaturesWithRequest:rectangle
eventHandler:^(BOOL done, RTGFeature *response, NSError *error) {
[service listFeaturesWithRequest:rectangle
eventHandler:^(BOOL done, RTGFeature *response, NSError *error) {
if (response) {
NSLog(@"Found feature at %@ called %@.", response.location, response.name);
} else if (error) {
Expand All @@ -146,10 +152,11 @@ - (void)viewDidLoad {

#pragma mark Demo: Record Route

// Run the recordRoute demo. Sends several randomly chosen points from the pre-generated feature
// database with a variable delay in between. Prints the statistics when they are sent from the
// server.

/**
* Run the recordRoute demo. Sends several randomly chosen points from the pre-generated feature
* database with a variable delay in between. Prints the statistics when they are sent from the
* server.
*/
@interface RecordRouteViewController : UIViewController
@end

Expand All @@ -171,9 +178,10 @@ - (void)viewDidLoad {
return location;
}];

RTGRouteGuide *client = [[RTGRouteGuide alloc] initWithHost:kHostAddress];
RTGRouteGuide *service = [[RTGRouteGuide alloc] initWithHost:kHostAddress];

[client recordRouteWithRequestsWriter:locations handler:^(RTGRouteSummary *response, NSError *error) {
[service recordRouteWithRequestsWriter:locations
handler:^(RTGRouteSummary *response, NSError *error) {
if (response) {
NSLog(@"Finished trip with %i points", response.pointCount);
NSLog(@"Passed %i features", response.featureCount);
Expand All @@ -190,9 +198,10 @@ - (void)viewDidLoad {

#pragma mark Demo: Route Chat

// Run the routeChat demo. Send some chat messages, and print any chat messages that are sent from
// the server.

/**
* Run the routeChat demo. Send some chat messages, and print any chat messages that are sent from
* the server.
*/
@interface RouteChatViewController : UIViewController
@end

Expand All @@ -210,10 +219,10 @@ - (void)viewDidLoad {
return note;
}];

RTGRouteGuide *client = [[RTGRouteGuide alloc] initWithHost:kHostAddress];
RTGRouteGuide *service = [[RTGRouteGuide alloc] initWithHost:kHostAddress];

[client routeChatWithRequestsWriter:notesWriter
eventHandler:^(BOOL done, RTGRouteNote *note, NSError *error) {
[service routeChatWithRequestsWriter:notesWriter
eventHandler:^(BOOL done, RTGRouteNote *note, NSError *error) {
if (note) {
NSLog(@"Got message %@ at %@", note.message, note.location);
} else if (error) {
Expand Down

0 comments on commit d96a633

Please sign in to comment.