package com.l7tech.external.assertions.gatewaygraphql.server.resolver.finder;

import com.l7tech.external.assertions.gatewaygraphql.server.data.GlobalPolicyDTO;
import com.l7tech.objectmodel.FindException;
import com.l7tech.policy.Policy;
import com.l7tech.policy.PolicyHeader;
import com.l7tech.policy.PolicyType;
import com.l7tech.server.policy.PolicyManager;
import java.util.ArrayList;
import java.util.Collection;
import java.util.logging.Logger;
import lombok.Generated;

public class GlobalPolicyFinder extends EntityAwareFinder<Policy, GlobalPolicyDTO.GlobalPolicyInput> {
   @Generated
   private static final Logger b = Logger.getLogger(GlobalPolicyFinder.class.getName());
   private final PolicyManager c;

   public GlobalPolicyFinder(PolicyManager var1) {
      this.c = var1;
   }

   @Override
   protected Logger getLogger() {
      return b;
   }

   @Override
   protected Collection<Policy> doFindAll() throws FindException {
      Collection var1 = this.c.findHeadersByType(PolicyType.GLOBAL_FRAGMENT);
      ArrayList var2 = new ArrayList();

      for (PolicyHeader var4 : var1) {
         var2.add((Policy)this.c.findByPrimaryKey(var4.getGoid()));
      }

      return var2;
   }

   protected boolean matches(Policy var1, GlobalPolicyDTO.GlobalPolicyInput var2) {
      return var1.getInternalTag().equals(var2.getTag());
   }
}
