diff options
author | Eike Stepper | 2008-11-01 08:17:43 +0000 |
---|---|---|
committer | Eike Stepper | 2008-11-01 08:17:43 +0000 |
commit | f47564c0c12fa033d5e2436a6ab85a1fac5b11bf (patch) | |
tree | 00425e8f27231e7077fee142479f532daa05ae83 /plugins/org.eclipse.net4j/src | |
parent | b052cd228a09572591b18b3a6f5e905088dcf84f (diff) | |
download | cdo-f47564c0c12fa033d5e2436a6ab85a1fac5b11bf.tar.gz cdo-f47564c0c12fa033d5e2436a6ab85a1fac5b11bf.tar.xz cdo-f47564c0c12fa033d5e2436a6ab85a1fac5b11bf.zip |
[253049] Give the infrastructure of an IProtocol a parametric type
https://bugs.eclipse.org/bugs/show_bug.cgi?id=253049
Diffstat (limited to 'plugins/org.eclipse.net4j/src')
16 files changed, 35 insertions, 34 deletions
diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java index 2602310faa..ef929e6122 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java @@ -364,12 +364,12 @@ public abstract class Connector extends Container<IChannel> implements InternalC public InternalChannel openChannel() throws ConnectorException { - return openChannel((IProtocol)null); + return openChannel((IProtocol<?>)null); } public InternalChannel openChannel(String protocolID, Object infraStructure) throws ConnectorException { - IProtocol protocol = createProtocol(protocolID, infraStructure); + IProtocol<?> protocol = createProtocol(protocolID, infraStructure); if (protocol == null) { throw new IllegalArgumentException("Unknown protocolID: " + protocolID); @@ -378,7 +378,7 @@ public abstract class Connector extends Container<IChannel> implements InternalC return openChannel(protocol); } - public InternalChannel openChannel(IProtocol protocol) throws ConnectorException + public InternalChannel openChannel(IProtocol<?> protocol) throws ConnectorException { long openChannelTimeout = getChannelTimeout(); long start = System.currentTimeMillis(); @@ -418,7 +418,7 @@ public abstract class Connector extends Container<IChannel> implements InternalC public InternalChannel inverseOpenChannel(short channelIndex, String protocolID) { - IProtocol protocol = createProtocol(protocolID, null); + IProtocol<?> protocol = createProtocol(protocolID, null); InternalChannel channel = createChannel(); initChannel(channel, protocol); @@ -446,7 +446,7 @@ public abstract class Connector extends Container<IChannel> implements InternalC return new Channel(); } - private void initChannel(InternalChannel channel, IProtocol protocol) + private void initChannel(InternalChannel channel, IProtocol<?> protocol) { channel.setMultiplexer(this); channel.setReceiveExecutor(getConfig().getReceiveExecutor()); @@ -643,7 +643,8 @@ public abstract class Connector extends Container<IChannel> implements InternalC this.negotiationException = negotiationException; } - protected IProtocol createProtocol(String type, Object infraStructure) + @SuppressWarnings("unchecked") + protected <INFRA_STRUCTURE> IProtocol<INFRA_STRUCTURE> createProtocol(String type, INFRA_STRUCTURE infraStructure) { if (StringUtil.isEmpty(type)) { @@ -656,7 +657,7 @@ public abstract class Connector extends Container<IChannel> implements InternalC throw new ConnectorException("No protocol provider configured"); } - IProtocol protocol = protocolProvider.getProtocol(type); + IProtocol<INFRA_STRUCTURE> protocol = (IProtocol<INFRA_STRUCTURE>)protocolProvider.getProtocol(type); if (protocol == null) { throw new ConnectorException("Invalid protocol factory: " + type); @@ -729,7 +730,7 @@ public abstract class Connector extends Container<IChannel> implements InternalC super.doDeactivate(); } - protected abstract void registerChannelWithPeer(short channelIndex, long timeout, IProtocol protocol) + protected abstract void registerChannelWithPeer(short channelIndex, long timeout, IProtocol<?> protocol) throws ConnectorException; protected abstract void deregisterChannelFromPeer(InternalChannel channel, long timeout) throws ConnectorException; diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/ContainerProtocolProvider.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/ContainerProtocolProvider.java index 396a5a12b7..c5c855d7a6 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/ContainerProtocolProvider.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/ContainerProtocolProvider.java @@ -45,9 +45,9 @@ public abstract class ContainerProtocolProvider implements IProtocolProvider return productGroup; } - public IProtocol getProtocol(String type) + public IProtocol<?> getProtocol(String type) { - return (IProtocol)container.getElement(productGroup, type, "protocol-" + counter.increment(), false); + return (IProtocol<?>)container.getElement(productGroup, type, "protocol-" + counter.increment(), false); } /** diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/FactoriesProtocolProvider.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/FactoriesProtocolProvider.java index 320f53b49d..fa2cb210ba 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/FactoriesProtocolProvider.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/FactoriesProtocolProvider.java @@ -58,12 +58,12 @@ public class FactoriesProtocolProvider implements IProtocolProvider getRegistry().put(factory.getKey().getType(), factory); } - public IProtocol getProtocol(String type) + public IProtocol<?> getProtocol(String type) { IFactory factory = registry.get(type); if (factory != null) { - return (IProtocol)factory.create(null); + return (IProtocol<?>)factory.create(null); } return null; diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannelMultiplexer.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannelMultiplexer.java index 62a7944b2d..ba4f9750c0 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannelMultiplexer.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannelMultiplexer.java @@ -85,7 +85,7 @@ public interface IChannelMultiplexer extends ILocationAware, IContainer<IChannel * @see #openChannel(String, Object) * @since 2.0 */ - public IChannel openChannel(IProtocol protocol) throws ConnectorException; + public IChannel openChannel(IProtocol<?> protocol) throws ConnectorException; /** * @since 2.0 diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocol.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocol.java index 67d44a985b..fa8bf2eca3 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocol.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocol.java @@ -20,7 +20,7 @@ import java.util.concurrent.ExecutorService; /** * @author Eike Stepper */ -public interface IProtocol extends ILocationAware, IBufferHandler +public interface IProtocol<INFRA_STRUCTURE> extends ILocationAware, IBufferHandler { public String getType(); @@ -28,9 +28,9 @@ public interface IProtocol extends ILocationAware, IBufferHandler public void setChannel(IChannel channel); - public Object getInfraStructure(); + public INFRA_STRUCTURE getInfraStructure(); - public void setInfraStructure(Object infraStructure); + public void setInfraStructure(INFRA_STRUCTURE infraStructure); public IBufferProvider getBufferProvider(); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocolProvider.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocolProvider.java index 12dc51fc53..bec959484e 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocolProvider.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/IProtocolProvider.java @@ -18,5 +18,5 @@ public interface IProtocolProvider /** * @since 2.0 */ - public IProtocol getProtocol(String type); + public IProtocol<?> getProtocol(String type); } diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/Protocol.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/Protocol.java index 5ad22f4feb..69a8607a2a 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/Protocol.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/protocol/Protocol.java @@ -19,7 +19,7 @@ import java.util.concurrent.ExecutorService; /** * @author Eike Stepper */ -public abstract class Protocol extends Lifecycle implements IProtocol +public abstract class Protocol<INFRA_STRUCTURE> extends Lifecycle implements IProtocol<INFRA_STRUCTURE> { private IChannel channel; @@ -27,7 +27,7 @@ public abstract class Protocol extends Lifecycle implements IProtocol private ExecutorService executorService; - private Object infraStructure; + private INFRA_STRUCTURE infraStructure; public Protocol() { @@ -87,12 +87,12 @@ public abstract class Protocol extends Lifecycle implements IProtocol this.executorService = executorService; } - public Object getInfraStructure() + public INFRA_STRUCTURE getInfraStructure() { return infraStructure; } - public void setInfraStructure(Object infraStructure) + public void setInfraStructure(INFRA_STRUCTURE infraStructure) { this.infraStructure = infraStructure; } diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/ExceptionMessageRequest.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/ExceptionMessageRequest.java index d55ad513d5..323e18c426 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/ExceptionMessageRequest.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/ExceptionMessageRequest.java @@ -23,7 +23,7 @@ class ExceptionMessageRequest extends Request private String message; - public ExceptionMessageRequest(SignalProtocol protocol, int correlationID, String message) + public ExceptionMessageRequest(SignalProtocol<?> protocol, int correlationID, String message) { super(protocol); this.correlationID = correlationID; diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Indication.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Indication.java index 16f98d8034..2f04636d4f 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Indication.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Indication.java @@ -75,7 +75,7 @@ public abstract class Indication extends SignalReactor void sendExceptionMessage(Exception ex) throws Exception { - SignalProtocol protocol = getProtocol(); + SignalProtocol<?> protocol = getProtocol(); int correlationID = -getCorrelationID(); String message = getMessage(ex); new ExceptionMessageRequest(protocol, correlationID, message).send(); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Request.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Request.java index 4dad1fa856..7764e1f7df 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Request.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Request.java @@ -31,7 +31,7 @@ public abstract class Request extends SignalActor /** * @since 2.0 */ - protected Request(SignalProtocol protocol) + protected Request(SignalProtocol<?> protocol) { super(protocol); } diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/RequestWithConfirmation.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/RequestWithConfirmation.java index a52a340182..026e0c001b 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/RequestWithConfirmation.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/RequestWithConfirmation.java @@ -31,7 +31,7 @@ public abstract class RequestWithConfirmation<RESULT> extends Request /** * @since 2.0 */ - protected RequestWithConfirmation(SignalProtocol protocol) + protected RequestWithConfirmation(SignalProtocol<?> protocol) { super(protocol); } diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Signal.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Signal.java index 0dc633c903..3c61c5fa14 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Signal.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/Signal.java @@ -30,7 +30,7 @@ public abstract class Signal implements Runnable { private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_SIGNAL, Signal.class); - private SignalProtocol protocol; + private SignalProtocol<?> protocol; private int correlationID; @@ -44,7 +44,7 @@ public abstract class Signal implements Runnable { } - public SignalProtocol getProtocol() + public SignalProtocol<?> getProtocol() { return protocol; } @@ -214,7 +214,7 @@ public abstract class Signal implements Runnable protected abstract void execute(BufferInputStream in, BufferOutputStream out) throws Exception; - void setProtocol(SignalProtocol protocol) + void setProtocol(SignalProtocol<?> protocol) { this.protocol = protocol; } diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalActor.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalActor.java index 192374caed..a2d3a9a4fc 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalActor.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalActor.java @@ -29,7 +29,7 @@ public abstract class SignalActor extends Signal /** * @since 2.0 */ - protected SignalActor(SignalProtocol protocol) + protected SignalActor(SignalProtocol<?> protocol) { setProtocol(protocol); setCorrelationID(protocol.getNextCorrelationID()); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalProtocol.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalProtocol.java index 0adf584401..4bc826c839 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalProtocol.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/SignalProtocol.java @@ -36,7 +36,7 @@ import java.util.concurrent.ConcurrentHashMap; /** * @author Eike Stepper */ -public abstract class SignalProtocol extends Protocol +public abstract class SignalProtocol<INFRA_STRUCTURE> extends Protocol<INFRA_STRUCTURE> { public static final long NO_TIMEOUT = BufferInputStream.NO_TIMEOUT; diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/failover/FailOverStrategy.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/failover/FailOverStrategy.java index 033adab410..9774c06e3d 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/failover/FailOverStrategy.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/failover/FailOverStrategy.java @@ -42,7 +42,7 @@ public abstract class FailOverStrategy extends AbstractFailOverStrategy } } - protected void failOver(SignalProtocol protocol) + protected void failOver(SignalProtocol<?> protocol) { IChannel oldChannel = protocol.getChannel(); IConnector newConnector = getNewConnector(oldChannel); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/wrapping/StreamWrapperInjector.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/wrapping/StreamWrapperInjector.java index a696492fb2..858362132a 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/wrapping/StreamWrapperInjector.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/signal/wrapping/StreamWrapperInjector.java @@ -46,7 +46,7 @@ public class StreamWrapperInjector implements IElementProcessor { if (element instanceof SignalProtocol) { - SignalProtocol signalProtocol = (SignalProtocol)element; + SignalProtocol<?> signalProtocol = (SignalProtocol<?>)element; if (shouldInject(container, productGroup, factoryType, description, signalProtocol)) { element = inject(container, productGroup, factoryType, description, signalProtocol); @@ -57,7 +57,7 @@ public class StreamWrapperInjector implements IElementProcessor } protected boolean shouldInject(IManagedContainer container, String productGroup, String factoryType, - String description, SignalProtocol signalProtocol) + String description, SignalProtocol<?> signalProtocol) { if (signalProtocol.getStreamWrapper() == streamWrapper) { @@ -68,7 +68,7 @@ public class StreamWrapperInjector implements IElementProcessor } protected Object inject(IManagedContainer container, String productGroup, String factoryType, String description, - SignalProtocol signalProtocol) + SignalProtocol<?> signalProtocol) { signalProtocol.addStreamWrapper(streamWrapper); return signalProtocol; |