public final class sun.audio.AudioPlayer extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.audio.AudioPlayer
super_class: java.lang.Thread
{
private final sun.audio.AudioDevice devAudio;
descriptor: Lsun/audio/AudioDevice;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final sun.audio.AudioPlayer player;
descriptor: Lsun/audio/AudioPlayer;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic sun.audio.AudioPlayer.getAudioPlayer:()Lsun/audio/AudioPlayer;
putstatic sun.audio.AudioPlayer.player:Lsun/audio/AudioPlayer;
return
LocalVariableTable:
Start End Slot Name Signature
private static java.lang.ThreadGroup getAudioThreadGroup();
descriptor: ()Ljava/lang/ThreadGroup;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=0
0: invokestatic sun.audio.AudioPlayer.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getThreadGroup:()Ljava/lang/ThreadGroup;
astore 0
start local 0 1: goto 3
2: StackMap locals: java.lang.ThreadGroup
StackMap stack:
aload 0
invokevirtual java.lang.ThreadGroup.getParent:()Ljava/lang/ThreadGroup;
astore 0
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.ThreadGroup.getParent:()Ljava/lang/ThreadGroup;
ifnull 5
4: aload 0
invokevirtual java.lang.ThreadGroup.getParent:()Ljava/lang/ThreadGroup;
invokevirtual java.lang.ThreadGroup.getParent:()Ljava/lang/ThreadGroup;
ifnonnull 2
5: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 6 0 g Ljava/lang/ThreadGroup;
private static sun.audio.AudioPlayer getAudioPlayer();
descriptor: ()Lsun/audio/AudioPlayer;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=0
0: new sun.audio.AudioPlayer$1
dup
invokespecial sun.audio.AudioPlayer$1.<init>:()V
astore 1
start local 1 1: aload 1
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast sun.audio.AudioPlayer
astore 0
start local 0 2: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
2 3 0 audioPlayer Lsun/audio/AudioPlayer;
1 3 1 action Ljava/security/PrivilegedAction;
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokestatic sun.audio.AudioPlayer.getAudioThreadGroup:()Ljava/lang/ThreadGroup;
ldc "Audio Player"
invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/String;)V
1: aload 0
getstatic sun.audio.AudioDevice.device:Lsun/audio/AudioDevice;
putfield sun.audio.AudioPlayer.devAudio:Lsun/audio/AudioDevice;
2: aload 0
getfield sun.audio.AudioPlayer.devAudio:Lsun/audio/AudioDevice;
invokevirtual sun.audio.AudioDevice.open:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/audio/AudioPlayer;
public synchronized void start(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.audio.AudioPlayer.devAudio:Lsun/audio/AudioDevice;
aload 1
invokevirtual sun.audio.AudioDevice.openChannel:(Ljava/io/InputStream;)V
1: aload 0
invokevirtual java.lang.Object.notify:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/audio/AudioPlayer;
0 3 1 in Ljava/io/InputStream;
MethodParameters:
Name Flags
in
public synchronized void stop(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.audio.AudioPlayer.devAudio:Lsun/audio/AudioDevice;
aload 1
invokevirtual sun.audio.AudioDevice.closeChannel:(Ljava/io/InputStream;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/audio/AudioPlayer;
0 2 1 in Ljava/io/InputStream;
MethodParameters:
Name Flags
in
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.audio.AudioPlayer.devAudio:Lsun/audio/AudioDevice;
invokevirtual sun.audio.AudioDevice.play:()V
1: StackMap locals:
StackMap stack:
ldc 5000
invokestatic java.lang.Thread.sleep:(J)V
2: goto 1
StackMap locals:
StackMap stack: java.lang.Exception
3: pop
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/audio/AudioPlayer;
Exception table:
from to target type
1 2 3 Class java.lang.Exception
}
SourceFile: "AudioPlayer.java"
NestMembers:
sun.audio.AudioPlayer$1
InnerClasses:
sun.audio.AudioPlayer$1