|
Item
|
Description
|
| README |
Introduction and credits. |
| INSTALL |
Installation instructions. |
| Makefile |
Makefile to create pubsub.js from
pubsub_raw.js
and a properly-permissioned kn_events/ directory. |
| LICENSE |
Our BSD-style license. |
| TODO |
Top items on our "to do" list. |
| kn_docs/ |
Documentation for this distribution, including
Frequently Asked Questions
(FAQ),
Developer Guide,
PubSub Protocol Document,
JavaScript PubSub
Library Reference, and JavaScript
Options, Tricks and Debugging Guide. |
| cgi-bin/ |
- Perl PubSub Server: A mod_perl-based Apache module (ModPubSub.pm).
- Some useful CGI scripts, including email notification
(form2smtp.cgi),
PubSub Server regression test
(pubsub_test.cgi),
a sample SOAP service proxy
(soap_filter.cgi),
and some sample transformation scripts.
- Perl PubSub Client Library
(PubSub).
It is single-threaded and partially non-blocking
(tunnel is non-blocking, other requests block).
- SOAP Gateway
(PubSubService.cgi).
A preliminary SOAP interface to mod_pubsub.
When complete, the SOAP interface will include support for
incoming SOAP requests, off-host SOAP routes, and
external SOAP service invocation.
(SOAP design)
|
| soap_pubsub/ |
The SOAP Gateway
resides in the cgi-bin/ directory. |
| perl_pubsub/ |
The Perl PubSub Client Library
and Perl PubSub Server reside in the cgi-bin/
directory (PubSub). |
| js_pubsub/ |
The JavaScript PubSub Client Library,
helper libraries, and JavaScript sample applications reside
in the kn_apps/ directory. |
| kn_apps/ |
A directory of
PubSub-enabled Web Browser samples.
Includes several component JavaScript libraries,
such as JavaScript PubSub Client Library
(pubsub_raw.js)
that is single-threaded and non-blocking; and sets of
helper libraries kn_lib and
jscomponents.
|
| php_pubsub/ |
PubSub Client Library for PHP
(pubsublib.php),
including a Publish example
(publish.php
-- works in PHP3 and PHP4) and a server-side Subscribe example
(subscribe.php
-- only works in PHP4 with Sockets extension, and uses the
eventloop.php and
pipefitting.php libraries
for network I/O. For client-side subscribe, use the
JavaScript
PubSub Client Library to do updates in the Web browser. |
| python_pubsub/ |
- Python PubSub Server
(pubsub.py)
that runs standalone from the command line. It is our goal to
have the functionality of pubsub.py match that of
cgi-bin/PubSub/ModPubSub.pm so we have two reference implementations.
- Other helper Python libraries.
- Python PubSub Client Library
(pubsublib.py).
It is single-threaded and non-blocking.
- Python PubSub Client Library
(libkn.py).
It is multi-threaded and blocking.
|
| cxx_pubsub/ |
C++ PubSub Client Library
(LibKN) that can be
compiled on Windows or PocketPC. It is multi-threaded and blocking.
There are versions for Visual Studio 6 and Visual Studio.NET; also
included are sample apps such as an RSS publishing program, and
documentation that can be built using doxygen. |
| c_pubsub/ |
ANSI C PubSub Client Library
(libkn) that can be
compiled on your favorite flavor of Unix.
It is single-threaded and partially non-blocking
(tunnel is non-blocking, other requests block).
|
| java_pubsub/ |
Java PubSub Client Library
(client).
It is multi-threaded and blocking. |
| kn_tools/ |
Useful ancillary utilities, including
- Command-line chat using the Perl PubSub Client Library
(chat.plx).
- Command-line tools using the Perl PubSub Client Library
(list_events.plx,
list_routes.plx, and
list_subtopics.plx).
- Command-line ping using the C PubSub Client Library
(pubsub_ping).
- Command-line throughput performance testing tool in ANSI C
(pubsub_throughput).
- Command-line performance testing tool in ANSI C
(perftool).
- Command-line throughput performance testing tool in Java
(perftest_throughput.java).
- JavaScript object serializer
(js_object_serializer.html).
- JavaScript compressor
(js_compress.sh).
- JavaScript localizer
(kn_localize.sh).
- JavaScript character set browser
(charat).
- Some useful JavaScript
bookmarklets.
|
| ruby_pubsub/ |
Ruby PubSub Client Library
(libkn.rb).
It is multi-threaded and blocking. |
| kn_sense/ |
Sample sensors for scraping data from websites
and publishing them to a PubSub Server. For example, see the
RSS sensor. |
| push_manager/ |
A connection pooler for use with
cgi-bin/PubSub/ModPubSub.pm to enable it to serve thousands of
simultaneous connections. Note that this program does not
currently work with most platforms. |