content: /* Generated by camel build tools - do NOT edit this file! */
  package org.apache.camel.converter.jaxb;
  
  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.PackageDataFormatMojo")
  @SuppressWarnings("unchecked")
  public class JaxbDataFormatConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
  
      private static final Map<String, Object> ALL_OPTIONS;
      static {
          Map<String, Object> map = new CaseInsensitiveMap();
          map.put("AccessExternalSchemaProtocols", java.lang.String.class);
          map.put("ContentTypeHeader", boolean.class);
          map.put("ContextPath", java.lang.String.class);
          map.put("ContextPathIsClassName", boolean.class);
          map.put("Encoding", java.lang.String.class);
          map.put("FilterNonXmlChars", boolean.class);
          map.put("Fragment", boolean.class);
          map.put("IgnoreJAXBElement", boolean.class);
          map.put("JaxbProviderProperties", java.util.Map.class);
          map.put("MustBeJAXBElement", boolean.class);
          map.put("NamespacePrefix", java.util.Map.class);
          map.put("NoNamespaceSchemaLocation", java.lang.String.class);
          map.put("ObjectFactory", boolean.class);
          map.put("PartClass", java.lang.Class.class);
          map.put("PartNamespace", javax.xml.namespace.QName.class);
          map.put("PrettyPrint", boolean.class);
          map.put("Schema", java.lang.String.class);
          map.put("SchemaLocation", java.lang.String.class);
          map.put("SchemaSeverityLevel", int.class);
          map.put("XmlStreamWriterWrapper", org.apache.camel.converter.jaxb.JaxbXmlStreamWriterWrapper.class);
          ALL_OPTIONS = map;
      }
  
      @Override
      public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) {
          JaxbDataFormat target = (JaxbDataFormat) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "accessexternalschemaprotocols":
          case "accessExternalSchemaProtocols": target.setAccessExternalSchemaProtocols(property(camelContext, java.lang.String.class, value)); return true;
          case "contenttypeheader":
          case "contentTypeHeader": target.setContentTypeHeader(property(camelContext, boolean.class, value)); return true;
          case "contextpath":
          case "contextPath": target.setContextPath(property(camelContext, java.lang.String.class, value)); return true;
          case "contextpathisclassname":
          case "contextPathIsClassName": target.setContextPathIsClassName(property(camelContext, boolean.class, value)); return true;
          case "encoding": target.setEncoding(property(camelContext, java.lang.String.class, value)); return true;
          case "filternonxmlchars":
          case "filterNonXmlChars": target.setFilterNonXmlChars(property(camelContext, boolean.class, value)); return true;
          case "fragment": target.setFragment(property(camelContext, boolean.class, value)); return true;
          case "ignorejaxbelement":
          case "ignoreJAXBElement": target.setIgnoreJAXBElement(property(camelContext, boolean.class, value)); return true;
          case "jaxbproviderproperties":
          case "jaxbProviderProperties": target.setJaxbProviderProperties(property(camelContext, java.util.Map.class, value)); return true;
          case "mustbejaxbelement":
          case "mustBeJAXBElement": target.setMustBeJAXBElement(property(camelContext, boolean.class, value)); return true;
          case "namespaceprefix":
          case "namespacePrefix": target.setNamespacePrefix(property(camelContext, java.util.Map.class, value)); return true;
          case "nonamespaceschemalocation":
          case "noNamespaceSchemaLocation": target.setNoNamespaceSchemaLocation(property(camelContext, java.lang.String.class, value)); return true;
          case "objectfactory":
          case "objectFactory": target.setObjectFactory(property(camelContext, boolean.class, value)); return true;
          case "partclass":
          case "partClass": target.setPartClass(property(camelContext, java.lang.Class.class, value)); return true;
          case "partnamespace":
          case "partNamespace": target.setPartNamespace(property(camelContext, javax.xml.namespace.QName.class, value)); return true;
          case "prettyprint":
          case "prettyPrint": target.setPrettyPrint(property(camelContext, boolean.class, value)); return true;
          case "schema": target.setSchema(property(camelContext, java.lang.String.class, value)); return true;
          case "schemalocation":
          case "schemaLocation": target.setSchemaLocation(property(camelContext, java.lang.String.class, value)); return true;
          case "schemaseveritylevel":
          case "schemaSeverityLevel": target.setSchemaSeverityLevel(property(camelContext, int.class, value)); return true;
          case "xmlstreamwriterwrapper":
          case "xmlStreamWriterWrapper": target.setXmlStreamWriterWrapper(property(camelContext, org.apache.camel.converter.jaxb.JaxbXmlStreamWriterWrapper.class, value)); return true;
          default: return false;
          }
      }
  
      @Override
      public Map<String, Object> getAllOptions(Object target) {
          return ALL_OPTIONS;
      }
  
      @Override
      public Class<?> getOptionType(String name, boolean ignoreCase) {
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "accessexternalschemaprotocols":
          case "accessExternalSchemaProtocols": return java.lang.String.class;
          case "contenttypeheader":
          case "contentTypeHeader": return boolean.class;
          case "contextpath":
          case "contextPath": return java.lang.String.class;
          case "contextpathisclassname":
          case "contextPathIsClassName": return boolean.class;
          case "encoding": return java.lang.String.class;
          case "filternonxmlchars":
          case "filterNonXmlChars": return boolean.class;
          case "fragment": return boolean.class;
          case "ignorejaxbelement":
          case "ignoreJAXBElement": return boolean.class;
          case "jaxbproviderproperties":
          case "jaxbProviderProperties": return java.util.Map.class;
          case "mustbejaxbelement":
          case "mustBeJAXBElement": return boolean.class;
          case "namespaceprefix":
          case "namespacePrefix": return java.util.Map.class;
          case "nonamespaceschemalocation":
          case "noNamespaceSchemaLocation": return java.lang.String.class;
          case "objectfactory":
          case "objectFactory": return boolean.class;
          case "partclass":
          case "partClass": return java.lang.Class.class;
          case "partnamespace":
          case "partNamespace": return javax.xml.namespace.QName.class;
          case "prettyprint":
          case "prettyPrint": return boolean.class;
          case "schema": return java.lang.String.class;
          case "schemalocation":
          case "schemaLocation": return java.lang.String.class;
          case "schemaseveritylevel":
          case "schemaSeverityLevel": return int.class;
          case "xmlstreamwriterwrapper":
          case "xmlStreamWriterWrapper": return org.apache.camel.converter.jaxb.JaxbXmlStreamWriterWrapper.class;
          default: return null;
          }
      }
  
      @Override
      public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
          JaxbDataFormat target = (JaxbDataFormat) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "accessexternalschemaprotocols":
          case "accessExternalSchemaProtocols": return target.getAccessExternalSchemaProtocols();
          case "contenttypeheader":
          case "contentTypeHeader": return target.isContentTypeHeader();
          case "contextpath":
          case "contextPath": return target.getContextPath();
          case "contextpathisclassname":
          case "contextPathIsClassName": return target.isContextPathIsClassName();
          case "encoding": return target.getEncoding();
          case "filternonxmlchars":
          case "filterNonXmlChars": return target.isFilterNonXmlChars();
          case "fragment": return target.isFragment();
          case "ignorejaxbelement":
          case "ignoreJAXBElement": return target.isIgnoreJAXBElement();
          case "jaxbproviderproperties":
          case "jaxbProviderProperties": return target.getJaxbProviderProperties();
          case "mustbejaxbelement":
          case "mustBeJAXBElement": return target.isMustBeJAXBElement();
          case "namespaceprefix":
          case "namespacePrefix": return target.getNamespacePrefix();
          case "nonamespaceschemalocation":
          case "noNamespaceSchemaLocation": return target.getNoNamespaceSchemaLocation();
          case "objectfactory":
          case "objectFactory": return target.isObjectFactory();
          case "partclass":
          case "partClass": return target.getPartClass();
          case "partnamespace":
          case "partNamespace": return target.getPartNamespace();
          case "prettyprint":
          case "prettyPrint": return target.isPrettyPrint();
          case "schema": return target.getSchema();
          case "schemalocation":
          case "schemaLocation": return target.getSchemaLocation();
          case "schemaseveritylevel":
          case "schemaSeverityLevel": return target.getSchemaSeverityLevel();
          case "xmlstreamwriterwrapper":
          case "xmlStreamWriterWrapper": return target.getXmlStreamWriterWrapper();
          default: return null;
          }
      }
  }
  
  