Skip to content
Snippets Groups Projects
Commit 677375b8 authored by George Politis's avatar George Politis
Browse files

Harmless generalisation of the RTCPPacketTransformer.

parent e07f281f
No related branches found
No related tags found
No related merge requests found
Showing
with 28 additions and 32 deletions
......@@ -26,7 +26,7 @@
*/
public class BasicRTCPTerminationStrategy
implements RTCPTerminationStrategy,
RTCPPacketTransformer,
Transformer<RTCPCompoundPacket>,
RTCPReportBuilder
{
/**
......@@ -115,7 +115,7 @@ public RTCPTransmitter getRTCPTransmitter()
}
@Override
public RTCPPacketTransformer getRTCPPacketTransformer()
public Transformer<RTCPCompoundPacket> getRTCPCompoundPacketTransformer()
{
return this;
}
......@@ -145,7 +145,7 @@ public RTPTranslator getRTPTranslator()
* @return
*/
@Override
public RTCPCompoundPacket transformRTCPPacket(
public RTCPCompoundPacket transform(
RTCPCompoundPacket inPacket)
{
if (inPacket == null
......
......@@ -21,7 +21,7 @@
* @author George Politis
*/
public class MaxThroughputRTCPTerminationStrategy
implements RTCPTerminationStrategy, RTCPPacketTransformer
implements RTCPTerminationStrategy, Transformer<RTCPCompoundPacket>
{
private final RTCPReportBuilder reportBuilder
// TODO(gp) create an RTCPReportBuilderImpl that reports feedback using the announced SSRC of the bridge
......@@ -31,7 +31,7 @@ public class MaxThroughputRTCPTerminationStrategy
public static final int MAX_EXP = 63;
@Override
public RTCPCompoundPacket transformRTCPPacket(RTCPCompoundPacket inPacket)
public RTCPCompoundPacket transform(RTCPCompoundPacket inPacket)
{
if (inPacket == null
|| inPacket.packets == null || inPacket.packets.length == 0)
......@@ -88,7 +88,7 @@ public RTCPCompoundPacket transformRTCPPacket(RTCPCompoundPacket inPacket)
}
@Override
public RTCPPacketTransformer getRTCPPacketTransformer()
public Transformer<RTCPCompoundPacket> getRTCPCompoundPacketTransformer()
{
return this;
}
......
......@@ -21,7 +21,7 @@
* @author George Politis
*/
public class MinThroughputRTCPTerminationStrategy
implements RTCPTerminationStrategy, RTCPPacketTransformer
implements RTCPTerminationStrategy, Transformer<RTCPCompoundPacket>
{
private final RTCPReportBuilder reportBuilder
// TODO(gp) create an RTCPReportBuilderImpl that reports feedback using the announced SSRC of the bridge
......@@ -31,7 +31,7 @@ public class MinThroughputRTCPTerminationStrategy
public static final int MIN_EXP = 1;
@Override
public RTCPCompoundPacket transformRTCPPacket(RTCPCompoundPacket inPacket)
public RTCPCompoundPacket transform(RTCPCompoundPacket inPacket)
{
if (inPacket == null
|| inPacket.packets == null || inPacket.packets.length == 0)
......@@ -88,7 +88,7 @@ public RTCPCompoundPacket transformRTCPPacket(RTCPCompoundPacket inPacket)
}
@Override
public RTCPPacketTransformer getRTCPPacketTransformer()
public Transformer<RTCPCompoundPacket> getRTCPCompoundPacketTransformer()
{
return this;
}
......
......@@ -20,14 +20,14 @@
public class PassthroughRTCPTerminationStrategy
implements RTCPTerminationStrategy
{
private final RTCPPacketTransformer packetTransformer
private final Transformer<RTCPCompoundPacket> packetTransformer
= new NullRTCPPacketTransformer();
private final RTCPReportBuilder reportBuilder
= new DefaultRTCPReportBuilderImpl();
@Override
public RTCPPacketTransformer getRTCPPacketTransformer()
public Transformer<RTCPCompoundPacket> getRTCPCompoundPacketTransformer()
{
return packetTransformer;
}
......
......@@ -23,12 +23,12 @@ public class SilentBridgeRTCPTerminationStrategy
private final RTCPReportBuilder reportBuilder =
new NullRTCPReportBuilderImpl();
private final RTCPPacketTransformer packetTransformer =
private final Transformer<RTCPCompoundPacket> packetTransformer =
new NullRTCPPacketTransformer();
@Override
public RTCPPacketTransformer getRTCPPacketTransformer()
public Transformer<RTCPCompoundPacket> getRTCPCompoundPacketTransformer()
{
return packetTransformer;
}
......
......@@ -12,15 +12,13 @@
/**
* Created by gp on 7/2/14.
*/
public class NullRTCPPacketTransformer implements RTCPPacketTransformer
public class NullRTCPPacketTransformer implements Transformer<RTCPCompoundPacket>
{
/**
*
* @param inPacket
* @return
* {@inheritDoc}
*/
@Override
public RTCPCompoundPacket transformRTCPPacket(RTCPCompoundPacket inPacket)
public RTCPCompoundPacket transform(RTCPCompoundPacket inPacket)
{
// This strategy does not perform any modifications to incoming RTCP
// traffic.
......
......@@ -15,10 +15,10 @@
import org.jitsi.util.*;
/**
* Uses the <tt>RTCPPacketTransformer</tt> of the
* <tt>RTCPTerminationStrategy</tt> of the <tt>RTPTranslator</tt> of the
* associated <tt>MediaStream</tt> to transform incoming RTCP packets. Advanced
* RTCP termination strategies can drop incoming RTCP packets.
* Uses the <tt>Transformer</tt> of the <tt>RTCPTerminationStrategy</tt> of the
* <tt>RTPTranslator</tt> of the associated <tt>MediaStream</tt> to transform
* incoming RTCP packets. Advanced RTCP termination strategies can drop incoming
* RTCP packets.
*
* @author George Politis
*/
......@@ -98,8 +98,8 @@ public RawPacket reverseTransform(RawPacket pkt)
if (rtcpTerminationStrategy == null)
return pkt;
RTCPPacketTransformer rtcpPacketTransformer
= rtcpTerminationStrategy.getRTCPPacketTransformer();
Transformer<RTCPCompoundPacket> rtcpPacketTransformer
= rtcpTerminationStrategy.getRTCPCompoundPacketTransformer();
if (rtcpPacketTransformer == null)
return pkt;
......@@ -124,7 +124,7 @@ public RawPacket reverseTransform(RawPacket pkt)
// Transform the RTCP packet.
RTCPCompoundPacket outRTCPPacket = rtcpPacketTransformer
.transformRTCPPacket(inRTCPPacket);
.transform(inRTCPPacket);
// If the outRTCPPacket is the same object as the inRTCPPacket,
// return the pkt.
......
......@@ -14,13 +14,13 @@
public interface RTCPTerminationStrategy
{
/**
* Gets the <tt>RTCPPacketTransformer</tt> that is to inspect and modify
* Gets the <tt>Transformer</tt> that is to inspect and modify
* incoming RTCP packets.
*
* @return the <tt>RTCPPacketTransformer</tt> that is to inspect and
* @return the <tt>Transformer</tt> that is to inspect and
* modify incoming RTCP packets.
*/
RTCPPacketTransformer getRTCPPacketTransformer();
Transformer<RTCPCompoundPacket> getRTCPCompoundPacketTransformer();
/**
* Gets the <tt>RTCPReportBuilder</tt> that makes the RTCP feedback
......
......@@ -6,12 +6,10 @@
*/
package org.jitsi.service.neomedia;
import net.sf.fmj.media.rtp.*;
/**
* @author George Politis
*/
public interface RTCPPacketTransformer
public interface Transformer<T>
{
/**
* Transforms an incoming RTCP packet.
......@@ -21,5 +19,5 @@ public interface RTCPPacketTransformer
* the method returns the input packet. If the packet is to be dropped,
* the method returns null.
*/
RTCPCompoundPacket transformRTCPPacket(RTCPCompoundPacket inPacket);
T transform(T inPacket);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment