PK!! META-INF/PK!!com/PK!!com/ustadmobile/PK!!com/ustadmobile/httpoveripc/PK!!#com/ustadmobile/httpoveripc/server/PK!!:!P%META-INF/server_release.kotlin_module"*PK!!߾mPPRcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$IncomingHandler.class4Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$IncomingHandlerandroid/os/HandlerT(Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer;Landroid/os/Looper;)V(Landroid/os/Looper;)V#Lorg/jetbrains/annotations/NotNull;looper kotlin/jvm/internal/Intrinsics checkNotNullParameter'(Ljava/lang/Object;Ljava/lang/String;)V  this$0>Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer;    thisNLcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$IncomingHandler;Landroid/os/Looper; handleMessage(Landroid/os/Message;)Vjava/lang/Exceptionandroid/os/RemoteExceptionmsg android/os/Message"getData()Landroid/os/Bundle; $% #&msg.data(checkNotNullExpressionValue * +request- <? java/net/URIAtoString()Ljava/lang/String; CD BE handleRequest=(Lrawhttp/core/RawHttpRequest;)Lrawhttp/core/RawHttpResponse; GH 0I=HTTP/1.1 500 Internal Server Error Content-Type: text/plain Krawhttp/core/RawHttpM parseResponse2(Ljava/lang/String;)Lrawhttp/core/RawHttpResponse; OP NQrawhttp/core/body/StringBodySjava/lang/ThrowableUkotlin/ExceptionsKtWstackTraceToString)(Ljava/lang/Throwable;)Ljava/lang/String; YZ X[(Ljava/lang/String;)V ] T^!rawhttp/core/body/HttpMessageBody`rawhttp/core/RawHttpResponsebwithBodyC(Lrawhttp/core/body/HttpMessageBody;)Lrawhttp/core/RawHttpResponse; de cfHttpOverIpcServerhjava/lang/StringBuilderj()V l kmHttpOverIpc: uri=oappend-(Ljava/lang/String;)Ljava/lang/StringBuilder; qr ksjava/lang/Stringu exception: w-(Ljava/lang/Object;)Ljava/lang/StringBuilder; qy kz kEandroid/util/Log}e'(Ljava/lang/String;Ljava/lang/String;)I  ~obtain+(Landroid/os/Handler;I)Landroid/os/Message; #replyMessage.dataresponseputRawHttpResponseF(Landroid/os/Bundle;Ljava/lang/String;Lrawhttp/core/RawHttpResponse;)V 6replyToLandroid/os/Messenger; #android/os/Messengersend  4HttpOverIpc: could not send ReplyMessage to remote: printStackTrace l incomingRequestLrawhttp/core/RawHttpRequest;M$i$a$-also-AbstractHttpOverIpcServer$IncomingHandler$handleMessage$response$1IitLrawhttp/core/RawHttpResponse;Ljava/lang/Exception;Landroid/os/RemoteException; requestUriLjava/lang/Object; replyMessageLandroid/os/Message;Lkotlin/Metadata;mvkxi0d1U       ‚20B 0¢J020H¨ d2Landroid/os/Handler;server_releaseIncomingHandlerAbstractHttpOverIpcServer.ktCodeLineNumberTableLocalVariableTable Signature$RuntimeInvisibleParameterAnnotations StackMapTable InnerClasses SourceFileRuntimeVisibleAnnotations0W, *+*,! #!   +!M+'Y),.*4::@FM*J:Z:*4LRTYV\_ag::6ikYnpt,vtxt{|W:N*:'Y,-,-+$:ikYnt{|W5868#vVc1#vc# R%& '!(*)8*:+F.d/0.&2356789;f !d'a*:UQF  0I[IIIII[s[ sss sssss ssPK!!RLiLcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$rawHttp$2.class47Fcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$rawHttp$2TLkotlin/jvm/internal/Lambda;Lkotlin/jvm/functions/Function0;kotlin/jvm/internal/Lambdakotlin/jvm/functions/Function0()V(I)V   thisHLcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$rawHttp$2;invoke()Lrawhttp/core/RawHttp;#Lorg/jetbrains/annotations/NotNull;rawhttp/core/RawHttp  ()Ljava/lang/Object;   INSTANCE  Lkotlin/Metadata;mvkxi0d1  0H ¢d2 Lrawhttp/core/RawHttp;()V  Fcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$rawHttp$2 INSTANCEHLcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$rawHttp$2; kotlin/jvm/functions/Function0 kotlin/LazyKtlazy/(Lkotlin/jvm/functions/Function0;)Lkotlin/Lazy;  rawHttp$delegate Lkotlin/Lazy;  android/os/HandlerThreadHttpServiceHandler(Ljava/lang/String;)V   isAlive()Z "# $start & ' handlerThreadLandroid/os/HandlerThread; )* +android/os/Messenger-Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$IncomingHandler/ getLooper()Landroid/os/Looper; 12 3handlerThread.looper5kotlin/jvm/internal/Intrinsics7checkNotNullExpressionValue'(Ljava/lang/Object;Ljava/lang/String;)V 9: 8;T(Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer;Landroid/os/Looper;)V = 0>android/os/Handler@(Landroid/os/Handler;)V B .C mMessengerLandroid/os/Messenger; EF G4$i$a$-also-AbstractHttpOverIpcServer$handlerThread$1Iitthis>Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer; getRawHttp()Lrawhttp/core/RawHttp; kotlin/LazyPgetValue()Ljava/lang/Object; RS QTrawhttp/core/RawHttpV handleRequest=(Lrawhttp/core/RawHttpRequest;)Lrawhttp/core/RawHttpResponse;@(Lrawhttp/core/RawHttpRequest;)Lrawhttp/core/RawHttpResponse<*>;#Lorg/jetbrains/annotations/NotNull;onBind.(Landroid/content/Intent;)Landroid/os/IBinder;$Lorg/jetbrains/annotations/Nullable; getBinder()Landroid/os/IBinder; _` .amMessenger.bindercintentLandroid/content/Intent; onDestroy g hquit j# kaccess$getRawHttpV(Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer;)Lrawhttp/core/RawHttp; NO o$thisLkotlin/Metadata;mvkxi0d1@             &20:B¢J 020H&J020HJ0HR0X‚¢ R0X‚¢ R08BX‚„¢     ¨d2Landroid/app/Service;rawHttpLrawhttp/core/RawHttp;Lrawhttp/core/RawHttpResponse;requestLrawhttp/core/RawHttpRequest;Landroid/os/IBinder;IncomingHandlerserver_releaseAbstractHttpOverIpcServer.ktRuntimeInvisibleAnnotationsCode StackMapTableLineNumberTableLocalVariableTable Signature$RuntimeInvisibleParameterAnnotations InnerClasses SourceFileRuntimeVisibleAnnotations![)*[EF[ X***Y!L+M:>,%,(+,*.Y0Y**,4Y6<?ADH-* ")-014>W " IJ K*XLMNO=*L+UW  LMXYZ[[\]B*HbYd<FLMef[^g? *i*,lWJL M  LMmn/*p qM0 vrs[ItIuItvItwIxy[sz{[sMs|ss)s*sEsFs}s~sNsOsssXssss\ssesfsgsssPK!!ݐ >com/ustadmobile/httpoveripc/server/EchoHttpOverIpcServer.class48com/ustadmobile/httpoveripc/server/EchoHttpOverIpcServer()V  rawhttp/core/RawHttp rawHttpLrawhttp/core/RawHttp; this:Lcom/ustadmobile/httpoveripc/server/EchoHttpOverIpcServer; handleRequest=(Lrawhttp/core/RawHttpRequest;)Lrawhttp/core/RawHttpResponse;@(Lrawhttp/core/RawHttpRequest;)Lrawhttp/core/RawHttpResponse<*>;#Lorg/jetbrains/annotations/NotNull;requestkotlin/jvm/internal/IntrinsicscheckNotNullParameter'(Ljava/lang/Object;Ljava/lang/String;)V  "java/time/format/DateTimeFormatterRFC_1123_DATE_TIME$Ljava/time/format/DateTimeFormatter; ! "java/time/ZoneOffset$UTCLjava/time/ZoneOffset; &' %(java/time/ZoneId*java/time/ZonedDateTime,now-(Ljava/time/ZoneId;)Ljava/time/ZonedDateTime; ./ -0#java/time/temporal/TemporalAccessor2format9(Ljava/time/temporal/TemporalAccessor;)Ljava/lang/String; 45 6rawhttp/core/RawHttpRequest8 getHeaders()Lrawhttp/core/RawHttpHeaders; :; 9<content-length>rawhttp/core/RawHttpHeaders@get$(Ljava/lang/String;)Ljava/util/List; BC AD kotlin/collections/CollectionsKtF firstOrNull$(Ljava/util/List;)Ljava/lang/Object; HI GJjava/lang/StringLjava/lang/LongN parseLong(Ljava/lang/String;)J PQ ORvalueOf(J)Ljava/lang/Long; TU OVgetBody()Ljava/util/Optional; XY 9Zjava/util/Optional\()Ljava/lang/Object; B^ ]_rawhttp/core/body/BodyReaderakotlin/text/CharsetscUTF_8Ljava/nio/charset/Charset; ef dgdecodeBodyToString.(Ljava/nio/charset/Charset;)Ljava/lang/String; ij bkmjava/lang/StringBuildero pgetUri()Ljava/net/URI; rs 9t java/net/URIvtoString()Ljava/lang/String; xy wzappend-(Ljava/lang/String;)Ljava/lang/StringBuilder; |} p~ pz;HTTP/1.1 200 OK Content-Type: plain/text Content-Length: length()I M(I)Ljava/lang/StringBuilder; | p Server: RawHTTP Date:   parseResponse2(Ljava/lang/String;)Lrawhttp/core/RawHttpResponse; responsecheckNotNullExpressionValue   dateStringLjava/lang/String;bodyContentLenLjava/lang/Long; requestBodybodyLrawhttp/core/RawHttpResponse;Lrawhttp/core/RawHttpRequest;java/lang/ObjectLkotlin/Metadata;mvkxi0d1`       20B¢J020HR0X‚¢ ¨ d2>Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer;server_releaseEchoHttpOverIpcServer.ktRuntimeInvisibleAnnotationsCodeLineNumberTableLocalVariableTable StackMapTable Signature$RuntimeInvisibleParameterAnnotations SourceFileRuntimeVisibleAnnotations1 B** Y    +#)+137M+=?EYKMY SWWN-+[`bhln:pYq+u{:*pYq,:#99MAOOAMZ9<@SUWrv!$H<sWXr= I[IIIII[s[ ssss s sssssPK!!ўjjHcom/ustadmobile/httpoveripc/server/ThrowExceptionHttpOverIpcServer.class45Bcom/ustadmobile/httpoveripc/server/ThrowExceptionHttpOverIpcServer()V  thisDLcom/ustadmobile/httpoveripc/server/ThrowExceptionHttpOverIpcServer; handleRequest=(Lrawhttp/core/RawHttpRequest;)Lrawhttp/core/RawHttpResponse;@(Lrawhttp/core/RawHttpRequest;)Lrawhttp/core/RawHttpResponse<*>;#Lorg/jetbrains/annotations/NotNull;requestkotlin/jvm/internal/IntrinsicscheckNotNullParameter'(Ljava/lang/Object;Ljava/lang/String;)V  java/io/IOExceptionFail!(Ljava/lang/String;)V  Lrawhttp/core/RawHttpRequest;Lkotlin/Metadata;mvkxi0d1F      20B¢J020H¨d2>Lcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer;Lrawhttp/core/RawHttpResponse;server_release"ThrowExceptionHttpOverIpcServer.ktCodeLineNumberTableLocalVariableTable SignatureRuntimeInvisibleAnnotations$RuntimeInvisibleParameterAnnotations SourceFileRuntimeVisibleAnnotations1-/*. /   -D+Y. / 0 123,4C [I!I"I!#I!$I%&[s'([s s)ss s*sss+PK!!d:4com/ustadmobile/httpoveripc/server/BuildConfig.class4  java/lang/Object()V.com/ustadmobile/httpoveripc/server/BuildConfigDEBUGZ ConstantValueLIBRARY_PACKAGE_NAMELjava/lang/String;"com.ustadmobile.httpoveripc.server BUILD_TYPEreleaseCodeLineNumberTableLocalVariableTablethis0Lcom/ustadmobile/httpoveripc/server/BuildConfig; SourceFileBuildConfig.java1      /* PK!! AMETA-INF/PK!!A'com/PK!!AIcom/ustadmobile/PK!!Awcom/ustadmobile/httpoveripc/PK!!#Acom/ustadmobile/httpoveripc/server/PK!!:!P%META-INF/server_release.kotlin_modulePK!!߾mPPRMcom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$IncomingHandler.classPK!!RLiL com/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer$rawHttp$2.classPK!!  Bscom/ustadmobile/httpoveripc/server/AbstractHttpOverIpcServer.classPK!!ݐ >z%com/ustadmobile/httpoveripc/server/EchoHttpOverIpcServer.classPK!!ўjjH3com/ustadmobile/httpoveripc/server/ThrowExceptionHttpOverIpcServer.classPK!!d:4}9com/ustadmobile/httpoveripc/server/BuildConfig.classPK C;