# Uses of Interface
org.eclipse.net4j.protocol.IProtocol

Packages that use IProtocol
Package
Description
org.eclipse.net4j
The Net4j transport layer.
org.eclipse.net4j.channel
The Net4j transport layer concepts for dealing with channels.
org.eclipse.net4j.protocol
The Net4j transport layer concepts for dealing with protocols.
org.eclipse.net4j.signal
A framework for request/response based communication on top of the Net4j transport layer.
org.eclipse.net4j.signal.heartbeat
A signal protocol implementation that realizes a configurable heart beat protocol.
org.eclipse.net4j.signal.security
Reusable implementation of a server-to-client authentication signal and related API.
org.eclipse.net4j.ws.jetty
Jetty-specific classes with support for Websocket connections.
org.eclipse.spi.net4j
Server service provider interfaces and useful base implementations for the Net4j transport layer.

## Uses of IProtocol in org.eclipse.net4j

Methods in org.eclipse.net4j that return IProtocol
Modifier and Type
Method
Description
`IProtocol<?>`
ContainerProtocolProvider.`getProtocol(String type)`
`IProtocol<?>`
FactoriesProtocolProvider.`getProtocol(String type)`
Methods in org.eclipse.net4j with parameters of type IProtocol
Modifier and Type
Method
Description
`static String`
Net4jUtil.`getProtocolID(IProtocol<?> protocol)`
`static int`
Net4jUtil.`getProtocolVersion(IProtocol<?> protocol)`

## Uses of IProtocol in org.eclipse.net4j.channel

Methods in org.eclipse.net4j.channel with parameters of type IProtocol
Modifier and Type
Method
Description
`IChannel`
IChannelMultiplexer.`openChannel(IProtocol<?> protocol)`
Synchronous request to open a new `IChannel` with the given channel protocol .

## Uses of IProtocol in org.eclipse.net4j.protocol

Subinterfaces of IProtocol in org.eclipse.net4j.protocol
Modifier and Type
Interface
Description
`interface`
`IProtocol2<INFRA_STRUCTURE>`
A `versioned` `protocol`.
`interface`
`IProtocol3<INFRA_STRUCTURE>`
A `protocol` that is told when it is `fully connected`.
Methods in org.eclipse.net4j.protocol that return IProtocol
Modifier and Type
Method
Description
`IProtocol<?>`
IProtocolProvider.`getProtocol(String type)`
Methods in org.eclipse.net4j.protocol with parameters of type IProtocol
Modifier and Type
Method
Description
`static void`
ProtocolVersionException.`checkVersion(IProtocol<?> protocol, int expectedVersion)`

## Uses of IProtocol in org.eclipse.net4j.signal

Subinterfaces of IProtocol in org.eclipse.net4j.signal
Modifier and Type
Interface
Description
`interface`
`ISignalProtocol<INFRA_STRUCTURE>`
A `protocol` that consists of a number of stream-based `signals`.
`static interface`
`ISignalProtocol.WithSignalCounters<INFRA_STRUCTURE>`
Classes in org.eclipse.net4j.signal that implement IProtocol
Modifier and Type
Class
Description
`class`
`SignalProtocol<INFRA_STRUCTURE>`
The default implementation of a `signal protocol`.

## Uses of IProtocol in org.eclipse.net4j.signal.heartbeat

Classes in org.eclipse.net4j.signal.heartbeat that implement IProtocol
Modifier and Type
Class
Description
`class`
`HeartBeatProtocol`
A `signal protocol` that keeps the `connector` of its `channel` open or provides early deactivation feedback by exchanging periodic heart beats.
`static class`
`HeartBeatProtocol.Server`
The server-side implementation of a `heart beat protocol`.

## Uses of IProtocol in org.eclipse.net4j.signal.security

Classes in org.eclipse.net4j.signal.security that implement IProtocol
Modifier and Type
Class
Description
`class`
`AuthenticatingSignalProtocol<INFRA_STRUCTURE extends org.eclipse.net4j.util.security.IPasswordCredentialsProvider.Provider>`
An abstract signal protocol that supports authentication.

## Uses of IProtocol in org.eclipse.net4j.ws.jetty

Methods in org.eclipse.net4j.ws.jetty with parameters of type IProtocol
Modifier and Type
Method
Description
`void`
Net4jWebSocket.`registerChannel(short channelID, long timeout, IProtocol<?> protocol)`

## Uses of IProtocol in org.eclipse.spi.net4j

Classes in org.eclipse.spi.net4j that implement IProtocol
Modifier and Type
Class
Description
`class`
`Protocol<INFRA_STRUCTURE>`
If the meaning of this type isn't clear, there really should be more of a description here...
Methods in org.eclipse.spi.net4j that return IProtocol
Modifier and Type
Method
Description
`protected <INFRA_STRUCTURE>
IProtocol<INFRA_STRUCTURE>`
ChannelMultiplexer.`createProtocol(String type, INFRA_STRUCTURE infraStructure)`
Methods in org.eclipse.spi.net4j with parameters of type IProtocol
Modifier and Type
Method
Description
`protected void`
ChannelMultiplexer.`doBeforeOpenChannel(IProtocol<?> protocol)`
`protected void`
Connector.`doBeforeOpenChannel(IProtocol<?> protocol)`
`protected void`
ChannelMultiplexer.`initChannel(InternalChannel channel, IProtocol<?> protocol)`
`protected void`
Connector.`initChannel(InternalChannel channel, IProtocol<?> protocol)`
`InternalChannel`
ChannelMultiplexer.`openChannel(IProtocol<?> protocol)`
`protected abstract void`
ChannelMultiplexer.`registerChannelWithPeer(short channelID, long timeout, IProtocol<?> protocol)`