# Package org.jcsp.lang

package org.jcsp.lang

Class
Description
Alternative
This enables a process to wait passively for and choose between a number of `Guard` events.
AlternativeError
This is thrown for an illegal operation on an Alternative.
AltingBarrier
This is the front-end for a barrier that can be used as a `Guard` in an `Alternative`.
AltingBarrierError
This is thrown for an illegal operation on an `AltingBarrier`.
AltingChannelAccept
This extends `Guard` and `ChannelAccept` to enable a process to choose between many CALL channel (and other) events.
AltingChannelInput
This extends `Guard` and `ChannelInput` to enable a process to choose between many object input (and other) events.
AltingChannelInputInt
This extends `Guard` and `ChannelInputInt` to enable a process to choose between many integer input (and other) events.
AltingChannelInputWrapper
Deprecated.
There is no longer any need to use this class, after the 1.1 class reorganisation.
AltingChannelOutput
This extends `Guard` and `ChannelOutput` to enable a process to choose between many integer output (and other) events.
AltingChannelOutputInt
This extends `Guard` and `ChannelOutputInt` to enable a process to choose between many integer output (and other) events.
AltingConnectionClient
This class is sub-classed by JCSP.NET classes to provide `ConnectionClient` objects which can have their `receive()` method alted over.
AltingConnectionClientImpl
This class does not need to be used by standard JCSP users.
AltingConnectionServer
An interface to connection.
AltingConnectionServerImpl
This class does not need to be used by standard JCSP users.
Any2AnyCallChannel
This is the super-class for any-to-any `interface`-specific CALL channels, safe for use by many clients and many servers.
Any2AnyChannel
This defines the interface for an any-to-any Object channel, safe for use by many writers and many readers.
Any2AnyChannelInt
This defines an interface for an any-to-any integer channel, safe for use by many writers and many readers.
Any2AnyConnection
Defines an interface for a connection shared by multiple clients and multiple servers.
Any2OneCallChannel
This is the super-class for any-to-one `interface`-specific CALL channels, safe for use by many clients and one server.
Any2OneChannel
This defines an interface for an any-to-one Object channel, safe for use by many writers and one reader.
Any2OneChannelInt
This defines an interface for an any-to-one integer channel, safe for use by many writers and one reader.
Any2OneConnection
Defines an interface for a connection that can be shared by multiple concurrent clients but used by a single server.
Barrier
This enables barrier synchronisation between a set of processes.
BarrierError
This is thrown for an illegal operation on an Barrier.
BlackHoleChannel
This implements `ChannelOutput` with black hole semantics.
BlackHoleChannelInt
This implements `ChannelOutputInt` with black hole semantics.
Bucket
This enables bucket synchronisation between a set of processes.
BufferedChannelArrayFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
BufferedChannelFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
BufferedChannelIntArrayFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
BufferedChannelIntFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
Channel
This class provides static factory methods for constructing all the different types of channel.
ChannelAccept
This defines the interface for accepting CALL channels.
ChannelArrayFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
ChannelFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
ChannelInput
This defines the interface for reading from an Object channel.
ChannelInputInt
This defines the interface for reading from object channels.
ChannelInputWrapper
Deprecated.
There is no longer any need to use this class, after the 1.1 class reorganisation.
ChannelInt
Deprecated.
To create integer channels, use the methods in the Channel class.
ChannelIntArrayFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
ChannelIntFactory
Deprecated.
These channel factories are deprecated in favour of the new one2one() methods in the Channel class.
ChannelOutput
This defines the interface for writing to object channels.
ChannelOutputInt
This defines the interface for writing to integer channels.
ChannelOutputWrapper
Deprecated.
There is no longer any need to use this class, after the 1.1 class reorganisation.
Connection
This class provides static factory methods for constructing different types of connection.
ConnectionArrayFactory
Defines an interface for a factory that can create arrays of connections.
ConnectionClient
This is an interface to be implemented by classes that wish to act as a client to connect to a `ConnectionServer`.
ConnectionFactory
Defines an interface for a factory than can create connections.
ConnectionServer
This interface should be implemented by classes that wish to act as connection servers and to accept requests from `ConnectionClient` objects.
Crew
This provides a Concurrent Read Exclusive Write (CREW) lock for synchronising fair and secure access to a shared resource.
CSProcess
This is the JCSP interface for a process - an active component that encapsulates the data structures on which it operates.
CSTimer
This is a `Guard` for setting timeouts in an `Alternative`.
Guard
This is the super-class for all `Alternative` events selectable by a process.
InlineAlternative
This class is experimental (i.e.
JCSP_InternalError
This is thrown by an inconsistency detected in the internal structures of JCSP.
One2AnyCallChannel
This is the super-class for one-to-any `interface`-specific CALL channels, safe for use by one client and many servers.
One2AnyChannel
This defines the interface for a one-to-any Object channel, safe for use by one writer and many readers.
One2AnyChannelInt
This defines the interface for a one-to-any integer channel, safe for use by one writer and many readers.
One2AnyConnection
An interface for a connection which can be used by only one client but which can be used by multiple concurrent servers.
One2OneCallChannel
This is the super-class for one-to-one `interface`-specific CALL channels.
One2OneChannel
This defines the interface for a one-to-one Object channel.
One2OneChannelInt
This defines the interface for a one-to-one integer channel.
One2OneChannelSymmetric
This defines the interface for a symmetric one-to-one Object channel.
One2OneChannelSymmetricInt
This defines the interface for a symmetric one-to-one integer channel.
One2OneConnection
Defines an interface for a connection that can be used by a single server and single client.
Parallel
This process constructor taks an array of `CSProcess`es and returns a `CSProcess` that is the parallel composition of its process arguments.
Poisonable
All channel-ends implement this inteface.
PoisonException
This exception is thrown when a process tries to use a channel that has been poisoned.
PriParallel
This is an extension of the `Parallel` class that prioritises the processes given to its control.
ProcessInterruptedException
This is thrown if a process is interrupted whilst blocked during synchronisation - processes should never be interrupted.
ProcessManager
This enables a `CSProcess` to be spawned concurrently with the process doing the spawning.
Sequence
This constructor taks an array of `CSProcess`es and returns a `CSProcess` that is the sequential composition of its process arguments.
SharedAltingConnectionClient
Implements a client end of a Connection which can have multiple client processes.
SharedChannelInput
This is the same as `ChannelInput` except that it is guaranteed safe to pass on to more than one internal process for parallel reading.
SharedChannelInputInt
This is the same as `ChannelInputInt` except that it is guaranteed safe to pass on to more than one internal process for parallel reading.
SharedChannelOutput
This is the same as `ChannelOutput` except that it is guaranteed safe to pass on to more than one internal process for parallel writing.
SharedChannelOutputInt
This is the same as `ChannelOutputInt` except that it is guaranteed safe to pass on to more than one internal process for parallel writing.
SharedConnectionClient
Defines an interface for a client end of a connection that can be shared by multiple clients.
SharedConnectionServer
Defines an interface for a server end of a connection that can be shared by multiple concurrent processes.
SharedConnectionServerImpl
This class does not need to be used by standard JCSP users.
Skip
This is a process that immediately terminates and a `Guard` that is always ready.
SpuriousLog
This holds the log of spurious wakeups and early timeouts.
StandardChannelFactory
This class acts as a Factory for creating channels.
StandardChannelIntFactory
This class acts as a Factory for creating channels.
StandardConnectionFactory
Implements a factory for creating connections.
Stop
This is a process that starts, engages in no events, performs no computation but refuses to terminate.
TaggedProtocol
`TaggedProtocol` is the base class for messages carrying an occam2-like tagged (`CASE`) protocol over JCSP channels.