From 2f3b37b6d1c1941a2a7a9937dab140dec361f488 Mon Sep 17 00:00:00 2001 From: Siqi LIU Date: Sun, 27 Oct 2013 10:39:27 +0100 Subject: client end takes care of server version Change-Id: I4d72a403971efb863a077d6ed6f1129ef0384e7b --- ios/iosremote/fr.lproj/iPad_autosize.storyboard | 4 ++-- ios/iosremote/fr.lproj/iPad_autosize_old.storyboard | 4 ++-- ios/iosremote/iosremote/Classes/PinValidationViewController.m | 2 ++ ios/iosremote/iosremote/Classes/ServerListViewController.m | 2 +- ios/iosremote/iosremote/Communication/CommandInterpreter.m | 8 ++++++-- ios/iosremote/iosremote/Communication/CommunicationManager.h | 2 ++ ios/iosremote/iosremote/Communication/CommunicationManager.m | 2 +- ios/iosremote/iosremote/Communication/Server.h | 5 +++-- ios/iosremote/iosremote/Communication/Server.m | 10 +++++++--- ios/iosremote/iosremote/en.lproj/iPhone_autoSize.storyboard | 10 +++++----- .../iosremote/en.lproj/iPhone_autoSize_old.storyboard | 10 +++++----- ios/iosremote/iosremote/fr.lproj/iPhone_autoSize.storyboard | 10 +++++----- .../iosremote/fr.lproj/iPhone_autoSize_old.storyboard | 10 +++++----- .../iosremote/zh-Hans.lproj/iPhone_autoSize.storyboard | 10 +++++----- .../iosremote/zh-Hans.lproj/iPhone_autoSize_old.storyboard | 10 +++++----- ios/iosremote/zh-Hans.lproj/iPad_autosize.storyboard | 4 ++-- ios/iosremote/zh-Hans.lproj/iPad_autosize_old.storyboard | 4 ++-- 17 files changed, 60 insertions(+), 47 deletions(-) (limited to 'ios/iosremote') diff --git a/ios/iosremote/fr.lproj/iPad_autosize.storyboard b/ios/iosremote/fr.lproj/iPad_autosize.storyboard index 5ea1573b057b..df5e2e4c1dab 100644 --- a/ios/iosremote/fr.lproj/iPad_autosize.storyboard +++ b/ios/iosremote/fr.lproj/iPad_autosize.storyboard @@ -1,8 +1,8 @@ - + - + diff --git a/ios/iosremote/fr.lproj/iPad_autosize_old.storyboard b/ios/iosremote/fr.lproj/iPad_autosize_old.storyboard index 5ea1573b057b..df5e2e4c1dab 100644 --- a/ios/iosremote/fr.lproj/iPad_autosize_old.storyboard +++ b/ios/iosremote/fr.lproj/iPad_autosize_old.storyboard @@ -1,8 +1,8 @@ - + - + diff --git a/ios/iosremote/iosremote/Classes/PinValidationViewController.m b/ios/iosremote/iosremote/Classes/PinValidationViewController.m index 35f165ecf34c..b0383ccaad4c 100644 --- a/ios/iosremote/iosremote/Classes/PinValidationViewController.m +++ b/ios/iosremote/iosremote/Classes/PinValidationViewController.m @@ -10,6 +10,8 @@ #import "SlideShow.h" #import "CommandInterpreter.h" #import "CommunicationManager.h" +#import "Client.h" +#import "Server.h" @interface PinValidationViewController () diff --git a/ios/iosremote/iosremote/Classes/ServerListViewController.m b/ios/iosremote/iosremote/Classes/ServerListViewController.m index 76b2565f9a43..0012921cb3f9 100644 --- a/ios/iosremote/iosremote/Classes/ServerListViewController.m +++ b/ios/iosremote/iosremote/Classes/ServerListViewController.m @@ -99,7 +99,7 @@ int port = socketAddress->sin_port; NSLog(@"Resolved at %@:%u", ipString, port); - [self.comManager connectToServer:[[Server alloc] initWithProtocol:NETWORK atAddress:ipString ofName:sender.name]]; + [self.comManager connectToServer:[[Server alloc] initWithProtocol:NETWORK atAddress:ipString ofName:sender.name ofVersion:@""]]; } } diff --git a/ios/iosremote/iosremote/Communication/CommandInterpreter.m b/ios/iosremote/iosremote/Communication/CommandInterpreter.m index 876790c3b303..7dadfda07d47 100644 --- a/ios/iosremote/iosremote/Communication/CommandInterpreter.m +++ b/ios/iosremote/iosremote/Communication/CommandInterpreter.m @@ -11,6 +11,8 @@ #import "SlideShow.h" #import "NSString+Base64.h" #import "CommunicationManager.h" +#import "Client.h" +#import "Server.h" @interface CommandInterpreter() @@ -34,8 +36,8 @@ dispatch_queue_t backgroundQueue; } // Received a set of instructions from server. +// Marker equals to the end of the one command - (void) parse:(NSArray*)command{ -// NSLog(@"Command : %@", command); uint marker = 0; if ([command count] == 0) { return; @@ -50,7 +52,9 @@ dispatch_queue_t backgroundQueue; else if ([instruction isEqualToString:STATUS_PAIRING_PAIRED]){ [[NSNotificationCenter defaultCenter] postNotificationName:STATUS_PAIRING_PAIRED object:nil]; - marker = 2; + [[[[CommunicationManager sharedComManager] client] server] setServerVersion:[command objectAtIndex:3]]; + NSLog(@"Connected to %@", [[[CommunicationManager sharedComManager] client] server].description); + marker = 4; } else if([instruction isEqualToString:@"slideshow_started"]){ uint slideLength = [[command objectAtIndex:1] integerValue]; diff --git a/ios/iosremote/iosremote/Communication/CommunicationManager.h b/ios/iosremote/iosremote/Communication/CommunicationManager.h index 5c79cd0132da..b880e149bf50 100644 --- a/ios/iosremote/iosremote/Communication/CommunicationManager.h +++ b/ios/iosremote/iosremote/Communication/CommunicationManager.h @@ -50,6 +50,8 @@ */ #define STATUS_PAIRING_PAIRED @"LO_SERVER_SERVER_PAIRED" +#define STATUS_SERVER_VERSION @"LO_SERVER_INFO" + #define STATUS_CONNECTION_FAILED @"STATUS_CONNECTION_FAILED" diff --git a/ios/iosremote/iosremote/Communication/CommunicationManager.m b/ios/iosremote/iosremote/Communication/CommunicationManager.m index 6eb175d86bd0..b9a62a500b81 100644 --- a/ios/iosremote/iosremote/Communication/CommunicationManager.m +++ b/ios/iosremote/iosremote/Communication/CommunicationManager.m @@ -187,7 +187,7 @@ - (void) addServersWithName:(NSString*)name AtAddress:(NSString*)addr { - Server * s = [[Server alloc] initWithProtocol:NETWORK atAddress:addr ofName:name]; + Server * s = [[Server alloc] initWithProtocol:NETWORK atAddress:addr ofName:name ofVersion:@""]; [self.servers addObject:s]; [[NSUserDefaults standardUserDefaults] setObject:[NSKeyedArchiver archivedDataWithRootObject:self.servers] forKey:ExistingServersKey]; [[NSUserDefaults standardUserDefaults] synchronize]; diff --git a/ios/iosremote/iosremote/Communication/Server.h b/ios/iosremote/iosremote/Communication/Server.h index 0e499bd96102..668072336351 100644 --- a/ios/iosremote/iosremote/Communication/Server.h +++ b/ios/iosremote/iosremote/Communication/Server.h @@ -15,11 +15,12 @@ typedef enum protocol {NETWORK} Protocol_t; @property (nonatomic) Protocol_t protocol; @property (nonatomic, strong) NSString* serverName; @property (nonatomic, strong) NSString* serverAddress; +@property (nonatomic, strong) NSString* serverVersion; - (id)initWithProtocol:(Protocol_t)protocal atAddress:(NSString*) address - ofName:(NSString*) name; - + ofName:(NSString*) name + ofVersion:(NSString*) version; @end @interface NSString (IPValidation) diff --git a/ios/iosremote/iosremote/Communication/Server.m b/ios/iosremote/iosremote/Communication/Server.m index 2e2c0a403b8b..86afde1547a1 100644 --- a/ios/iosremote/iosremote/Communication/Server.m +++ b/ios/iosremote/iosremote/Communication/Server.m @@ -19,12 +19,13 @@ @synthesize protocol = _protocol; @synthesize serverName = _serverName; @synthesize serverAddress = _serverAddress; - +@synthesize serverVersion = _serverVersion; - (void)encodeWithCoder:(NSCoder *)coder; { [coder encodeObject:self.serverName forKey:@"name"]; [coder encodeObject:self.serverAddress forKey:@"address"]; + [coder encodeObject:self.serverVersion forKey:@"version"]; [coder encodeInteger:self.protocol forKey:@"protocol"]; } @@ -32,7 +33,8 @@ { self = [self initWithProtocol:[coder decodeIntegerForKey:@"protocol"] atAddress:[coder decodeObjectForKey:@"address"] - ofName:[coder decodeObjectForKey:@"name"]]; + ofName:[coder decodeObjectForKey:@"name"] + ofVersion:[coder decodeObjectForKey:@"version"]]; return self; } @@ -40,16 +42,18 @@ - (id)initWithProtocol:(Protocol_t)protocal atAddress:(NSString*) address ofName:(NSString*) name + ofVersion:(NSString*) version { self = [self init]; self.protocol = protocal; self.serverAddress = address; self.serverName = name; + self.serverVersion = version; return self; } - (NSString *)description{ - return [NSString stringWithFormat:@"Server: Name:%@ Addr:%@", self.serverName, self.serverAddress]; + return [NSString stringWithFormat:@"Server: Name:%@ Addr:%@ Version:%@", self.serverName, self.serverAddress, self.serverVersion]; } @end diff --git a/ios/iosremote/iosremote/en.lproj/iPhone_autoSize.storyboard b/ios/iosremote/iosremote/en.lproj/iPhone_autoSize.storyboard index 3d42e5254593..848b74f3da6f 100644 --- a/ios/iosremote/iosremote/en.lproj/iPhone_autoSize.storyboard +++ b/ios/iosremote/iosremote/en.lproj/iPhone_autoSize.storyboard @@ -1,8 +1,8 @@ - + - + @@ -121,7 +121,7 @@ \ No newline at end of file diff --git a/ios/iosremote/iosremote/en.lproj/iPhone_autoSize_old.storyboard b/ios/iosremote/iosremote/en.lproj/iPhone_autoSize_old.storyboard index 3d42e5254593..848b74f3da6f 100644 --- a/ios/iosremote/iosremote/en.lproj/iPhone_autoSize_old.storyboard +++ b/ios/iosremote/iosremote/en.lproj/iPhone_autoSize_old.storyboard @@ -1,8 +1,8 @@ - + - + @@ -121,7 +121,7 @@ \ No newline at end of file diff --git a/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize.storyboard b/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize.storyboard index b2b2bd7eb551..e849b1105cce 100644 --- a/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize.storyboard +++ b/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize.storyboard @@ -1,8 +1,8 @@ - + - + @@ -123,7 +123,7 @@ Contrôle Distant \ No newline at end of file diff --git a/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize_old.storyboard b/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize_old.storyboard index b2b2bd7eb551..e849b1105cce 100644 --- a/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize_old.storyboard +++ b/ios/iosremote/iosremote/fr.lproj/iPhone_autoSize_old.storyboard @@ -1,8 +1,8 @@ - + - + @@ -123,7 +123,7 @@ Contrôle Distant \ No newline at end of file diff --git a/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize.storyboard b/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize.storyboard index 262e306fdc5e..eda008fb11cc 100644 --- a/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize.storyboard +++ b/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize.storyboard @@ -1,8 +1,8 @@ - + - + @@ -121,7 +121,7 @@ \ No newline at end of file diff --git a/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize_old.storyboard b/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize_old.storyboard index 262e306fdc5e..eda008fb11cc 100644 --- a/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize_old.storyboard +++ b/ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize_old.storyboard @@ -1,8 +1,8 @@ - + - + @@ -121,7 +121,7 @@ \ No newline at end of file diff --git a/ios/iosremote/zh-Hans.lproj/iPad_autosize.storyboard b/ios/iosremote/zh-Hans.lproj/iPad_autosize.storyboard index 85a9f9216c22..f07462a00ddc 100644 --- a/ios/iosremote/zh-Hans.lproj/iPad_autosize.storyboard +++ b/ios/iosremote/zh-Hans.lproj/iPad_autosize.storyboard @@ -1,8 +1,8 @@ - + - + diff --git a/ios/iosremote/zh-Hans.lproj/iPad_autosize_old.storyboard b/ios/iosremote/zh-Hans.lproj/iPad_autosize_old.storyboard index 85a9f9216c22..f07462a00ddc 100644 --- a/ios/iosremote/zh-Hans.lproj/iPad_autosize_old.storyboard +++ b/ios/iosremote/zh-Hans.lproj/iPad_autosize_old.storyboard @@ -1,8 +1,8 @@ - + - + -- cgit