Package org.jcsp.net.cns

# Interface NamedChannelEndFactory

All Known Subinterfaces:
  `NamedChannelEndManager`

All Known Implementing Classes:
  `CNSChannelEndManager`

public interface NamedChannelEndFactory

Classes implementing this interface act as factories for constructing `NetChannelInput` and `NetChannelOutput` objects.

`NetChannelInput` objects are constructed and have their location registered with a channel naming service.

`NetChannelOutput` objects are constructed and connected to `NetChannelInput` objects whose location is resolved from a channel naming service.

Author:
  Quickstone Technologies Limited

## Method Summary

Modifier and Type
Method
Description
`NetSharedChannelOutput`
`createAny2Net(String name)`
Constructs a `NetSharedChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name.
`NetSharedChannelOutput`
`createAny2Net(String name, NameAccessLevel accessLevel)`
Constructs a `NetSharedChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name that exists in the supplied namespace.
`NetSharedChannelInput`
`createNet2Any(String name)`
Constructs a `NetSharedChannelInput` object and registers its location with the supplied name in the global namespace of a channel naming service.
`NetSharedChannelInput`
`createNet2Any(String name, NameAccessLevel nameAccessLevel)`
Constructs a `NetSharedChannelInput` object and registers its location with the supplied name in specified namespace of a channel naming service.
`NetAltingChannelInput`
`createNet2One(String name)`
Constructs a `NetAltingChannelInput` object and registers its location with the supplied name in the global namespace of a channel naming service.
`NetAltingChannelInput`
`createNet2One(String name, NameAccessLevel nameAccessLevel)`
Constructs a `NetAltingChannelInput` object and registers its location with the supplied name in specified namespace of a channel naming service.
`NetChannelOutput`
`createOne2Net(String name)`
Constructs a `NetChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name.
`NetChannelOutput`
`createOne2Net(String name, NameAccessLevel accessLevel)`
Constructs a `NetChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name that exists in the supplied namespace.

## Method Details

### createNet2One

NetAltingChannelInput createNet2One(String name)
Constructs a `NetAltingChannelInput` object and registers its location with the supplied name in the global namespace of a channel naming service.

Parameters:
  `name` - the name against which to register the channel.
Returns:
  the constructed `NetAltingChannelInput` object.

### createNet2One

NetAltingChannelInput createNet2One(String name, NameAccessLevel nameAccessLevel)
Constructs a `NetAltingChannelInput` object and registers its location with the supplied name in specified namespace of a channel naming service.

Parameters:
  `name` - the name against which to register the channel.
  `nameAccessLevel` - the namespace in which to register the name.
Returns:
  the constructed `NetAltingChannelInput` object.

### createNet2Any

NetSharedChannelInput createNet2Any(String name)
Constructs a `NetSharedChannelInput` object and registers its location with the supplied name in the global namespace of a channel naming service.

Parameters:
  `name` - the name against which to register the channel.
Returns:
  the constructed `NetSharedChannelInput` object.

### createNet2Any

NetSharedChannelInput createNet2Any(String name, NameAccessLevel nameAccessLevel)
Constructs a `NetSharedChannelInput` object and registers its location with the supplied name in specified namespace of a channel naming service.

Parameters:
  `name` - the name against which to register the channel.
  `nameAccessLevel` - the namespace in which to register the name.
Returns:
  the constructed `NetSharedChannelInput` object.

### createOne2Net

NetChannelOutput createOne2Net(String name)
Constructs a `NetChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name.

Parameters:
  `name` - the name of the channel from which to resolve the location.
Returns:
  the constructed `NetChannelOutput` object.

### createOne2Net

NetChannelOutput createOne2Net(String name, NameAccessLevel accessLevel)
Constructs a `NetChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name that exists in the supplied namespace.

Parameters:
  `name` - the name of the channel from which to resolve the location.
  `accessLevel` - the namespace in which the channel name exists.
Returns:
  the constructed `NetChannelOutput` object.

### createAny2Net

NetSharedChannelOutput createAny2Net(String name)
Constructs a `NetSharedChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name.

Parameters:
  `name` - the name of the channel from which to resolve the location.
Returns:
  the constructed `NetChannelOutput` object.

### createAny2Net

NetSharedChannelOutput createAny2Net(String name, NameAccessLevel accessLevel)
Constructs a `NetSharedChannelOutput` object connected to a `NetChannelInput` located at a location resolved from the specified channel name that exists in the supplied namespace.

Parameters:
  `name` - the name of the channel from which to resolve the location.
  `accessLevel` - the namespace in which the channel name exists.
Returns:
  the constructed `NetChannelOutput` object.