package com.l7tech.common.http;

import com.l7tech.common.io.ByteOrderMarkInputStream;
import com.l7tech.common.mime.ContentTypeHeader;
import com.l7tech.util.IOUtils;
import com.l7tech.util.ResourceUtils;
import java.io.ByteArrayInputStream;
import java.io.IOException;

class f extends GenericHttpResponseParamsImpl implements SimpleHttpClient.SimpleHttpResponse {
   private final byte[] e;

   private f(GenericHttpResponseParams var1, byte[] var2) {
      super(var1);
      this.e = var2 != null ? var2 : new byte[0];
   }

   @Override
   public byte[] getBytes() {
      return this.e;
   }

   @Override
   public String getString() throws IOException {
      StringBuilder var1 = new StringBuilder();
      ContentTypeHeader var2 = this.getContentType();

      try {
         if (var2 != null) {
            var1.append(var2.getEncoding());
            return new String(this.a(this.getBytes(), var1), var1.toString());
         }
      } catch (IOException var3) {
         throw a(var3);
      }

      var1.append(ContentTypeHeader.DEFAULT_HTTP_ENCODING.name());
      return new String(this.a(this.getBytes(), var1), var1.toString());
   }

   private byte[] a(byte[] var1, StringBuilder var2) throws IOException {
      ByteOrderMarkInputStream var4 = null;

      byte[] var3;
      try {
         var4 = new ByteOrderMarkInputStream(new ByteArrayInputStream(var1));
         var3 = IOUtils.slurpStream(var4);

         try {
            if (var4.getEncoding() != null) {
               var2.setLength(0);
               var2.append(var4.getEncoding());
            }
         } catch (IOException var8) {
            throw a(var8);
         }
      } finally {
         ResourceUtils.closeQuietly(var4);
      }

      return var3;
   }

   private static IOException a(IOException var0) {
      return var0;
   }
}
