public abstract class org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler extends org.apache.fop.render.intermediate.AbstractIFDocumentHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler
  super_class: org.apache.fop.render.intermediate.AbstractIFDocumentHandler
{
  protected java.io.OutputStream outputStream;
    descriptor: Ljava/io/OutputStream;
    flags: (0x0004) ACC_PROTECTED

  private boolean ownOutputStream;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  protected org.apache.fop.fonts.FontInfo fontInfo;
    descriptor: Lorg/apache/fop/fonts/FontInfo;
    flags: (0x0004) ACC_PROTECTED

  public void <init>(org.apache.fop.render.intermediate.IFContext);
    descriptor: (Lorg/apache/fop/render/intermediate/IFContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
        start local 1 // org.apache.fop.render.intermediate.IFContext ifContext
         0: .line 52
            aload 0 /* this */
            aload 1 /* ifContext */
            invokespecial org.apache.fop.render.intermediate.AbstractIFDocumentHandler.<init>:(Lorg/apache/fop/render/intermediate/IFContext;)V
         1: .line 53
            return
        end local 1 // org.apache.fop.render.intermediate.IFContext ifContext
        end local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/apache/fop/render/intermediate/AbstractBinaryWritingIFDocumentHandler;
            0    2     1  ifContext  Lorg/apache/fop/render/intermediate/IFContext;
    MethodParameters:
           Name  Flags
      ifContext  

  public void setResult(javax.xml.transform.Result);
    descriptor: (Ljavax/xml/transform/Result;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
        start local 1 // javax.xml.transform.Result result
         0: .line 57
            aload 1 /* result */
            instanceof javax.xml.transform.stream.StreamResult
            ifeq 16
         1: .line 58
            aload 1 /* result */
            checkcast javax.xml.transform.stream.StreamResult
            astore 2 /* streamResult */
        start local 2 // javax.xml.transform.stream.StreamResult streamResult
         2: .line 59
            aload 2 /* streamResult */
            invokevirtual javax.xml.transform.stream.StreamResult.getOutputStream:()Ljava/io/OutputStream;
            astore 3 /* out */
        start local 3 // java.io.OutputStream out
         3: .line 60
            aload 3 /* out */
            ifnonnull 14
         4: .line 61
            aload 2 /* streamResult */
            invokevirtual javax.xml.transform.stream.StreamResult.getWriter:()Ljava/io/Writer;
            ifnull 8
         5: .line 62
            new java.lang.IllegalArgumentException
            dup
         6: .line 63
            ldc "FOP cannot use a Writer. Please supply an OutputStream!"
         7: .line 62
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 66
      StackMap locals: javax.xml.transform.stream.StreamResult java.io.OutputStream
      StackMap stack:
            aload 2 /* streamResult */
            invokevirtual javax.xml.transform.stream.StreamResult.getSystemId:()Ljava/lang/String;
            invokestatic java.net.URI.create:(Ljava/lang/String;)Ljava/net/URI;
            astore 4 /* resultURI */
        start local 4 // java.net.URI resultURI
         9: .line 67
            new java.io.BufferedOutputStream
            dup
            aload 0 /* this */
            invokevirtual org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.getUserAgent:()Lorg/apache/fop/apps/FOUserAgent;
            invokevirtual org.apache.fop.apps.FOUserAgent.getResourceResolver:()Lorg/apache/fop/apps/io/InternalResourceResolver;
            aload 4 /* resultURI */
            invokevirtual org.apache.fop.apps.io.InternalResourceResolver.getOutputStream:(Ljava/net/URI;)Ljava/io/OutputStream;
            invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 3 /* out */
        end local 4 // java.net.URI resultURI
        10: .line 68
            goto 13
      StackMap locals:
      StackMap stack: java.io.IOException
        11: astore 4 /* ioe */
        start local 4 // java.io.IOException ioe
        12: .line 69
            new org.apache.fop.render.intermediate.IFException
            dup
            ldc "I/O error while opening output stream"
            aload 4 /* ioe */
            invokespecial org.apache.fop.render.intermediate.IFException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 4 // java.io.IOException ioe
        13: .line 71
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.ownOutputStream:Z
        14: .line 73
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* out */
            putfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.outputStream:Ljava/io/OutputStream;
        end local 3 // java.io.OutputStream out
        end local 2 // javax.xml.transform.stream.StreamResult streamResult
        15: .line 74
            goto 19
        16: .line 75
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
        17: .line 76
            new java.lang.StringBuilder
            dup
            ldc "Unsupported Result subclass: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* result */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 75
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 78
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.xml.transform.Result result
        end local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Lorg/apache/fop/render/intermediate/AbstractBinaryWritingIFDocumentHandler;
            0   20     1        result  Ljavax/xml/transform/Result;
            2   15     2  streamResult  Ljavax/xml/transform/stream/StreamResult;
            3   15     3           out  Ljava/io/OutputStream;
            9   10     4     resultURI  Ljava/net/URI;
           12   13     4           ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           8    10      11  Class java.io.IOException
    Exceptions:
      throws org.apache.fop.render.intermediate.IFException
    MethodParameters:
        Name  Flags
      result  

  public org.apache.fop.fonts.FontInfo getFontInfo();
    descriptor: ()Lorg/apache/fop/fonts/FontInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
         0: .line 82
            aload 0 /* this */
            getfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.fontInfo:Lorg/apache/fop/fonts/FontInfo;
            areturn
        end local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/render/intermediate/AbstractBinaryWritingIFDocumentHandler;

  public void setFontInfo(org.apache.fop.fonts.FontInfo);
    descriptor: (Lorg/apache/fop/fonts/FontInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
        start local 1 // org.apache.fop.fonts.FontInfo fontInfo
         0: .line 87
            aload 0 /* this */
            aload 1 /* fontInfo */
            putfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.fontInfo:Lorg/apache/fop/fonts/FontInfo;
         1: .line 88
            return
        end local 1 // org.apache.fop.fonts.FontInfo fontInfo
        end local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/fop/render/intermediate/AbstractBinaryWritingIFDocumentHandler;
            0    2     1  fontInfo  Lorg/apache/fop/fonts/FontInfo;
    MethodParameters:
          Name  Flags
      fontInfo  

  public void setDefaultFontInfo(org.apache.fop.fonts.FontInfo);
    descriptor: (Lorg/apache/fop/fonts/FontInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
        start local 1 // org.apache.fop.fonts.FontInfo fontInfo
         0: .line 92
            aload 0 /* this */
            invokevirtual org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.getUserAgent:()Lorg/apache/fop/apps/FOUserAgent;
            invokevirtual org.apache.fop.apps.FOUserAgent.getFontManager:()Lorg/apache/fop/fonts/FontManager;
            astore 2 /* fontManager */
        start local 2 // org.apache.fop.fonts.FontManager fontManager
         1: .line 93
            iconst_1
            anewarray org.apache.fop.fonts.FontCollection
            dup
            iconst_0
         2: .line 94
            new org.apache.fop.fonts.base14.Base14FontCollection
            dup
            aload 2 /* fontManager */
            invokevirtual org.apache.fop.fonts.FontManager.isBase14KerningEnabled:()Z
            invokespecial org.apache.fop.fonts.base14.Base14FontCollection.<init>:(Z)V
            aastore
         3: .line 93
            astore 3 /* fontCollections */
        start local 3 // org.apache.fop.fonts.FontCollection[] fontCollections
         4: .line 97
            aload 1 /* fontInfo */
            ifnull 5
            aload 1 /* fontInfo */
            goto 6
      StackMap locals: org.apache.fop.fonts.FontManager org.apache.fop.fonts.FontCollection[]
      StackMap stack:
         5: new org.apache.fop.fonts.FontInfo
            dup
            invokespecial org.apache.fop.fonts.FontInfo.<init>:()V
      StackMap locals:
      StackMap stack: org.apache.fop.fonts.FontInfo
         6: astore 4 /* fi */
        start local 4 // org.apache.fop.fonts.FontInfo fi
         7: .line 98
            aload 4 /* fi */
            new org.apache.fop.fonts.FontEventAdapter
            dup
            aload 0 /* this */
            invokevirtual org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.getUserAgent:()Lorg/apache/fop/apps/FOUserAgent;
            invokevirtual org.apache.fop.apps.FOUserAgent.getEventBroadcaster:()Lorg/apache/fop/events/EventBroadcaster;
            invokespecial org.apache.fop.fonts.FontEventAdapter.<init>:(Lorg/apache/fop/events/EventBroadcaster;)V
            invokevirtual org.apache.fop.fonts.FontInfo.setEventListener:(Lorg/apache/fop/fonts/FontEventListener;)V
         8: .line 99
            aload 2 /* fontManager */
            aload 4 /* fi */
            aload 3 /* fontCollections */
            invokevirtual org.apache.fop.fonts.FontManager.setup:(Lorg/apache/fop/fonts/FontInfo;[Lorg/apache/fop/fonts/FontCollection;)V
         9: .line 100
            aload 0 /* this */
            aload 4 /* fi */
            invokevirtual org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.setFontInfo:(Lorg/apache/fop/fonts/FontInfo;)V
        10: .line 101
            return
        end local 4 // org.apache.fop.fonts.FontInfo fi
        end local 3 // org.apache.fop.fonts.FontCollection[] fontCollections
        end local 2 // org.apache.fop.fonts.FontManager fontManager
        end local 1 // org.apache.fop.fonts.FontInfo fontInfo
        end local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lorg/apache/fop/render/intermediate/AbstractBinaryWritingIFDocumentHandler;
            0   11     1         fontInfo  Lorg/apache/fop/fonts/FontInfo;
            1   11     2      fontManager  Lorg/apache/fop/fonts/FontManager;
            4   11     3  fontCollections  [Lorg/apache/fop/fonts/FontCollection;
            7   11     4               fi  Lorg/apache/fop/fonts/FontInfo;
    MethodParameters:
          Name  Flags
      fontInfo  

  public void startDocument();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
         0: .line 105
            aload 0 /* this */
            invokespecial org.apache.fop.render.intermediate.AbstractIFDocumentHandler.startDocument:()V
         1: .line 106
            aload 0 /* this */
            getfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.outputStream:Ljava/io/OutputStream;
            ifnonnull 3
         2: .line 107
            new java.lang.IllegalStateException
            dup
            ldc "OutputStream hasn't been set through setResult()"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 109
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/fop/render/intermediate/AbstractBinaryWritingIFDocumentHandler;
    Exceptions:
      throws org.apache.fop.render.intermediate.IFException

  public void endDocument();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
         0: .line 113
            aload 0 /* this */
            getfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.ownOutputStream:Z
            ifeq 3
         1: .line 114
            aload 0 /* this */
            getfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.outputStream:Ljava/io/OutputStream;
            invokestatic org.apache.commons.io.IOUtils.closeQuietly:(Ljava/io/OutputStream;)V
         2: .line 115
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler.outputStream:Ljava/io/OutputStream;
         3: .line 117
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/fop/render/intermediate/AbstractBinaryWritingIFDocumentHandler;
    Exceptions:
      throws org.apache.fop.render.intermediate.IFException
}
SourceFile: "AbstractBinaryWritingIFDocumentHandler.java"