From 200a40b332420f94992eb39a6d0ea1cf1490ffc4 Mon Sep 17 00:00:00 2001 From: coreyg Date: Fri, 21 Nov 2014 09:30:19 +0000 Subject: Adding tuscany's website to their svn repo for svnpubsub git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1640879 13f79535-47bb-0310-9956-ffa450edef68 --- site/trunk/site-publish/architecture-guide.html | 133 ++++++++++++++++++++++++ 1 file changed, 133 insertions(+) create mode 100644 site/trunk/site-publish/architecture-guide.html (limited to 'site/trunk/site-publish/architecture-guide.html') diff --git a/site/trunk/site-publish/architecture-guide.html b/site/trunk/site-publish/architecture-guide.html new file mode 100644 index 0000000000..ba9ca7e970 --- /dev/null +++ b/site/trunk/site-publish/architecture-guide.html @@ -0,0 +1,133 @@ + + + + + + + Architecture Guide : Apache Tuscany + + + + + + + + + + + + + + + + +
+ + + + +   + + + +
+ + +
+
+ + + + + + + +
+  Apache Tuscany > Home > SCA Overview > SCA Native > SCA Native Documentation Menu > Architecture Guide + + User List | Dev List | Issue Tracker   +
+ + + + + +
+
+ +
+
+
+ + + + +

High level architecture view of SCA Native

+ +

Tuscany SCA Native consists of the kernel and extensions.

+ +

The kernel loads any .composite, .xsd, .wsdl or
+.componentType files found under a directory defined by the
+TUSCANY_SCACPP_ROOT environment variable. The kernel also loads any
+extensions found in the Tuscany extensions directory (found in the
+directory specified by the TUSCANY_SCACPP env variable). The kernel
+inspects the .composite files and checks that any required extensions
+that the SCA app uses are loaded, works out how the components are
+wired together, and then passes the details of the composite to the
+appropriate extensions. E.g. if the SCDL contains a
+<implementation.python> element, the contents of that element are
+passed to the Python extension which will load a defined script, etc.
+When the SCA app is invoked (via a local client call or a SOAP or REST
+service binding being called) the kernel uses the appropriate
+extension to invoke the right methods in the component implementation
+code.

+ +

The language binding extensions (C++, Ruby, Python, PHP) provide
+wrapper and proxy code. The wrapper code wraps the component
+implemented in that language, initialising the component
+implementation, converting method arguments to the correct types and
+invoking the defined method with the converted arguments. The proxy
+code allows the component to call it's references, providing objects
+that look like standard objects in the component language, but which,
+when called, convert the method arguments from the language types and
+invoke the referenced component's wrapper code to invoke the component
+itself.

+ +

The service and reference binding extensions (SOAP/Axis2C, REST)
+provide service and reference code. The service code allows Tuscany to
+run within a container as a service that can be invoked (e.g. as an
+Axis2C SOAP web service). The reference code allows Tuscany to call
+other services (that may or may not be other Tuscany services) using
+that technology to make the call out (e.g. a SOAP call to a Web
+Service).
+See the various samples we have for examples of all this.

+
+
+
+
+
+ + + + + + + + \ No newline at end of file -- cgit v1.2.3