package com.l7tech.external.assertions.gatewaymanagement.server;

import com.l7tech.gateway.api.FolderMO;
import com.l7tech.gateway.common.security.rbac.OperationType;
import com.l7tech.objectmodel.ObjectModelException;
import com.l7tech.objectmodel.folder.Folder;
import com.l7tech.util.Either;
import java.util.Map;

class aq implements ResourceFactorySupport.TransactionalCallback<Either<ResourceFactory.ResourceNotFoundException, FolderMO>> {
   final Map val$selectorMap;
   final FolderResourceFactory this$0;

   aq(FolderResourceFactory var1, Map var2) {
      this.this$0 = var1;
      this.val$selectorMap = var2;
   }

   public Either<ResourceFactory.ResourceNotFoundException, FolderMO> execute() throws ObjectModelException {
      try {
         Folder var1 = this.this$0.a(this.val$selectorMap);
         EntityManagerResourceFactory.EntityBag var2 = new EntityManagerResourceFactory.EntityBag(var1);
         this.this$0.checkPermitted(OperationType.READ, null, var2.getEntity());
         return Either.right(this.this$0.identify(this.this$0.asResource(var2), (Folder)var2.getEntity()));
      } catch (ResourceFactory.ResourceNotFoundException var3) {
         return Either.left(var3);
      }
   }
}
