package Ġcom . mob . lee . fast air . io . http Ċ Ċ import Ġjava . io . InputStream Ċ import Ġjava . nio . channels . SocketChannel Ċ Ċ class ĠResource Response ( action : Ġ() Ġ-> ĠInputStream , Ġmime : ĠString ) Ġ: ĠResponse < InputStream >( action , Ġmime Ġ= Ġmime ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġadd Header ( source : ĠInputStream ) Ġ{ ĊĠĠĠĠĠĠĠ Ġheader . put (" Content - Length ", source . available (). toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Write Body ( channel : ĠSocket Channel , Ġsource : ĠInputStream ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsource . use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbuffer Ġ= ĠByteArray ( 2 * 1 0 2 4 Ġ* Ġ 1 0 2 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġcount Ġ= Ġit . read ( buffer ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( count Ġ!= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite ( channel , buffer , count ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcount Ġ= Ġit . read ( buffer ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }