Package org.jcsp.plugNplay

# Class Substitute

java.lang.Object
org.jcsp.plugNplay.Substitute

All Implemented Interfaces:
  `CSProcess`

public class Substitute extends Object implements CSProcess
Substitutes a user-configured Object for each Object in the stream flowing through.

## Process Diagram

## Description

`Substitute` is a process that substitutes the (Object) `o` with which it is configured for everything recieved on its `in` channel. So, its output stream repeats the same Object but its rate of flow is triggered by its input.

## Channel Protocols

Input Channels
in | java.lang.Object | The in Channel can accept data of any Class.
Output Channels
out | java.lang.Object | The object to be sent down the Channel.

Author:
  P.H. Welch and P.D. Austin

## Constructor Summary

Constructors
Constructor
Description
`Substitute(ChannelInput in, ChannelOutput out, Object o)`
Construct a new Substitute process.

## Method Summary

Modifier and Type
Method
Description
`void`
`run()`
The main body of this process.

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

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

## Constructor Details

### Substitute

public Substitute(ChannelInput in, ChannelOutput out, Object o)
Construct a new Substitute process.

Parameters:
  `in` - the input Channel
  `out` - the output Channel
  `o` - the Object to be sent down the out Channel.

## Method Details

### run

public void run()
The main body of this process.

Specified by:
  `run` in interface `CSProcess`