Tuscany SCA Native Samples - Python Calculator Sample

This is a very simple sample to show how an SCA composite can wire together two Python components to implement a Calculator service and invoke the service via a local client.

See the Python extension documentation for information about building the Tuscany Python extension and using Python in SCA composites.

There are two sub projects in this workspace:

  • sample.calculator
    This contains the Python scripts and SCDL artifacts for the SCA Calculator composite implementing the sample Calculator.
  • sample.calculator.client
    A sample client which does a local call to the Calculator service.

Additionally, there is the sample.calculator.app.composite file. This describes the configuration of the SCA Calculator composite deployed to the SCA runtime.

Building the Python samples on Linux and Mac OS X

If using the binary distribution the samples are built and installed in <tuscany_sca_install_dir>/samples - go directly to Running the samples on Linux and Mac OS X.

  1. The following environment variables are required:
    • TUSCANY_SCACPP=<path to installed Tuscany SCA>
    • TUSCANY_SDOCPP=<path to installed Tuscany SDO>
  2. As the Python Calculator sample is based on Python scripts, a specific compilation step is not necessary - only deployment is required. Deploy the Python samples only with the following command sequence:
    • cd <tuscany_sca_install_dir>/samples
    • ./configure --enable-python --enable-cpp=no --prefix=$TUSCANY_SCACPP/samples
    • make install
    NOTE: If you don't provide the --prefix configure option, it will by default install into /usr/local/tuscany/sca/samples/PythonCalculator

Running the Python Calculator sample on Linux and Mac OS X

  1. The Python Calculator sample requires the following extension: Please follow the documentation to ensure you have this extension built and installed on your system
  2. The following environment variables are required:
    • TUSCANY_SCACPP=<path to installed Tuscany SCA>
    • TUSCANY_SDOCPP=<path to installed Tuscany SDO>
  3. Run the sample with the following commands:
    • cd <tuscany_sca_install_dir>/samples/PythonCalculator/deploy/sample.calculator.client
    • ./runclient.sh

Building the Python Calculator sample on Windows

If using the binary distribution the samples are built and installed in <tuscany_sca_install_dir>\samples - go directly to Running the samples on Windows.

  1. The following environment variables are required:
    • TUSCANY_SCACPP=<path to installed Tuscany SCA>
    • TUSCANY_SDOCPP=<path to installed Tuscany SDO>
  2. As this sample is based on Python scripts, a specific compilation step is not necessary - only deployment is required. Deploy the sample with the following commands:
    • cd <tuscany_sca_install_dir>\samples\PythonCalculator
    • deploy.bat

Running the Python Calculator sample on Windows

  1. The Python Calculator sample requires the following extension: Please follow the documentation to ensure you have this extension built and installed on your system
  2. The following environment variables are required:
    • TUSCANY_SCACPP=<path to installed Tuscany SCA>
    • TUSCANY_SDOCPP=<path to installed Tuscany SDO>
  3. Run the sample with the following commands:
    • cd <tuscany_sca_install_dir>\samples\PythonCalculator\deploy\sample.calculator.client
    • runclient.bat

Getting Help

The first place to look is at the Tuscany SCA FAQ at http://cwiki.apache.org/confluence/display/TUSCANY/Tuscany+SCA+-+FAQ

Any problem with this release can be reported to the Tuscany mailing lists or create a JIRA issue at http://issues.apache.org/jira/browse/Tuscany.