This page describes an older version of the product. The latest stable version is 16.4.

Scala


Several extensions to the XAP API have been introduced to provide a more natural way of combining Scala with XAP.


Constructor based properties
The com.gigaspaces.annotation.pojo.SpaceClassConstructor annotation on a constructor will cause the data class properties analysis to be based on properties found in the constructor (instead of getters/setters).

Enhanced REPL
Following is a short demo of what can be done with the XAP scala shell. It should be noted that this shell is a regular Scala REPL with some initial imports and initialization code.

Predicate based queries
Support for predicate based queries on the GigaSpace proxy has been in added. This support is based on the new macros feature introduced in Scala.

Scripting Executor
Dynamic Language Tasks has been extended and now supports Scala based script execution.

Task Execution
A wrapper around the XAP API provides some sugaring on top of the GigaSpace#execute methods.


The Scala version required in order to use the Scala Openspaces extension is 2.10.x

Assuming there is a scala installation under $SCALA_HOME, the jars under $SCALA_HOME/lib should be copied to $GS_HOME/lib/platform/scala/lib. Another options is to change setenv.{bat,sh} so that $SCALA_JARS points to $SCALA_HOME/lib.