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

import com.l7tech.external.assertions.gatewaygraphql.server.data.ActiveConnectorDTO;
import com.l7tech.external.assertions.gatewaygraphql.server.data.EntityProperty;
import com.l7tech.gateway.common.transport.SsgActiveConnector;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;

public class DefaultActiveConnectorHelper implements ActiveConnectorHelper {
   @Override
   public void setProperties(ActiveConnectorDTO.ActiveConnectorInput var1, SsgActiveConnector var2) {
      var1.getProperties().forEach(var1x -> var2.setProperty(var1x.getName(), var1x.getValue()));
   }

   @Override
   public List<EntityProperty> getProperties(SsgActiveConnector var1) {
      return var1.getPropertyNames().stream().map(var1x -> new EntityProperty(var1x, var1.getProperty(var1x))).collect(Collectors.toList());
   }

   @Override
   public void setAdvancedProperties(ActiveConnectorDTO.ActiveConnectorInput var1, SsgActiveConnector var2) {
      var1.getAdvancedProperties().forEach(var1x -> var2.setProperty(var1x.getName(), var1x.getValue()));
   }

   @Override
   public List<EntityProperty> getAdvancedProperties(SsgActiveConnector var1) {
      return Collections.emptyList();
   }

   @Override
   public void setPartialProperties(ActiveConnectorDTO.ActiveConnectorInput var1, SsgActiveConnector var2) {
      var1.getPartialProperties().forEach(var1x -> var2.setProperty(var1x.getName(), var1x.getValue()));
   }

   @Override
   public void setAdvancedPartialProperties(ActiveConnectorDTO.ActiveConnectorInput var1, SsgActiveConnector var2) {
      var1.getPartialAdvancedProperties().forEach(var1x -> var2.setProperty(var1x.getName(), var1x.getValue()));
   }
}
