package com.l7tech.server.message;

import com.l7tech.common.mime.ByteArrayStashManager;
import com.l7tech.common.mime.ContentTypeHeader;
import com.l7tech.policy.variable.NoSuchVariableException;
import java.nio.charset.Charset;
import java.nio.charset.UnsupportedCharsetException;

class a extends ByteArrayStashManager {
   final ContentTypeHeader val$contentType;
   final ContextVariableKnob val$cvk;
   final PolicyEnforcementContext val$context;
   final String val$variableName;

   a(ContentTypeHeader var1, ContextVariableKnob var2, PolicyEnforcementContext var3, String var4) {
      this.val$contentType = var1;
      this.val$cvk = var2;
      this.val$context = var3;
      this.val$variableName = var4;
   }

   public void stash(int var1, byte[] var2, int var3, int var4) {
      try {
         super.stash(var1, var2, var3, var4);
         if (var1 != 0) {
            return;
         }
      } catch (UnsupportedCharsetException var10) {
         throw a(var10);
      }

      try {
         Charset var5 = this.val$contentType.getEncoding();
         if (this.val$cvk.getOverrideEncoding() != null) {
            var5 = this.val$cvk.getOverrideEncoding();
         }

         String var6 = new String(var2, var3, var4, var5);

         try {
            if (!var6.equals(this.val$context.getVariable(this.val$variableName))) {
               this.val$context.setVariable(this.val$variableName, var6);
            }
         } catch (UnsupportedCharsetException var7) {
            throw a(var7);
         }
      } catch (UnsupportedCharsetException var8) {
         throw new RuntimeException(var8);
      } catch (NoSuchVariableException var9) {
         throw new RuntimeException(var9);
      }
   }

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