0
0
mirror of https://github.com/nodejs/node.git synced 2024-11-29 15:06:33 +01:00
Commit Graph

125 Commits

Author SHA1 Message Date
Ryan
9c3770d999 Implement HTTPServer (untested!)
Mostly this is setting up the proper interface to be able to create the HTTP
server.
2009-05-04 17:19:04 +02:00
Ryan
b763ee0ad4 Make onError work for TCPConnection. 2009-05-04 16:36:57 +02:00
Ryan
6149c6c49a Fix HTTPConnection javascript inheritance. 2009-05-04 16:23:30 +02:00
Ryan
38726e7272 various clean ups; HTTPConnection (js side) inherits from TCPConnection 2009-05-04 15:39:36 +02:00
Ryan
09c2ae5c3e Slight change in tcp connection constructor
For server-side sockets, no longer pass the server object to the
js constructor. This is set later with SetAcceptor.

I think the change is a bit strage and convoluted but it allows one give
protocol /classes/ to the c++ constructors instead of protocol instances.
This is nice because derived classes (like HTTP) don't need to copy the
protocol instanciation code.
2009-05-04 12:08:13 +02:00
Ryan
4860f1c92c add onMessageComplete and onBody handlers. 2009-05-03 21:37:10 +02:00
Ryan
be6b3acf0e extract headers, status_code, path, http version from http messages.
still a work in progress.
2009-05-03 21:06:20 +02:00
Ryan
5a071ad72f Begin refactor of http.cc. Remove libebb add http_parser.
And most of http.cc was deleted.
2009-05-03 14:09:16 +02:00
Ryan
bb6057d9ad rename Connection.disconnect -> Connection.close 2009-05-03 01:11:39 +02:00
Ryan
13062832d8 cleanup: rename some of the callbacks 2009-05-03 01:06:21 +02:00
Ryan
1713386580 add Connection::SendEOF. modify test accordingly. 2009-05-03 01:01:42 +02:00
Ryan
15d24d8002 Major refactor of network code
Here I massively change both the external and internal API of the TCP
sockets and servers.

This change introduces the concept of a protocol object like is found in
Twisted Python. I believe this allows for a much cleaner description of how
a socket behaves. What was once a single object "client" or "connection" is
now represented by two objects: a "connection" and a "protocol".

Well - I don't want to ramble too much because neither API is yet public or
documented.  Look the diff of test/test-pingpong.js to see how things have
changed.
2009-05-02 16:34:24 +02:00
Ryan
3886e183fd Add test for setInterval 2009-04-29 14:12:24 +02:00
Ryan
fd392d0a50 Remove if (pointer == NULL) after allocations with new.
I'm still learning C++.
2009-04-29 14:05:25 +02:00
Ryan
cbd342a12d Publicize Socket and Server for eventual cooperation with HttpServer.
Also changed Init_net() to Socket::Initialize() and Server::Initialize().
Seems more object oriented, but I'm unsure how this will play when I want
load modules dynamically with dlopen(). I'll sit with it for a while and
see how it feels.
2009-04-29 14:00:22 +02:00
Ryan
0f5170339c remove process.{cc,h} process.exit() now exit()
the process object might return in the future but for now it is going away.
2009-04-29 11:09:32 +02:00
Ryan
f213a27657 Refactor setTimeout to be a Timer object.
Timer now uses ObjectWrap. setTimeout, setInterval are now implemented in
javascript.
2009-04-29 11:00:46 +02:00
Ryan
064c8f0252 Use ObjectWrap base class for File, Socket, Server. 2009-04-29 01:07:19 +02:00
Ryan
cf1c58063e Create a node namespace
Part of general reorganization.
2009-04-28 23:09:56 +02:00
Ryan
90fc8d3622 Update liboi. Use EV_MULTIPLICITY=0.
This might need to be changed in the future if ev is needed in thread pools
or extension libraries. However for now it makes sense to just use a single
loop.
2009-04-28 22:37:03 +02:00
Ryan
8e7bbf26e2 get 'make install' working 2009-04-23 19:26:56 +02:00
Ryan
f17ecf20be change localhost to 127.0.0.1 because macs suck 2009-04-23 19:04:01 +02:00
Ryan
29b528c980 fix the waf configure --debug options. seems to work now. 2009-04-23 17:29:31 +02:00
Ryan
0ea7577a72 sign error on file position argument 2009-04-23 15:07:54 +02:00
Ryan
8a8e9df72e wasn't sending pos arg for puts() 2009-04-23 14:22:57 +02:00
Ryan
a4593e3ebd WAF: fix the debug variant.
problem is they both build by default. need a way to disable the debug variant.
2009-04-23 13:18:38 +02:00
Ryan
0b1e3240be add position arguments to File#read and File#write 2009-04-23 12:10:57 +02:00
Ryan
8514e0627a improved ping pong test. 2009-04-23 01:14:11 +02:00
Ryan
c62b124082 add scons local for v8. check for librt in wscript 2009-04-22 19:55:08 +02:00
Ryan
40c0f755c9 import full versions of dependency libraries! 2009-04-22 19:35:47 +02:00
Ryan
a93cf50307 BROKEN COMMIT: removing git submodules 2009-04-22 18:17:56 +02:00
Ryan
7703ad5153 update eio. add EIO_STACKSIZE define for getaddrinfo problem 2009-04-22 17:19:08 +02:00
Ryan
e6d96e8e66 rename echoserver -> pingpong 2009-04-22 16:05:14 +02:00
Ryan
f3f9a08de1 beef up the echoserver test 2009-04-22 16:04:05 +02:00
Ryan
63ec0454d2 add echo test. remove debug printfs 2009-04-22 15:52:23 +02:00
Ryan
d996b59d9c fix some errors/memleaks 2009-04-22 15:48:29 +02:00
Ryan
48b4ac4a8d implment server.close 2009-04-22 14:09:17 +02:00
Ryan
c986b99ddc throw error when given a bad arguement to socket.write 2009-04-22 14:01:45 +02:00
Ryan
3095861199 bug fix: recving raw data was incorrect. 2009-04-22 13:59:28 +02:00
Ryan
5f902a61e1 tcp server is accepting connections now.
(experiencing a problem with writing rawEncoding on the sockets. will fix in next commit.)
2009-04-22 13:52:30 +02:00
Ryan
822d7fa27e add framework for tcp server. change eio stacksize to 16kb. 2009-04-22 10:29:45 +02:00
Ryan
140a032894 oops. call onConnect callback not onRead callback after connecting 2009-04-21 23:36:01 +02:00
Ryan
1542fc6a0b add async dns for Socket 2009-04-21 23:13:13 +02:00
Ryan
707f244291 begin clean up of Socket 2009-04-21 19:56:30 +02:00
Ryan
d105d88625 on_load -> onLoad 2009-04-21 16:30:47 +02:00
Ryan
5d57fa5060 clean up timers a bit 2009-04-21 16:24:56 +02:00
Ryan
47fad676b4 Rename JS_ to NODE_ for method macros. add marcos to timers.cc 2009-04-21 15:55:11 +02:00
Ryan
a0f2b8a0c5 remove debug messages from module loading. 2009-04-21 14:38:55 +02:00
Ryan
408526a1c1 debugging/improving the module framework 2009-04-21 13:52:21 +02:00
Ryan
ec9697b1ba add 'make test' 2009-04-21 13:51:05 +02:00