package com.l7tech.policy;

import com.l7tech.objectmodel.FindException;
import com.l7tech.objectmodel.HeaderBasedEntityFinder;
import com.l7tech.policy.assertion.Assertion;
import com.l7tech.policy.assertion.UsesEntitiesAtDesignTime;
import com.l7tech.util.Functions.BinaryVoid;
import com.l7tech.util.Functions.UnaryVoid;

class k implements UnaryVoid<Assertion> {
   final HeaderBasedEntityFinder val$entityProvider;
   final BinaryVoid val$errorHandler;
   final FindException[] val$err;

   k(HeaderBasedEntityFinder var1, BinaryVoid var2, FindException[] var3) {
      this.val$entityProvider = var1;
      this.val$errorHandler = var2;
      this.val$err = var3;
   }

   public void call(Assertion var1) {
      if (var1 instanceof UsesEntitiesAtDesignTime var2) {
         try {
            PolicyUtil.provideNeededEntities(var2, this.val$entityProvider, this.val$errorHandler);
         } catch (FindException var4) {
            this.val$err[0] = var4;
         }
      }
   }
}
