Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

とりあえず完成

  • Loading branch information...
commit 6f3243ce3a43574e575e2f19c19448858fade863 1 parent d6e1f75
@saiten authored
View
6 .gitmodules
@@ -0,0 +1,6 @@
+[submodule "cocoa-websocket"]
+ path = cocoa-websocket
+ url = git://github.com/erichocean/cocoa-websocket.git
+[submodule "socketio-cocoa"]
+ path = socketio-cocoa
+ url = git://github.com/fpotter/socketio-cocoa.git
View
2  Classes/CoSaitenTiSocketIoModule.h
@@ -10,4 +10,6 @@
{
}
+- (id)createSocket:(id)args;
+
@end
View
17 Classes/CoSaitenTiSocketIoModule.m
@@ -8,6 +8,7 @@
#import "TiBase.h"
#import "TiHost.h"
#import "TiUtils.h"
+#import "SocketIOProxy.h"
@implementation CoSaitenTiSocketIoModule
@@ -86,21 +87,9 @@ -(void)_listenerRemoved:(NSString *)type count:(int)count
#pragma Public APIs
--(id)example:(id)args
+- (id)createSocket:(id)args
{
- // example method
- return @"hello world";
-}
-
--(id)exampleProp
-{
- // example property getter
- return @"hello world";
-}
-
--(void)exampleProp:(id)value
-{
- // example property setter
+ return [[[SocketIOProxy alloc] _initWithPageContext:[self pageContext] args:args] autorelease];
}
@end
View
27 SocketIOProxy.h
@@ -0,0 +1,27 @@
+//
+// SocketIOProxy.h
+// tisocketio
+//
+// Created by saiten on 11/04/17.
+// Copyright 2011 iside. All rights reserved.
+//
+
+#import "TiProxy.h"
+#import "SocketIoClient.h"
+
+@interface SocketIOProxy : TiProxy <SocketIoClientDelegate> {
+ NSThread *_socketThread;
+ SocketIoClient *_client;
+}
+
+@property (nonatomic, readwrite, assign) NSNumber *connectTimeout;
+@property (nonatomic, readwrite, assign) NSNumber *tryAgainOnConnectTimeout;
+@property (nonatomic, readonly) NSString *sessionId;
+@property (nonatomic, readonly) NSNumber *isConnected;
+@property (nonatomic, readonly) NSNumber *isConnecting;
+
+- (void)connect:(id)args;
+- (void)disconnect:(id)args;
+- (void)send: (id)args;
+
+@end
View
191 SocketIOProxy.m
@@ -0,0 +1,191 @@
+//
+// SocketIOProxy.m
+// tisocketio
+//
+// Created by saiten on 11/04/17.
+// Copyright 2011 iside. All rights reserved.
+//
+
+#import "SocketIOProxy.h"
+#import "TiUtils.h"
+
+@implementation SocketIOProxy
+
+- (id)_initWithPageContext:(id<TiEvaluator>)context args:(NSArray *)args
+{
+ ENSURE_ARG_COUNT(args, 2);
+ if((self = [super _initWithPageContext:context])) {
+ ENSURE_TYPE([args objectAtIndex:0], NSString);
+ NSString *host = [args objectAtIndex:0];
+ ENSURE_TYPE([args objectAtIndex:1], NSNumber);
+ int port = [TiUtils intValue:[args objectAtIndex:1] def:80];
+
+ _socketThread = nil;
+ _client = [[SocketIoClient alloc] initWithHost:host port:port];
+ _client.delegate = self;
+ }
+ return self;
+}
+
+- (void)dealloc
+{
+ [super dealloc];
+}
+
+- (void)_destroy
+{
+ if([_socketThread isExecuting])
+ [self performSelector:@selector(disconnect) onThread:_socketThread withObject:nil waitUntilDone:YES];
+
+ RELEASE_TO_NIL(_client);
+ [super _destroy];
+}
+
+#pragma mark Listener Notifications
+
+- (void)_listenerAdded:(NSString*)type count:(int)count
+{
+}
+
+- (void)_listenerRemoved:(NSString*)type count:(int)count
+{
+}
+
+#pragma mark Properties
+
+- (void)setConnectTimeout: (id)args
+{
+ ENSURE_SINGLE_ARG(args, NSNumber);
+ _client.connectTimeout = [TiUtils doubleValue:[args objectAtIndex:0]];
+}
+
+- (id)connectTimeout
+{
+ return NUMDOUBLE(_client.connectTimeout);
+}
+
+- (void)setTryAgainOnConnectTimeout:(id)args
+{
+ ENSURE_SINGLE_ARG(args, NSNumber);
+ _client.tryAgainOnConnectTimeout = [TiUtils boolValue:[args objectAtIndex:0]];
+}
+
+- (id)tryAgainOnConnectTimeout
+{
+ return NUMBOOL(_client.tryAgainOnConnectTimeout);
+}
+
+- (id)sessionId
+{
+ return _client.sessionId;
+}
+
+- (id)isConnecting
+{
+ return NUMBOOL(_client.isConnecting);
+}
+
+- (id)isConnected
+{
+ return NUMBOOL(_client.isConnected);
+}
+
+#pragma mark Private APIs
+
+#define AUTORELEASE_LOOP 5
+- (void)socketRunLoop
+{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+ [_socketThread setName:[NSString stringWithFormat:@"co.saiten.ti.socket.io (%x)", self]];
+ int counter = 0;
+ while((_client.isConnected || _client.isConnecting) &&
+ [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]])
+ {
+ if(++counter == AUTORELEASE_LOOP) {
+ [pool release];
+ pool = [[NSAutoreleasePool alloc] init];
+ counter = 0;
+ }
+ }
+ _socketThread = nil;
+ [pool release];
+}
+
+- (void)_connect
+{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+ _socketThread = [NSThread currentThread];
+ [_client connect];
+
+ [self socketRunLoop];
+ [pool release];
+}
+
+#pragma mark Public APIs
+
+- (void)connect:(id)args
+{
+ if(_socketThread == nil) {
+ [self performSelectorInBackground:@selector(_connect) withObject:nil];
+ }
+}
+
+- (void)disconnect:(id)args
+{
+ if(_socketThread == nil)
+ return;
+
+ if([NSThread currentThread] != _socketThread) {
+ [self performSelector:@selector(disconnect:) onThread:_socketThread withObject:args waitUntilDone:YES];
+ return;
+ }
+
+ [_client disconnect];
+}
+
+- (void)send:(id)args
+{
+ if(_socketThread == nil)
+ return;
+
+ if([NSThread currentThread] != _socketThread) {
+ [self performSelector:@selector(send:) onThread:_socketThread withObject:args waitUntilDone:YES];
+ return;
+ }
+
+ ENSURE_ARG_COUNT(args, 2);
+ ENSURE_TYPE([args objectAtIndex:0], NSString);
+ NSString *data = [args objectAtIndex:0];
+ ENSURE_TYPE([args objectAtIndex:1], NSNumber);
+ BOOL isJSON = [TiUtils boolValue:[args objectAtIndex:1]];
+
+ [_client send:data isJSON:isJSON];
+}
+
+#pragma mark SocketIoClientDelegate
+
+- (void)socketIoClientDidConnect:(SocketIoClient *)client
+{
+ NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:client, @"client", nil];
+ [self fireEvent:@"connect" withObject:dic];
+}
+
+- (void)socketIoClientDidDisconnect:(SocketIoClient *)client
+{
+ NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:client, @"client", nil];
+ [self fireEvent:@"disconnect" withObject:dic];
+}
+
+- (void)socketIoClient:(SocketIoClient *)client didReceiveMessage:(NSString *)message isJSON:(BOOL)isJSON
+{
+ NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:client, @"client", message, @"message", isJSON, @"isJSON", nil];
+ [self fireEvent:@"message" withObject:dic];
+}
+
+- (void)socketIoClient:(SocketIoClient *)client didSendMessage:(NSString *)message isJSON:(BOOL)isJSON
+{
+ NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:client, @"client", message, @"message", isJSON, @"isJSON", nil];
+ [self fireEvent:@"sendmessage" withObject:dic];
+}
+
+@end
View
62 example/app.coffee
@@ -0,0 +1,62 @@
+win = Ti.UI.createWindow
+ backgroundColor: 'white'
+
+textArea = Ti.UI.createTextArea
+ top: 10
+ width: 300
+ height: 180
+ backgroundColor: '#ddd'
+ borderColor: '#888'
+ borderWidth: 1
+ borderRadius: 5
+ editable: false
+ value: ""
+
+log = (message) ->
+ v = textArea.value
+ textArea.value = v + "#{message}\n"
+
+textField = Ti.UI.createTextField
+ top: 200
+ width: 300
+ height: 32
+ borderStyle: Ti.UI.INPUT_BORDERSTYLE_BEZEL
+ returnKeyType: Ti.UI.RETURNKEY_SEND
+ clearButtonMode: Ti.UI.INPUT_BUTTONMODE_ONFOCUS
+ suppressReturn: false
+
+io = require('co.saiten.ti.socket.io')
+socket = io.createSocket('localhost', 3000)
+
+socket.addEventListener 'connect', (client) ->
+ log("> connect")
+ log("type 'exit' for disconnect")
+
+socket.addEventListener 'disconnect', (client) ->
+ log("> disconnect")
+ log("type 'connect' for reconnect")
+
+socket.addEventListener 'message', (e) ->
+ log(e.message)
+
+win.addEventListener 'open', ->
+ textField.focus()
+ socket.connect()
+
+textField.addEventListener 'return', (e) ->
+ return unless e.value.length > 0
+
+ if socket.isConnected
+ if e.value is 'exit'
+ socket.disconnect()
+ else
+ socket.send textField.value, false
+ else if e.value is 'connect'
+ socket.connect()
+
+ textField.value = ""
+
+win.add textArea
+win.add textField
+win.open()
+
View
93 example/app.js
@@ -1,27 +1,66 @@
-// This is a test harness for your module
-// You should do something interesting in this harness
-// to test out the module and to provide instructions
-// to users on how to use it by example.
-
-
-// open a single window
-var window = Ti.UI.createWindow({
- backgroundColor:'white'
-});
-var label = Ti.UI.createLabel();
-window.add(label);
-window.open();
-
-// TODO: write your module tests here
-var tisocketio = require('co.saiten.ti.socket.io');
-Ti.API.info("module is => " + tisocketio);
-
-label.text = tisocketio.example();
-
-Ti.API.info("module exampleProp is => " + tisocketio.exampleProp);
-tisocketio.exampleProp = "This is a test value";
-
-if (Ti.Platform.name == "android") {
- var proxy = tisocketio.createExample({message: "Creating an example Proxy"});
- proxy.printMessage("Hello world!");
-}
+(function() {
+ var io, log, socket, textArea, textField, win;
+ win = Ti.UI.createWindow({
+ backgroundColor: 'white'
+ });
+ textArea = Ti.UI.createTextArea({
+ top: 10,
+ width: 300,
+ height: 180,
+ backgroundColor: '#ddd',
+ borderColor: '#888',
+ borderWidth: 1,
+ borderRadius: 5,
+ editable: false,
+ value: ""
+ });
+ log = function(message) {
+ var v;
+ v = textArea.value;
+ return textArea.value = v + ("" + message + "\n");
+ };
+ textField = Ti.UI.createTextField({
+ top: 200,
+ width: 300,
+ height: 32,
+ borderStyle: Ti.UI.INPUT_BORDERSTYLE_BEZEL,
+ returnKeyType: Ti.UI.RETURNKEY_SEND,
+ clearButtonMode: Ti.UI.INPUT_BUTTONMODE_ONFOCUS,
+ suppressReturn: false
+ });
+ io = require('co.saiten.ti.socket.io');
+ socket = io.createSocket('localhost', 3000);
+ socket.addEventListener('connect', function(client) {
+ log("> connect");
+ return log("type 'exit' for disconnect");
+ });
+ socket.addEventListener('disconnect', function(client) {
+ log("> disconnect");
+ return log("type 'connect' for reconnect");
+ });
+ socket.addEventListener('message', function(e) {
+ return log(e.message);
+ });
+ win.addEventListener('open', function() {
+ textField.focus();
+ return socket.connect();
+ });
+ textField.addEventListener('return', function(e) {
+ if (!(e.value.length > 0)) {
+ return;
+ }
+ if (socket.isConnected) {
+ if (e.value === 'exit') {
+ socket.disconnect();
+ } else {
+ socket.send(textField.value, false);
+ }
+ } else if (e.value === 'connect') {
+ socket.connect();
+ }
+ return textField.value = "";
+ });
+ win.add(textArea);
+ win.add(textField);
+ win.open();
+}).call(this);
View
70 example/server.coffee
@@ -0,0 +1,70 @@
+http = require('http')
+io = require('socket.io')
+
+server = http.createServer (req, res) ->
+ res.writeHead(200, { 'Content-Type': 'text/html' })
+ res.end '''
+ <html>
+ <head><title>test</title></head>
+ <body>
+ <h1>test server</h1>
+ <textarea id="chat" rows=10 cols="80"></textarea><br/>
+ <form id="form">
+ <input type="text" id="input" value="" /><input type="submit" value="send" />
+ </form>
+ <script type="text/javascript" src="/socket.io/socket.io.js"></script>
+ <script type="text/javascript">
+ var socket = new io.Socket();
+ var textArea = document.getElementById('chat');
+ var log = function(message) { textArea.value += message + "\\n" };
+ var form = document.getElementById('form');
+ var input = document.getElementById('input');
+
+ form.addEventListener('submit', function(e) {
+ e.preventDefault();
+ if(input.value.length > 0) {
+ if(input.value == 'exit') {
+ socket.disconnect();
+ } else {
+ socket.send(input.value);
+ input.value = "";
+ }
+ }
+ return false;
+ });
+
+ socket.connect();
+ socket.on("connect", function() {
+ log("> connect");
+ log("type 'exit' for disconnect")
+ });
+ socket.on("message", function(message) {
+ log(message);
+ });
+ socket.on("disconnect", function() {
+ log("> disconnect");
+ });
+ </script>
+ </body>
+ </html>
+ '''
+
+server.listen(3000)
+
+socket = io.listen(server)
+count = 0
+socket.on 'connection', (client) ->
+ count += 1
+
+ client.broadcast "join user : #{count}"
+ client.send "join : #{count}"
+
+ client.on 'message', (data) ->
+ message = "#{client.sessionId} : #{data}"
+ client.broadcast message
+ client.send message
+
+ client.on 'disconnect', (data) ->
+ count -= 1
+ client.broadcast "leave user : #{count}"
+
1  socketio-cocoa
@@ -0,0 +1 @@
+Subproject commit ada669080fd05beaa9897eb65bd3702fddf9c584
View
64 tisocketio.xcodeproj/project.pbxproj
@@ -28,6 +28,12 @@
24DE9E1211C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.m in Sources */ = {isa = PBXBuildFile; fileRef = 24DE9E1011C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.m */; };
AA747D9F0F9514B9006C5449 /* CoSaitenTiSocketIo_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* CoSaitenTiSocketIo_Prefix.pch */; };
AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; };
+ E1CC9EB9135AB9080018282F /* SocketIoClient.m in Sources */ = {isa = PBXBuildFile; fileRef = E1CC9EB7135AB9080018282F /* SocketIoClient.m */; };
+ E1CC9EBA135AB9080018282F /* SocketIoClient.h in Headers */ = {isa = PBXBuildFile; fileRef = E1CC9EB8135AB9080018282F /* SocketIoClient.h */; };
+ E1CC9ECA135AB93C0018282F /* WebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = E1CC9EC8135AB93C0018282F /* WebSocket.m */; };
+ E1CC9ECB135AB93C0018282F /* WebSocket.h in Headers */ = {isa = PBXBuildFile; fileRef = E1CC9EC9135AB93C0018282F /* WebSocket.h */; };
+ E1CC9ECE135ABA520018282F /* SocketIOProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = E1CC9ECC135ABA520018282F /* SocketIOProxy.h */; };
+ E1CC9ECF135ABA520018282F /* SocketIOProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = E1CC9ECD135ABA520018282F /* SocketIOProxy.m */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -36,19 +42,25 @@
containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
proxyType = 1;
remoteGlobalIDString = D2AAC07D0554694100DB518D;
- remoteInfo = "tisocketio";
+ remoteInfo = tisocketio;
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
- 24DD6CF71134B3F500162E58 /* CoSaitenTiSocketIoModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "CoSaitenTiSocketIoModule.h"; path = "Classes/CoSaitenTiSocketIoModule.h"; sourceTree = "<group>"; };
- 24DD6CF81134B3F500162E58 /* CoSaitenTiSocketIoModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "CoSaitenTiSocketIoModule.m"; path = "Classes/CoSaitenTiSocketIoModule.m"; sourceTree = "<group>"; };
+ 24DD6CF71134B3F500162E58 /* CoSaitenTiSocketIoModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CoSaitenTiSocketIoModule.h; path = Classes/CoSaitenTiSocketIoModule.h; sourceTree = "<group>"; };
+ 24DD6CF81134B3F500162E58 /* CoSaitenTiSocketIoModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CoSaitenTiSocketIoModule.m; path = Classes/CoSaitenTiSocketIoModule.m; sourceTree = "<group>"; };
24DD6D1B1134B66800162E58 /* titanium.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = titanium.xcconfig; sourceTree = "<group>"; };
- 24DE9E0F11C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "CoSaitenTiSocketIoModuleAssets.h"; path = "Classes/CoSaitenTiSocketIoModuleAssets.h"; sourceTree = "<group>"; };
- 24DE9E1011C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "CoSaitenTiSocketIoModuleAssets.m"; path = "Classes/CoSaitenTiSocketIoModuleAssets.m"; sourceTree = "<group>"; };
- AA747D9E0F9514B9006C5449 /* CoSaitenTiSocketIo_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CoSaitenTiSocketIo_Prefix.pch"; sourceTree = SOURCE_ROOT; };
+ 24DE9E0F11C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CoSaitenTiSocketIoModuleAssets.h; path = Classes/CoSaitenTiSocketIoModuleAssets.h; sourceTree = "<group>"; };
+ 24DE9E1011C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CoSaitenTiSocketIoModuleAssets.m; path = Classes/CoSaitenTiSocketIoModuleAssets.m; sourceTree = "<group>"; };
+ AA747D9E0F9514B9006C5449 /* CoSaitenTiSocketIo_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoSaitenTiSocketIo_Prefix.pch; sourceTree = SOURCE_ROOT; };
AACBBE490F95108600F1A2B1 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
- D2AAC07E0554694100DB518D /* libCoSaitenTiSocketIo.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libCoSaitenTiSocketIo.a"; sourceTree = BUILT_PRODUCTS_DIR; };
+ D2AAC07E0554694100DB518D /* libCoSaitenTiSocketIo.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libCoSaitenTiSocketIo.a; sourceTree = BUILT_PRODUCTS_DIR; };
+ E1CC9EB7135AB9080018282F /* SocketIoClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SocketIoClient.m; path = "socketio-cocoa/SocketIoClient.m"; sourceTree = "<group>"; };
+ E1CC9EB8135AB9080018282F /* SocketIoClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SocketIoClient.h; path = "socketio-cocoa/SocketIoClient.h"; sourceTree = "<group>"; };
+ E1CC9EC8135AB93C0018282F /* WebSocket.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = WebSocket.m; path = "socketio-cocoa/cocoa-websocket/WebSocket.m"; sourceTree = "<group>"; };
+ E1CC9EC9135AB93C0018282F /* WebSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebSocket.h; path = "socketio-cocoa/cocoa-websocket/WebSocket.h"; sourceTree = "<group>"; };
+ E1CC9ECC135ABA520018282F /* SocketIOProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SocketIOProxy.h; sourceTree = "<group>"; };
+ E1CC9ECD135ABA520018282F /* SocketIOProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SocketIOProxy.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -79,7 +91,7 @@
0867D69AFE84028FC02AAC07 /* Frameworks */,
034768DFFF38A50411DB9C8B /* Products */,
);
- name = "tisocketio";
+ name = tisocketio;
sourceTree = "<group>";
};
0867D69AFE84028FC02AAC07 /* Frameworks */ = {
@@ -93,10 +105,16 @@
08FB77AEFE84172EC02AAC07 /* Classes */ = {
isa = PBXGroup;
children = (
+ E1CC9EC8135AB93C0018282F /* WebSocket.m */,
+ E1CC9EC9135AB93C0018282F /* WebSocket.h */,
+ E1CC9EB7135AB9080018282F /* SocketIoClient.m */,
+ E1CC9EB8135AB9080018282F /* SocketIoClient.h */,
24DE9E0F11C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.h */,
24DE9E1011C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.m */,
24DD6CF71134B3F500162E58 /* CoSaitenTiSocketIoModule.h */,
24DD6CF81134B3F500162E58 /* CoSaitenTiSocketIoModule.m */,
+ E1CC9ECC135ABA520018282F /* SocketIOProxy.h */,
+ E1CC9ECD135ABA520018282F /* SocketIOProxy.m */,
);
name = Classes;
sourceTree = "<group>";
@@ -120,6 +138,9 @@
AA747D9F0F9514B9006C5449 /* CoSaitenTiSocketIo_Prefix.pch in Headers */,
24DD6CF91134B3F500162E58 /* CoSaitenTiSocketIoModule.h in Headers */,
24DE9E1111C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.h in Headers */,
+ E1CC9EBA135AB9080018282F /* SocketIoClient.h in Headers */,
+ E1CC9ECB135AB93C0018282F /* WebSocket.h in Headers */,
+ E1CC9ECE135ABA520018282F /* SocketIOProxy.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -138,8 +159,8 @@
);
dependencies = (
);
- name = "tisocketio";
- productName = "tisocketio";
+ name = tisocketio;
+ productName = tisocketio;
productReference = D2AAC07E0554694100DB518D /* libCoSaitenTiSocketIo.a */;
productType = "com.apple.product-type.library.static";
};
@@ -192,6 +213,9 @@
files = (
24DD6CFA1134B3F500162E58 /* CoSaitenTiSocketIoModule.m in Sources */,
24DE9E1211C5FE74003F90F6 /* CoSaitenTiSocketIoModuleAssets.m in Sources */,
+ E1CC9EB9135AB9080018282F /* SocketIoClient.m in Sources */,
+ E1CC9ECA135AB93C0018282F /* WebSocket.m in Sources */,
+ E1CC9ECF135ABA520018282F /* SocketIOProxy.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -213,15 +237,15 @@
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
COPY_PHASE_STRIP = NO;
- DSTROOT = "/tmp/CoSaitenTiSocketIo.dst";
+ DSTROOT = /tmp/CoSaitenTiSocketIo.dst;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_FIX_AND_CONTINUE = YES;
GCC_MODEL_TUNING = G5;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = "CoSaitenTiSocketIo_Prefix.pch";
+ GCC_PREFIX_HEADER = CoSaitenTiSocketIo_Prefix.pch;
INSTALL_PATH = /usr/local/lib;
- PRODUCT_NAME = "CoSaitenTiSocketIo";
+ PRODUCT_NAME = CoSaitenTiSocketIo;
};
name = Debug;
};
@@ -231,12 +255,12 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
- DSTROOT = "/tmp/CoSaitenTiSocketIo.dst";
+ DSTROOT = /tmp/CoSaitenTiSocketIo.dst;
GCC_MODEL_TUNING = G5;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = "CoSaitenTiSocketIo_Prefix.pch";
+ GCC_PREFIX_HEADER = CoSaitenTiSocketIo_Prefix.pch;
INSTALL_PATH = /usr/local/lib;
- PRODUCT_NAME = "CoSaitenTiSocketIo";
+ PRODUCT_NAME = CoSaitenTiSocketIo;
};
name = Release;
};
@@ -249,9 +273,10 @@
GCC_OPTIMIZATION_LEVEL = 0;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.0;
OTHER_LDFLAGS = "";
PREBINDING = NO;
- SDKROOT = iphoneos4.0;
+ SDKROOT = iphoneos;
};
name = Debug;
};
@@ -263,9 +288,10 @@
GCC_C_LANGUAGE_STANDARD = c99;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.0;
OTHER_LDFLAGS = "";
PREBINDING = NO;
- SDKROOT = iphoneos4.0;
+ SDKROOT = iphoneos;
};
name = Release;
};
@@ -277,6 +303,7 @@
GCC_DYNAMIC_NO_PIC = NO;
GCC_OPTIMIZATION_LEVEL = 0;
PRODUCT_NAME = "Build & test";
+ SDKROOT = iphoneos;
};
name = Debug;
};
@@ -288,6 +315,7 @@
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_ENABLE_FIX_AND_CONTINUE = NO;
PRODUCT_NAME = "Build & test";
+ SDKROOT = iphoneos;
ZERO_LINK = NO;
};
name = Release;
Please sign in to comment.
Something went wrong with that request. Please try again.