Package org.jcsp.lang

# Class AltingChannelInputWrapper

java.lang.Object
org.jcsp.lang.Guard
org.jcsp.lang.AltingChannelInput
org.jcsp.lang.AltingChannelInputWrapper

All Implemented Interfaces:
  `ChannelInput`, `Poisonable`

Direct Known Subclasses:
  `FilteredAltingChannelInput`, `NetAltingChannelInput`

public class AltingChannelInputWrapper extends AltingChannelInput
Deprecated.
There is no longer any need to use this class, after the 1.1 class reorganisation. Note that usually you do not need the absolute guarantee that this class provides - you can usually just cast the channel to an AltingChannelInput, which prevents you from accidentally writing to the channel. This class mainly exists for use by some of the org.jcsp.net classes, where the absolute guarantee that you cannot write to it is important.
This class wraps an ALTable channel so that only the reading part is available to the caller. Writes are impossible unless you subclass this (and use getChannel()) or keep a reference to the original channel.

Author:
  Quickstone Technologies Limited
See Also:
  - `AltingChannelInput`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`AltingChannelInputWrapper()`
Deprecated.
This constructor does not wrap a channel.
``
`AltingChannelInputWrapper(AltingChannelInput channel)`
Deprecated.
Creates a new AltingChannelInputWrapper which wraps the specified channel.

## Method Summary

Modifier and Type
Method
Description
`void`
`endRead()`
Deprecated.
Ends an extended rendezvous
`protected AltingChannelInput`
`getChannel()`
Deprecated.
Get the real channel.
`boolean`
`pending()`
Deprecated.
Returns whether there is data pending on this channel.
`void`
`poison(int strength)`
Deprecated.
This injects poison into the channel.
`Object`
`read()`
Deprecated.
Read an Object from the channel.
`protected void`
`setChannel(AltingChannelInput chan)`
Deprecated.
Sets the real channel to be used.
`Object`
`startRead()`
Deprecated.
Begins an extended rendezvous

### Methods inherited from class org.jcsp.lang.Guard

`schedule`

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

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

## Constructor Details

### AltingChannelInputWrapper

public AltingChannelInputWrapper(AltingChannelInput channel)
Deprecated.
Creates a new AltingChannelInputWrapper which wraps the specified channel.

### AltingChannelInputWrapper

protected AltingChannelInputWrapper()
Deprecated.
This constructor does not wrap a channel. The underlying channel can be set by calling `setChannel(AltingChannelInput)`.

## Method Details

### getChannel

protected AltingChannelInput getChannel()
Deprecated.
Get the real channel.

Returns:
  The real channel.

### setChannel

protected void setChannel(AltingChannelInput chan)
Deprecated.
Sets the real channel to be used.

Parameters:
  `chan` - the real channel to be used.

### read

public Object read()
Deprecated.
Read an Object from the channel.

Returns:
  the object read from the channel

### startRead

public Object startRead()
Deprecated.
Begins an extended rendezvous

Returns:
  The object read from the channel
See Also:
  - invalid reference

        ChannelInput.startRead

### endRead

public void endRead()
Deprecated.
Ends an extended rendezvous

See Also:
  - invalid reference

        ChannelInput.endRead

### pending

public boolean pending()
Deprecated.
Returns whether there is data pending on this channel.

Note: if there is, it won't go away until you read it. But if there isn't, there may be some by the time you check the result of this method.

Specified by:
  `pending` in class `AltingChannelInput`
Returns:
  state of the channel.

### poison

public void poison(int strength)
Deprecated.
Description copied from interface: `Poisonable`
This injects poison into the channel. If the channel was not explicitly constructed to be poisonable or if the strength of poison is not greater than the channel immunity level, the poison will have no effect.

Parameters:
  `strength` - the strength of the poison (must be >= 0).