package com.l7tech.server.policy.assertion;

import com.l7tech.gateway.common.audit.Audit;
import com.l7tech.policy.variable.Syntax;
import com.l7tech.server.policy.variable.ExpandVariables;
import com.l7tech.util.Either;
import com.l7tech.util.NameValuePair;
import java.util.Map;
import java.util.regex.Pattern;

final class ad {
   final Either<Pattern, String> a;
   final String b;

   private ad(NameValuePair var1) {
      this.a = a((String)var1.left);
      this.b = (String)var1.right;
   }

   private static Either<Pattern, String> a(String var0) {
      return Syntax.getReferencedNames(var0).length > 0 ? Either.right(var0) : Either.left(Pattern.compile(var0, 40));
   }

   private Pattern a(Map<String, ?> var1, Audit var2) {
      if (this.a.isLeft()) {
         return (Pattern)this.a.left();
      }

      String var3 = (String)this.a.right();
      String var4 = ExpandVariables.process(var3, var1, var2, new ae(this));
      return Pattern.compile(var4, 40);
   }
}
