Package org.apache.synapse.mediators.bsf

# Class ScriptMediatorFactory

java.lang.Object
org.apache.synapse.config.xml.AbstractMediatorFactory
org.apache.synapse.mediators.bsf.ScriptMediatorFactory

All Implemented Interfaces:
  `org.apache.synapse.config.xml.MediatorFactory`

public class ScriptMediatorFactory extends org.apache.synapse.config.xml.AbstractMediatorFactory
Creates an instance of a Script mediator for inline or external script mediation for BSF scripting languages.

*

        <script [key="entry-key"]
          [function="script-function-name"] language="javascript|groovy|ruby"invalid input: '&gt'
          (text | xml)?
          <include key="entry-key" />
        </script>

The boolean response from the in-lined mediator is either the response from the evaluation of the script statements or if that result is not a boolean then a response of true is assumed.

The MessageContext passed in to the script mediator has additional methods over the Synapse MessageContext to enable working with the XML in a way natural to the scripting language. For example when using JavaScript get/setPayloadXML use E4X XML objects, when using Ruby they use REXML documents.

For external script mediation, that is when using key, function, language attributes, <include key"entry-key" /> is used to include one or more additional script files.

- ## Field Summary

  ### Fields inherited from class org.apache.synapse.config.xml.AbstractMediatorFactory

  `ATT_ARGUMENT, ATT_DEFAULT_VALUE, ATT_DESCRIPTION, ATT_EVAL, ATT_EXPRN, ATT_IS_MANDATORY, ATT_KEY, ATT_NAME, ATT_ONERROR, ATT_REGEX, ATT_ROOT_ELEMENT, ATT_SEQUENCE, ATT_SOURCE, ATT_STATS, ATT_TARGET, ATT_TARGET_VARIABLE, ATT_TYPE, ATT_VALUE, ATT_XPATH, DESCRIPTION_Q, FEATURE_Q, INPUTS, PROP_Q, PROPERTY_GROUP_Q, RESULT_TYPE_Q, TARGET_Q, VARIABLE_Q`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ScriptMediatorFactory()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `org.apache.synapse.Mediator`
  `createSpecificMediator(org.apache.axiom.om.OMElement elem, Properties properties)`
  `QName`
  `getTagQName()`

  ### Methods inherited from class org.apache.synapse.config.xml.AbstractMediatorFactory

  `addAllCommentChildrenToList, collectNameValuePairs, createMediator, handleException, handleException, processAuditStatus, processTraceState`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ScriptMediatorFactory

    public ScriptMediatorFactory()

- ## Method Details

  - ### createSpecificMediator

    public org.apache.synapse.Mediator createSpecificMediator(org.apache.axiom.om.OMElement elem, Properties properties)
    Specified by:
      `createSpecificMediator` in class `org.apache.synapse.config.xml.AbstractMediatorFactory`

  - ### getTagQName

    public QName getTagQName()