package com.l7tech.external.assertions.gatewaygraphql.server.data;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.l7tech.external.assertions.gatewaygraphql.server.util.JsonUtil;
import com.l7tech.identity.IdentityProvider;
import org.apache.commons.codec.digest.DigestUtils;

public abstract class IdpEntityDTO<IDP extends IdentityProvider> {
   protected final IDP idp;
   protected String checksum;

   public IdpEntityDTO(IDP var1) {
      this.idp = (IDP)var1;
   }

   public IDP idp() {
      return this.idp;
   }

   public String getGoid() {
      return null;
   }

   public String getChecksum() {
      try {
         if (this.checksum == null) {
            Object var1 = this.createWrapperObject();

            try {
               if (var1 != null) {
                  this.checksum = DigestUtils.shaHex(JsonUtil.DEFAULT.serialize(var1));
               }
            } catch (JsonProcessingException var2) {
               throw a(var2);
            }
         }

         return this.checksum;
      } catch (JsonProcessingException var3) {
         throw var3;
      }
   }

   public abstract Object createWrapperObject();

   private static JsonProcessingException a(JsonProcessingException var0) {
      return var0;
   }
}
