mirror of
https://github.com/johndoe6345789/tustu.git
synced 2026-04-26 14:45:01 +00:00
stuff
This commit is contained in:
126
app/aI/InputStreamExtension.java
Normal file
126
app/aI/InputStreamExtension.java
Normal file
@@ -0,0 +1,126 @@
|
||||
package aI;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class InputStreamExtension extends InputStream {
|
||||
private boolean d = true;
|
||||
|
||||
private List e = new ArrayList();
|
||||
|
||||
private byte[] f = null;
|
||||
|
||||
protected int a;
|
||||
|
||||
protected int b = 0;
|
||||
|
||||
protected int c;
|
||||
|
||||
public InputStreamExtension(byte[] paramArrayOfbyte) {
|
||||
this.f = paramArrayOfbyte;
|
||||
this.a = 0;
|
||||
this.c = paramArrayOfbyte.length;
|
||||
}
|
||||
|
||||
public synchronized int read() {
|
||||
if (this.a == this.c && this.d)
|
||||
b(a());
|
||||
return (this.a < this.c) ? (this.f[this.a++] & 0xFF) : -1;
|
||||
}
|
||||
|
||||
public synchronized int read(byte[] paramArrayOfbyte, int paramInt1, int paramInt2) {
|
||||
if (paramArrayOfbyte == null)
|
||||
throw new NullPointerException();
|
||||
if (paramInt1 < 0 || paramInt2 < 0 || paramInt2 > paramArrayOfbyte.length - paramInt1)
|
||||
throw new IndexOutOfBoundsException();
|
||||
if (this.a >= this.c) {
|
||||
if (this.a == this.c && this.d)
|
||||
b(a());
|
||||
if (this.a >= this.c)
|
||||
return -1;
|
||||
}
|
||||
if (this.a + paramInt2 > this.c)
|
||||
paramInt2 = this.c - this.a;
|
||||
if (paramInt2 <= 0)
|
||||
return 0;
|
||||
System.arraycopy(this.f, this.a, paramArrayOfbyte, paramInt1, paramInt2);
|
||||
this.a += paramInt2;
|
||||
return paramInt2;
|
||||
}
|
||||
|
||||
public synchronized long skip(long paramLong) {
|
||||
if (this.a + paramLong > this.c)
|
||||
paramLong = (this.c - this.a);
|
||||
if (paramLong < 0L)
|
||||
return 0L;
|
||||
this.a = (int)(this.a + paramLong);
|
||||
return paramLong;
|
||||
}
|
||||
|
||||
public synchronized int available() {
|
||||
return this.c - this.a;
|
||||
}
|
||||
|
||||
public boolean markSupported() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public void mark(int paramInt) {
|
||||
this.b = this.a;
|
||||
}
|
||||
|
||||
public synchronized void reset() {
|
||||
this.a = this.b;
|
||||
}
|
||||
|
||||
public void close() {}
|
||||
|
||||
public synchronized void a(byte[] paramArrayOfbyte) {
|
||||
this.e.add(paramArrayOfbyte);
|
||||
notify();
|
||||
}
|
||||
|
||||
private void b(byte[] paramArrayOfbyte) {
|
||||
if (!this.d)
|
||||
return;
|
||||
if (paramArrayOfbyte == null)
|
||||
throw new IOException("TIMEOUT on wait for next buffer. Expected more buffers, Log file likely truncated.");
|
||||
this.f = paramArrayOfbyte;
|
||||
this.a = 0;
|
||||
this.c = paramArrayOfbyte.length;
|
||||
this.b = 0;
|
||||
}
|
||||
|
||||
public synchronized void a(boolean paramBoolean) {
|
||||
this.d = paramBoolean;
|
||||
if (!paramBoolean)
|
||||
notify();
|
||||
}
|
||||
|
||||
public synchronized byte[] a() {
|
||||
if (this.e.isEmpty() && this.d)
|
||||
try {
|
||||
wait(3000L);
|
||||
} catch (InterruptedException interruptedException) {
|
||||
Logger.getLogger(a.class.getName()).log(Level.SEVERE, (String)null, interruptedException);
|
||||
}
|
||||
byte[] arrayOfByte = null;
|
||||
if (!this.e.isEmpty()) {
|
||||
arrayOfByte = this.e.get(0);
|
||||
this.e.remove(0);
|
||||
} else if (this.d) {
|
||||
Logger.getLogger(a.class.getName()).log(Level.WARNING, "TIMEOUT on wait for next buffer. Expected more buffers, did not get it in 3000 ms. Log file likely truncated.");
|
||||
}
|
||||
return arrayOfByte;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Location: /home/rewrich/Downloads/TunerStudioMS/TunerStudioMS/!/aI/a.class
|
||||
* Java compiler version: 8 (52.0)
|
||||
* JD-Core Version: 1.1.3
|
||||
*/
|
||||
Reference in New Issue
Block a user