summaryrefslogtreecommitdiff
path: root/SDL_iOS/SmartDeviceLinkProxy/Classes/SDLProxy.h
blob: c9d78089e5d7fa2a8f120eabe1e4865a841f1244 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//
// Copyright (c) 2013 Ford Motor Company
//

#import <Foundation/Foundation.h>
#import "SDLITransport.h"
#import "SDLIProtocol.h"
#import "SDLProxyListener.h"
#import "SDLRPCRequestFactory.h"
#import "SDLIProxy.h"

@interface SDLProxy : NSObject<SDLProtocolListener> {
	NSObject<SDLITransport>* transport;
	NSObject<SDLIProtocol>* protocol;
	NSMutableArray* proxyListeners;
	Byte rpcSessionID;
	Byte bulkSessionID;
	
    NSTimer* handshakeTimer;
    
	BOOL isConnected;
    BOOL alreadyDestructed;
}

-(id)  initWithTransport:(NSObject<SDLITransport>*) transport protocol:(NSObject<SDLIProtocol>*) protocol delegate:(NSObject<SDLProxyListener>*) delegate;

-(void) dispose;
-(void) addDelegate:(NSObject<SDLProxyListener>*) delegate;

-(void) sendRPCRequest:(SDLRPCMessage*) msg;
-(void) handleRpcMessage:(NSDictionary*) msg;
-(NSObject<SDLITransport>*)getTransport;
-(NSObject<SDLIProtocol>*)getProtocol;
-(void)destroyHandshakeTimer;

+(void)enableSiphonDebug;
+(void)disableSiphonDebug;

@end