public class StandardChannelFactory extends Object implements ChannelFactory, ChannelArrayFactory, BufferedChannelFactory, BufferedChannelArrayFactory
This class acts as a Factory for creating channels. It can create non-buffered and buffered channels and also arrays of non-buffered and buffered channels.
The Channel objects created by this Factory are formed of
separate objects for the read and write ends. Therefore the
ChannelInput
object cannot be cast into the
ChannelOutput
object and vice-versa.
The current implementation uses an instance of the
RiskyChannelFactory
to construct the underlying
raw channels.
Constructor and Description |
---|
StandardChannelFactory()
Constructs a new factory.
|
Modifier and Type | Method and Description |
---|---|
Any2AnyChannel |
createAny2Any()
Constructs and returns an
Any2AnyChannel object. |
Any2AnyChannel |
createAny2Any(ChannelDataStore buffer)
Constructs and returns a
Any2AnyChannel object which
uses the specified ChannelDataStore object as a buffer. |
Any2AnyChannel[] |
createAny2Any(ChannelDataStore buffer,
int n)
Constructs and returns an array of
Any2AnyChannel objects
which use the specified ChannelDataStore object as a
buffer. |
Any2AnyChannel[] |
createAny2Any(int n)
Constructs and returns an array of
Any2AnyChannel
objects. |
Any2OneChannel |
createAny2One()
Constructs and returns an
Any2OneChannel object. |
Any2OneChannel |
createAny2One(ChannelDataStore buffer)
Constructs and returns a
Any2OneChannel object which
uses the specified ChannelDataStore object as a buffer. |
Any2OneChannel[] |
createAny2One(ChannelDataStore buffer,
int n)
Constructs and returns an array of
Any2OneChannel objects
which use the specified ChannelDataStore object as a
buffer. |
Any2OneChannel[] |
createAny2One(int n)
Constructs and returns an array of
Any2OneChannel
objects. |
One2AnyChannel |
createOne2Any()
Constructs and returns a
One2AnyChannel object. |
One2AnyChannel |
createOne2Any(ChannelDataStore buffer)
Constructs and returns a
One2AnyChannel object which
uses the specified ChannelDataStore object as a buffer. |
One2AnyChannel[] |
createOne2Any(ChannelDataStore buffer,
int n)
Constructs and returns an array of
One2AnyChannel objects
which use the specified ChannelDataStore object as a
buffer. |
One2AnyChannel[] |
createOne2Any(int n)
Constructs and returns an array of
One2AnyChannel
objects. |
One2OneChannel |
createOne2One()
Constructs and returns a
One2OneChannel object. |
One2OneChannel |
createOne2One(ChannelDataStore buffer)
Constructs and returns a
One2OneChannel object which
uses the specified ChannelDataStore object as a buffer. |
One2OneChannel[] |
createOne2One(ChannelDataStore buffer,
int n)
Constructs and returns an array of
One2OneChannel objects
which use the specified ChannelDataStore object as a
buffer. |
One2OneChannel[] |
createOne2One(int n)
Constructs and returns an array of
One2OneChannel
objects. |
static StandardChannelFactory |
getDefaultInstance()
Returns a default instance of a channel factory.
|
public static StandardChannelFactory getDefaultInstance()
public One2OneChannel createOne2One()
One2OneChannel
object.createOne2One
in interface ChannelFactory
ChannelFactory.createOne2One()
public Any2OneChannel createAny2One()
Any2OneChannel
object.createAny2One
in interface ChannelFactory
ChannelFactory.createAny2One()
public One2AnyChannel createOne2Any()
One2AnyChannel
object.createOne2Any
in interface ChannelFactory
ChannelFactory.createOne2Any()
public Any2AnyChannel createAny2Any()
Any2AnyChannel
object.createAny2Any
in interface ChannelFactory
ChannelFactory.createAny2Any()
public One2OneChannel[] createOne2One(int n)
One2OneChannel
objects.createOne2One
in interface ChannelArrayFactory
n
- the size of the array of channels.ChannelArrayFactory.createOne2One(int)
public Any2OneChannel[] createAny2One(int n)
Any2OneChannel
objects.createAny2One
in interface ChannelArrayFactory
n
- the size of the array of channels.ChannelArrayFactory.createAny2One(int)
public One2AnyChannel[] createOne2Any(int n)
One2AnyChannel
objects.createOne2Any
in interface ChannelArrayFactory
n
- the size of the array of channels.ChannelArrayFactory.createOne2Any(int)
public Any2AnyChannel[] createAny2Any(int n)
Any2AnyChannel
objects.createAny2Any
in interface ChannelArrayFactory
n
- the size of the array of channels.ChannelArrayFactory.createAny2Any(int)
public One2OneChannel createOne2One(ChannelDataStore buffer)
Constructs and returns a One2OneChannel
object which
uses the specified ChannelDataStore
object as a buffer.
The buffer supplied to this method is cloned before it is inserted into the channel.
createOne2One
in interface BufferedChannelFactory
buffer
- the ChannelDataStore
to use.BufferedChannelFactory.createOne2One(org.jcsp.util.ChannelDataStore)
,
ChannelDataStore
public Any2OneChannel createAny2One(ChannelDataStore buffer)
Constructs and returns a Any2OneChannel
object which
uses the specified ChannelDataStore
object as a buffer.
The buffer supplied to this method is cloned before it is inserted into the channel.
createAny2One
in interface BufferedChannelFactory
buffer
- the ChannelDataStore
to use.BufferedChannelFactory.createAny2One(org.jcsp.util.ChannelDataStore)
,
ChannelDataStore
public One2AnyChannel createOne2Any(ChannelDataStore buffer)
Constructs and returns a One2AnyChannel
object which
uses the specified ChannelDataStore
object as a buffer.
The buffer supplied to this method is cloned before it is inserted into the channel.
createOne2Any
in interface BufferedChannelFactory
buffer
- the ChannelDataStore
to use.BufferedChannelFactory.createOne2Any(org.jcsp.util.ChannelDataStore)
,
ChannelDataStore
public Any2AnyChannel createAny2Any(ChannelDataStore buffer)
Constructs and returns a Any2AnyChannel
object which
uses the specified ChannelDataStore
object as a buffer.
The buffer supplied to this method is cloned before it is inserted into the channel.
createAny2Any
in interface BufferedChannelFactory
buffer
- the ChannelDataStore
to use.BufferedChannelFactory.createAny2Any(org.jcsp.util.ChannelDataStore)
,
ChannelDataStore
public One2OneChannel[] createOne2One(ChannelDataStore buffer, int n)
Constructs and returns an array of One2OneChannel
objects
which use the specified ChannelDataStore
object as a
buffer.
The buffer supplied to this method is cloned before it is inserted into the channel. This is why an array of buffers is not required.
createOne2One
in interface BufferedChannelArrayFactory
buffer
- the ChannelDataStore
to use.n
- the size of the array of channels.BufferedChannelArrayFactory.createOne2One(org.jcsp.util.ChannelDataStore,int)
,
ChannelDataStore
public Any2OneChannel[] createAny2One(ChannelDataStore buffer, int n)
Constructs and returns an array of Any2OneChannel
objects
which use the specified ChannelDataStore
object as a
buffer.
The buffer supplied to this method is cloned before it is inserted into the channel. This is why an array of buffers is not required.
createAny2One
in interface BufferedChannelArrayFactory
buffer
- the ChannelDataStore
to use.n
- the size of the array of channels.BufferedChannelArrayFactory.createAny2One(org.jcsp.util.ChannelDataStore,int)
,
ChannelDataStore
public One2AnyChannel[] createOne2Any(ChannelDataStore buffer, int n)
Constructs and returns an array of One2AnyChannel
objects
which use the specified ChannelDataStore
object as a
buffer.
The buffer supplied to this method is cloned before it is inserted into the channel. This is why an array of buffers is not required.
createOne2Any
in interface BufferedChannelArrayFactory
buffer
- the ChannelDataStore
to use.n
- the size of the array of channels.BufferedChannelArrayFactory.createOne2Any(org.jcsp.util.ChannelDataStore,int)
,
ChannelDataStore
public Any2AnyChannel[] createAny2Any(ChannelDataStore buffer, int n)
Constructs and returns an array of Any2AnyChannel
objects
which use the specified ChannelDataStore
object as a
buffer.
The buffer supplied to this method is cloned before it is inserted into the channel. This is why an array of buffers is not required.
createAny2Any
in interface BufferedChannelArrayFactory
buffer
- the ChannelDataStore
to use.n
- the size of the array of channels.BufferedChannelArrayFactory.createAny2Any(org.jcsp.util.ChannelDataStore,int)
,
ChannelDataStore
Submit a bug or feature to jcsp-team@kent.ac.uk
Version 1.1-rc4 of the JCSP API Specification (Copyright 1997-2008 P.D.Austin and P.H.Welch - All Rights Reserved)
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.