content: /* Generated by camel build tools - do NOT edit this file! */
  package org.apache.camel.component.openstack.nova;
  
  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 NovaEndpointConfigurer extends PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter {
  
      @Override
      public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) {
          NovaEndpoint target = (NovaEndpoint) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "apiversion":
          case "apiVersion": target.setApiVersion(property(camelContext, java.lang.String.class, value)); return true;
          case "config": target.setConfig(property(camelContext, org.openstack4j.core.transport.Config.class, value)); return true;
          case "domain": target.setDomain(property(camelContext, java.lang.String.class, value)); return true;
          case "lazystartproducer":
          case "lazyStartProducer": target.setLazyStartProducer(property(camelContext, boolean.class, value)); return true;
          case "operation": target.setOperation(property(camelContext, java.lang.String.class, value)); return true;
          case "password": target.setPassword(property(camelContext, java.lang.String.class, value)); return true;
          case "project": target.setProject(property(camelContext, java.lang.String.class, value)); return true;
          case "subsystem": target.setSubsystem(property(camelContext, java.lang.String.class, value)); return true;
          case "username": target.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 "apiversion":
          case "apiVersion": return java.lang.String.class;
          case "config": return org.openstack4j.core.transport.Config.class;
          case "domain": return java.lang.String.class;
          case "lazystartproducer":
          case "lazyStartProducer": return boolean.class;
          case "operation": return java.lang.String.class;
          case "password": return java.lang.String.class;
          case "project": return java.lang.String.class;
          case "subsystem": return java.lang.String.class;
          case "username": return java.lang.String.class;
          default: return null;
          }
      }
  
      @Override
      public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
          NovaEndpoint target = (NovaEndpoint) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "apiversion":
          case "apiVersion": return target.getApiVersion();
          case "config": return target.getConfig();
          case "domain": return target.getDomain();
          case "lazystartproducer":
          case "lazyStartProducer": return target.isLazyStartProducer();
          case "operation": return target.getOperation();
          case "password": return target.getPassword();
          case "project": return target.getProject();
          case "subsystem": return target.getSubsystem();
          case "username": return target.getUsername();
          default: return null;
          }
      }
  }
  
  