apache-tuscany/sca-cpp/trunk
2011-03-27 21:59:13 +00:00
..
components Add a reusable component that returns the contents of a configured url. 2011-03-13 19:24:02 +00:00
doc Simplified the automake build using configure options instead of environment variables and cleaned up some of the makefile.am files. Adjusted build instructions. Moved directories that don't yet build or work out of the main build dir and obsolete docs to a contrib dir. 2009-11-23 05:48:11 +00:00
etc Update svn:ignore properties and minor build cleanups. 2011-03-14 03:24:37 +00:00
kernel Change ATOM and RSS feed representations to use name value pairs instead of just strings, to allow support for all ATOM and RSS attributes and avoid confusion with non-feed string results. 2011-03-08 08:18:07 +00:00
modules Support returning binary content. Fix server bug preventing a component to return an empty list. 2011-03-27 21:59:13 +00:00
samples Change ATOM and RSS feed representations to use name value pairs instead of just strings, to allow support for all ATOM and RSS attributes and avoid confusion with non-feed string results. 2011-03-08 08:18:07 +00:00
ubuntu Upgrade to postgresql 9.0.3. 2011-02-26 20:59:52 +00:00
xsd Minimal support for implementation.widget, using simplified (and generic) JSONRPC and ATOMPub Javascript proxies. Minor changes to the server runtime to serve reference requests from widgets. Adjust and simplified samples using the widget support. 2010-07-01 06:04:35 +00:00
.gitignore Move etc/git-exclude to .gitignore to avoid having to configure ignores manually. 2011-03-13 19:24:11 +00:00
AUTHORS More build improvements, added a configure option to turn on debugging and profiling, fixed compile and link options to support multithreading where applicable, moved non-building tools to contrib, and adjusted the top readmes and build instructions. 2009-11-30 08:36:59 +00:00
bootstrap Working queue and chat components. Added a few useful start/stop scripts. Fixed lifecycle code to call start/stop/restart functions before APR pools are cleaned up in both parent and child processes. Minor build script improvements. 2010-02-17 04:14:31 +00:00
ChangeLog More build improvements, added a configure option to turn on debugging and profiling, fixed compile and link options to support multithreading where applicable, moved non-building tools to contrib, and adjusted the top readmes and build instructions. 2009-11-30 08:36:59 +00:00
configure.ac Add debug support to optimized build and downgrade GCC optimizations from O3 to O2. 2011-03-21 07:42:12 +00:00
COPYING Minor README cleanup. Fixed permissions on COPYING and LICENSE files. 2010-02-28 20:01:37 +00:00
INSTALL Upgrade to postgresql 9.0.3. 2011-02-26 20:59:52 +00:00
LICENSE Implementation of a streaming + aggregating Log utility component using Facebook Scribe. 2010-05-22 23:22:54 +00:00
Makefile.am Minor fixes to get all samples working in a target install dir. 2010-10-20 05:00:08 +00:00
NEWS More build improvements, added a configure option to turn on debugging and profiling, fixed compile and link options to support multithreading where applicable, moved non-building tools to contrib, and adjusted the top readmes and build instructions. 2009-11-30 08:36:59 +00:00
NOTICE Implementation of a streaming + aggregating Log utility component using Facebook Scribe. 2010-05-22 23:22:54 +00:00
README Add a reusable component that returns the contents of a configured url. 2011-03-13 19:24:02 +00:00

Apache Tuscany SCA Runtime
==========================

Tuscany SCA Native is an SCA (Service Component Architecture) runtime written
in C++ and integrated with the Apache HTTPD server.

It supports SCA components written in C++ and Python. Experimental support
for other programming languages is under construction. SCA bindings are
available for the JSON-RPC, ATOMPub and RSS protocols. User signin is
implemented using OpenID and OAuth.

Several useful SCA components are provided on top of the SCA runtime, which
can be used to help assemble distributed SCA composite applications:

Cache: key/value memory cache, using Memcached;
Chat: XMPP chat, using Apache Vysper and Libstrophe;
Filedb: key/value 'NoSQL' persistent store, using plain files;
Http: HTTP client, using Libcurl;
Log: distributed logger, using Facebook Scribe;
Nosqldb: key/value 'NoSQL' persistent store, using TinyCDB;
Queue: AMQP queuing, using Apache Qpid/C;
Sqldb: SQL database, using PostgreSQL;
Webservice: Web service gateway, using Apache Axis2/C.

These components present a simple ATOMPub REST interface, allowing you to send
a message to a queue, a chat connection, or add an entry to a cache or a
database for example, using a simple HTTP POST. 


Getting the source code
=======================

To checkout the source code, do this:
git clone git://git.apache.org/tuscany-sca-cpp
or
svn checkout http://svn.apache.org/repos/asf/tuscany/sca-cpp tuscany-sca-cpp

To checkout the source code with commit access, do this:
git clone git://git.apache.org/tuscany-sca-cpp
cd tuscany-sca-cpp
wget -P .git http://git.apache.org/authors.txt
git config svn.authorsfile .git/authors.txt
git config user.email <you>@apache.org
git config svn.rmdir true
git svn init --prefix=origin/ -s https://svn.apache.org/repos/asf/tuscany/sca-cpp
git svn rebase


Layout
======

Here's a rough guide to the Tuscany SCA source tree:

 /
 |-- trunk                    Master development branch
 |   |
 |   |-- kernel               SCA runtime kernel
 |   |
 |   |-- modules              Modules that plug into the runtime
 |   |   |-- atom             AtomPub data encoding
 |   |   |-- edit             Composite app editor
 |   |   |-- http             HTTP protocol
 |   |   |-- java             Support for Java components
 |   |   |-- json             JSON data encoding
 |   |   |-- oauth            User signin using OAuth
 |   |   |-- openid           User signin using OpenID
 |   |   |-- python           Support for Python components
 |   |   |-- rss              RSS data encoding
 |   |   |-- scheme           Support for Scheme components
 |   |   |-- server           Apache HTTPD server integration
 |   |   |-- wsgi             Python WSGI server integration
 |   |
 |   |-- components           Useful SCA components
 |   |   |-- cache            Memcached key/value cache
 |   |   |-- chat             XMPP chat
 |   |   |-- filedb           Plain file NoSQL database
 |   |   |-- http             HTTP client
 |   |   |-- log              Scribe logger
 |   |   |-- nosqldb          TinyCDB NoSQL database
 |   |   |-- queue            AMQP message queue
 |   |   |-- sqldb            PostgreSQL database
 |   |   |-- webservice       Axis2 Web service gateway
 |   |
 |   |-- samples              Sample Applications
 |   |   |-- store-cluster    Online store on a proxy + server + db cluster
 |   |   |-- store-cpp        Online store written in C++
 |   |   |-- store-gae        Online store written in Python, working on GAE
 |   |   |-- store-java       Online store written in Java
 |   |   |-- store-nosql      Online store using a NoSQL database
 |   |   |-- store-python     Online store written in Python
 |   |   |-- store-scheme     Online store written in Scheme
 |   |   |-- store-sql        Online store using an SQL database
 |   |   |-- store-vhost      Online store on virtual hosts
 |   |
 |   |-- ubuntu               Automated install on Ubuntu 10.10 64-bit
 |
 |-- branches                 Topic and release branches
 |
 |-- tags                     Release tags


Building
========

See the INSTALL file at the root of the source tree.


Contributing to the project
===========================

To contribute to the project or report issues see the Tuscany development
mailing list:
dev@tuscany.apache.org

Archives:
http://www.mail-archive.com/dev@tuscany.apache.org
http://marc.info/?l=tuscany-dev

To subscribe send an email to:
dev-subscribe@tuscany.apache.org