package com.jcumulus.server.rtmfp.application;
/**
* jCumulus is a Java port of Cumulus OpenRTMP
*
* Copyright 2011 OpenRTMFP
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License received along this program for more
* details (or else see http://www.gnu.org/licenses/).
*
*
* This file is a part of jCumulus.
*/
import com.jcumulus.server.rtmfp.packet.*;
import com.jcumulus.server.rtmfp.ISession;
import com.jcumulus.server.rtmfp.stream.B;
import org.apache.log4j.Logger;
public class StreamWriter extends com.jcumulus.server.rtmfp.publisher.FlowWriter
{
private static final Logger W = Logger.getLogger(StreamWriter.class);
private byte V;
private G T;
private boolean U;
public StreamWriter(byte byte0, byte abyte0[], ISession d)
{
super(abyte0, d);
T = new G();
V = byte0;
}
void A(int i, Packet a, boolean flag)
{
if(flag)
{
if(a.H() >= 5)
{
a.E(a.H() - 5);
B b = new B(a.G(), 5);
b.B(V);
b.A(i);
A(a.G(), a.I(), a.G(), 5);
return;
}
W.warn("Written unbuffered impossible, it requires 5 head bytes available on PacketReader given");
}
com.jcumulus.server.rtmfp.stream.BinaryWriter a1 = A(true);
a1.B(V);
a1.A(i);
a1.B(a.G());
}
public G M()
{
return T;
}
public boolean L()
{
return U;
}
public void C(boolean flag)
{
U = flag;
}
}