.class public abstract Lorg/apache/http/impl/io/AbstractMessageWriter; .super Ljava/lang/Object; .source "AbstractMessageWriter.java" # interfaces .implements Lorg/apache/http/io/HttpMessageWriter; # annotations .annotation system Ldalvik/annotation/Signature; value = { "", "Ljava/lang/Object;", "Lorg/apache/http/io/HttpMessageWriter<", "TT;>;" } .end annotation # instance fields .field protected final lineBuf:Lorg/apache/http/util/CharArrayBuffer; .field protected final lineFormatter:Lorg/apache/http/message/LineFormatter; .field protected final sessionBuffer:Lorg/apache/http/io/SessionOutputBuffer; # direct methods .method public constructor (Lorg/apache/http/io/SessionOutputBuffer;Lorg/apache/http/message/LineFormatter;)V .registers 4 .line 90 invoke-direct {p0}, Ljava/lang/Object;->()V .line 91 const-string v0, "Session input buffer" invoke-static {p1, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; move-result-object p1 check-cast p1, Lorg/apache/http/io/SessionOutputBuffer; iput-object p1, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->sessionBuffer:Lorg/apache/http/io/SessionOutputBuffer; if-eqz p2, :cond_10 goto :goto_12 .line 92 :cond_10 sget-object p2, Lorg/apache/http/message/BasicLineFormatter;->INSTANCE:Lorg/apache/http/message/BasicLineFormatter; :goto_12 iput-object p2, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineFormatter:Lorg/apache/http/message/LineFormatter; .line 93 new-instance p1, Lorg/apache/http/util/CharArrayBuffer; const/16 p2, 0x80 invoke-direct {p1, p2}, Lorg/apache/http/util/CharArrayBuffer;->(I)V iput-object p1, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineBuf:Lorg/apache/http/util/CharArrayBuffer; return-void .end method .method public constructor (Lorg/apache/http/io/SessionOutputBuffer;Lorg/apache/http/message/LineFormatter;Lorg/apache/http/params/HttpParams;)V .registers 4 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 71 invoke-direct {p0}, Ljava/lang/Object;->()V .line 72 const-string p3, "Session input buffer" invoke-static {p1, p3}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 73 iput-object p1, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->sessionBuffer:Lorg/apache/http/io/SessionOutputBuffer; .line 74 new-instance p1, Lorg/apache/http/util/CharArrayBuffer; const/16 p3, 0x80 invoke-direct {p1, p3}, Lorg/apache/http/util/CharArrayBuffer;->(I)V iput-object p1, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineBuf:Lorg/apache/http/util/CharArrayBuffer; if-eqz p2, :cond_16 goto :goto_18 .line 75 :cond_16 sget-object p2, Lorg/apache/http/message/BasicLineFormatter;->INSTANCE:Lorg/apache/http/message/BasicLineFormatter; :goto_18 iput-object p2, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineFormatter:Lorg/apache/http/message/LineFormatter; return-void .end method # virtual methods .method public write(Lorg/apache/http/HttpMessage;)V .registers 6 .annotation system Ldalvik/annotation/Signature; value = { "(TT;)V" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException;, Lorg/apache/http/HttpException; } .end annotation .line 107 const-string v0, "HTTP message" invoke-static {p1, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 108 invoke-virtual {p0, p1}, Lorg/apache/http/impl/io/AbstractMessageWriter;->writeHeadLine(Lorg/apache/http/HttpMessage;)V .line 109 invoke-interface {p1}, Lorg/apache/http/HttpMessage;->headerIterator()Lorg/apache/http/HeaderIterator; move-result-object p1 :goto_c invoke-interface {p1}, Lorg/apache/http/HeaderIterator;->hasNext()Z move-result v0 if-eqz v0, :cond_24 .line 110 invoke-interface {p1}, Lorg/apache/http/HeaderIterator;->nextHeader()Lorg/apache/http/Header; move-result-object v0 .line 111 iget-object v1, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->sessionBuffer:Lorg/apache/http/io/SessionOutputBuffer; iget-object v2, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineFormatter:Lorg/apache/http/message/LineFormatter; iget-object v3, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineBuf:Lorg/apache/http/util/CharArrayBuffer; invoke-interface {v2, v3, v0}, Lorg/apache/http/message/LineFormatter;->formatHeader(Lorg/apache/http/util/CharArrayBuffer;Lorg/apache/http/Header;)Lorg/apache/http/util/CharArrayBuffer; move-result-object v0 invoke-interface {v1, v0}, Lorg/apache/http/io/SessionOutputBuffer;->writeLine(Lorg/apache/http/util/CharArrayBuffer;)V goto :goto_c .line 114 :cond_24 iget-object p1, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineBuf:Lorg/apache/http/util/CharArrayBuffer; invoke-virtual {p1}, Lorg/apache/http/util/CharArrayBuffer;->clear()V .line 115 iget-object p1, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->sessionBuffer:Lorg/apache/http/io/SessionOutputBuffer; iget-object v0, p0, Lorg/apache/http/impl/io/AbstractMessageWriter;->lineBuf:Lorg/apache/http/util/CharArrayBuffer; invoke-interface {p1, v0}, Lorg/apache/http/io/SessionOutputBuffer;->writeLine(Lorg/apache/http/util/CharArrayBuffer;)V return-void .end method .method protected abstract writeHeadLine(Lorg/apache/http/HttpMessage;)V .annotation system Ldalvik/annotation/Signature; value = { "(TT;)V" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .end method