package com.l7tech.server.identity.mapping;

import com.l7tech.identity.Identity;
import com.l7tech.identity.fed.VirtualGroup;
import com.l7tech.identity.mapping.FederatedAttributeMapping;
import com.l7tech.objectmodel.AttributeHeader;

public class FederatedAttributeExtractor extends b<FederatedAttributeMapping> {
   public FederatedAttributeExtractor(FederatedAttributeMapping var1) {
      super(var1);
   }

   @Override
   public Object[] extractValues(Identity var1) {
      Object[] var2 = super.extractValues(var1);
      if (var2 != null && var2.length > 0) {
         return var2;
      }

      if (var1 instanceof VirtualGroup var3) {
         AttributeHeader var4 = this.mapping.getAttributeConfig().getHeader();
         if (var4 == FederatedAttributeMapping.VIRTUAL_SAML_PATTERN) {
            return this.a(var3.getSamlEmailPattern());
         }

         if (var4 == FederatedAttributeMapping.VIRTUAL_X509_PATTERN) {
            return this.a(var3.getX509SubjectDnPattern());
         }
      }

      return this.EMPTY;
   }
}
