content: /* Generated by camel build tools - do NOT edit this file! */
  package org.apache.camel.component.scp;
  
  import javax.annotation.processing.Generated;
  import java.util.Map;
  
  import org.apache.camel.CamelContext;
  import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
  import org.apache.camel.spi.PropertyConfigurerGetter;
  import org.apache.camel.spi.ConfigurerStrategy;
  import org.apache.camel.spi.GeneratedPropertyConfigurer;
  import org.apache.camel.util.CaseInsensitiveMap;
  import org.apache.camel.support.component.PropertyConfigurerSupport;
  
  /**
   * Generated by camel build tools - do NOT edit this file!
   */
  @Generated("org.apache.camel.maven.packaging.EndpointSchemaGeneratorMojo")
  @SuppressWarnings("unchecked")
  public class ScpEndpointConfigurer extends PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter {
  
      @Override
      public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) {
          ScpEndpoint target = (ScpEndpoint) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "allownullbody":
          case "allowNullBody": target.setAllowNullBody(property(camelContext, boolean.class, value)); return true;
          case "browselimit":
          case "browseLimit": target.setBrowseLimit(property(camelContext, int.class, value)); return true;
          case "checksumfilealgorithm":
          case "checksumFileAlgorithm": target.setChecksumFileAlgorithm(property(camelContext, java.lang.String.class, value)); return true;
          case "chmod": target.getConfiguration().setChmod(property(camelContext, java.lang.String.class, value)); return true;
          case "ciphers": target.getConfiguration().setCiphers(property(camelContext, java.lang.String.class, value)); return true;
          case "connecttimeout":
          case "connectTimeout": target.getConfiguration().setConnectTimeout(property(camelContext, int.class, value)); return true;
          case "disconnect": target.setDisconnect(property(camelContext, boolean.class, value)); return true;
          case "disconnectonbatchcomplete":
          case "disconnectOnBatchComplete": target.setDisconnectOnBatchComplete(property(camelContext, boolean.class, value)); return true;
          case "filename":
          case "fileName": target.setFileName(property(camelContext, java.lang.String.class, value)); return true;
          case "flatten": target.setFlatten(property(camelContext, boolean.class, value)); return true;
          case "jailstartingdirectory":
          case "jailStartingDirectory": target.setJailStartingDirectory(property(camelContext, boolean.class, value)); return true;
          case "knownhostsfile":
          case "knownHostsFile": target.getConfiguration().setKnownHostsFile(property(camelContext, java.lang.String.class, value)); return true;
          case "lazystartproducer":
          case "lazyStartProducer": target.setLazyStartProducer(property(camelContext, boolean.class, value)); return true;
          case "moveexistingfilestrategy":
          case "moveExistingFileStrategy": target.setMoveExistingFileStrategy(property(camelContext, org.apache.camel.component.file.strategy.FileMoveExistingStrategy.class, value)); return true;
          case "password": target.getConfiguration().setPassword(property(camelContext, java.lang.String.class, value)); return true;
          case "preferredauthentications":
          case "preferredAuthentications": target.getConfiguration().setPreferredAuthentications(property(camelContext, java.lang.String.class, value)); return true;
          case "privatekeybytes":
          case "privateKeyBytes": target.getConfiguration().setPrivateKeyBytes(property(camelContext, byte[].class, value)); return true;
          case "privatekeyfile":
          case "privateKeyFile": target.getConfiguration().setPrivateKeyFile(property(camelContext, java.lang.String.class, value)); return true;
          case "privatekeyfilepassphrase":
          case "privateKeyFilePassphrase": target.getConfiguration().setPrivateKeyFilePassphrase(property(camelContext, java.lang.String.class, value)); return true;
          case "sotimeout":
          case "soTimeout": target.getConfiguration().setSoTimeout(property(camelContext, int.class, value)); return true;
          case "stricthostkeychecking":
          case "strictHostKeyChecking": target.getConfiguration().setStrictHostKeyChecking(property(camelContext, java.lang.String.class, value)); return true;
          case "timeout": target.getConfiguration().setTimeout(property(camelContext, int.class, value)); return true;
          case "useuserknownhostsfile":
          case "useUserKnownHostsFile": target.getConfiguration().setUseUserKnownHostsFile(property(camelContext, boolean.class, value)); return true;
          case "username": target.getConfiguration().setUsername(property(camelContext, java.lang.String.class, value)); return true;
          default: return false;
          }
      }
  
      @Override
      public Class<?> getOptionType(String name, boolean ignoreCase) {
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "allownullbody":
          case "allowNullBody": return boolean.class;
          case "browselimit":
          case "browseLimit": return int.class;
          case "checksumfilealgorithm":
          case "checksumFileAlgorithm": return java.lang.String.class;
          case "chmod": return java.lang.String.class;
          case "ciphers": return java.lang.String.class;
          case "connecttimeout":
          case "connectTimeout": return int.class;
          case "disconnect": return boolean.class;
          case "disconnectonbatchcomplete":
          case "disconnectOnBatchComplete": return boolean.class;
          case "filename":
          case "fileName": return java.lang.String.class;
          case "flatten": return boolean.class;
          case "jailstartingdirectory":
          case "jailStartingDirectory": return boolean.class;
          case "knownhostsfile":
          case "knownHostsFile": return java.lang.String.class;
          case "lazystartproducer":
          case "lazyStartProducer": return boolean.class;
          case "moveexistingfilestrategy":
          case "moveExistingFileStrategy": return org.apache.camel.component.file.strategy.FileMoveExistingStrategy.class;
          case "password": return java.lang.String.class;
          case "preferredauthentications":
          case "preferredAuthentications": return java.lang.String.class;
          case "privatekeybytes":
          case "privateKeyBytes": return byte[].class;
          case "privatekeyfile":
          case "privateKeyFile": return java.lang.String.class;
          case "privatekeyfilepassphrase":
          case "privateKeyFilePassphrase": return java.lang.String.class;
          case "sotimeout":
          case "soTimeout": return int.class;
          case "stricthostkeychecking":
          case "strictHostKeyChecking": return java.lang.String.class;
          case "timeout": return int.class;
          case "useuserknownhostsfile":
          case "useUserKnownHostsFile": return boolean.class;
          case "username": return java.lang.String.class;
          default: return null;
          }
      }
  
      @Override
      public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
          ScpEndpoint target = (ScpEndpoint) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "allownullbody":
          case "allowNullBody": return target.isAllowNullBody();
          case "browselimit":
          case "browseLimit": return target.getBrowseLimit();
          case "checksumfilealgorithm":
          case "checksumFileAlgorithm": return target.getChecksumFileAlgorithm();
          case "chmod": return target.getConfiguration().getChmod();
          case "ciphers": return target.getConfiguration().getCiphers();
          case "connecttimeout":
          case "connectTimeout": return target.getConfiguration().getConnectTimeout();
          case "disconnect": return target.isDisconnect();
          case "disconnectonbatchcomplete":
          case "disconnectOnBatchComplete": return target.isDisconnectOnBatchComplete();
          case "filename":
          case "fileName": return target.getFileName();
          case "flatten": return target.isFlatten();
          case "jailstartingdirectory":
          case "jailStartingDirectory": return target.isJailStartingDirectory();
          case "knownhostsfile":
          case "knownHostsFile": return target.getConfiguration().getKnownHostsFile();
          case "lazystartproducer":
          case "lazyStartProducer": return target.isLazyStartProducer();
          case "moveexistingfilestrategy":
          case "moveExistingFileStrategy": return target.getMoveExistingFileStrategy();
          case "password": return target.getConfiguration().getPassword();
          case "preferredauthentications":
          case "preferredAuthentications": return target.getConfiguration().getPreferredAuthentications();
          case "privatekeybytes":
          case "privateKeyBytes": return target.getConfiguration().getPrivateKeyBytes();
          case "privatekeyfile":
          case "privateKeyFile": return target.getConfiguration().getPrivateKeyFile();
          case "privatekeyfilepassphrase":
          case "privateKeyFilePassphrase": return target.getConfiguration().getPrivateKeyFilePassphrase();
          case "sotimeout":
          case "soTimeout": return target.getConfiguration().getSoTimeout();
          case "stricthostkeychecking":
          case "strictHostKeyChecking": return target.getConfiguration().getStrictHostKeyChecking();
          case "timeout": return target.getConfiguration().getTimeout();
          case "useuserknownhostsfile":
          case "useUserKnownHostsFile": return target.getConfiguration().isUseUserKnownHostsFile();
          case "username": return target.getConfiguration().getUsername();
          default: return null;
          }
      }
  }
  
  