@@ -0,0 +1,1941 @@
+package com.github.aureliano.evtbridge.converter.input;%0A%0Aimport java.util.Arrays;%0A%0Aimport com.github.aureliano.evtbridge.common.helper.StringHelper;%0Aimport com.github.aureliano.evtbridge.converter.IConfigurationConverter;%0Aimport com.github.aureliano.evtbridge.converter.exception.ConfigurationConverterException;%0Aimport com.github.aureliano.evtbridge.core.config.InputConfigTypes;%0Aimport com.github.aureliano.evtbridge.core.register.ApiServiceRegistrator;%0A%0Apublic class InputConverterFactory %7B%0A%0A%09public InputConverterFactory() %7B%0A%09%09super();%0A%09%7D%0A%0A%09public static AbstractInputConverter%3C?%3E createConverter(String type) %7B%0A%09%09if (InputConfigTypes.FILE_INPUT.name().startsWith(StringHelper.toString(type).toUpperCase())) %7B%0A%09%09%09return new FileInputConverter();%0A%09%09%7D else if (InputConfigTypes.FILE_TAILER.name().equalsIgnoreCase(type)) %7B%0A%09%09%09return new FileTailerInputConverter();%0A%09%09%7D else if (InputConfigTypes.EXTERNAL_COMMAND.name().equalsIgnoreCase(type)) %7B%0A%09%09%09return new ExternalCommandInputConverter();%0A%09%09%7D else if (InputConfigTypes.STANDARD_INPUT.name().startsWith(StringHelper.toString(type).toUpperCase())) %7B%0A%09%09%09return new StandardInputConverter();%0A%09%09%7D else if (InputConfigTypes.URL.name().equalsIgnoreCase(type)) %7B%0A%09%09%09return new UrlInputConverter();%0A%09%09%7D else if (InputConfigTypes.JDBC_INPUT.name().startsWith(StringHelper.toString(type).toUpperCase())) %7B%0A%09%09%09return new JdbcInputConverter();%0A%09%09%7D else if (InputConfigTypes.TWITTER_INPUT.name().startsWith(StringHelper.toString(type).toUpperCase())) %7B%0A%09%09%09return new TwitterInputConverter();%0A%09%09%7D else %7B%0A%09%09%09ApiServiceRegistrator service = ApiServiceRegistrator.instance();%0A%09%09%09IConfigurationConverter%3C?%3E converter = service.createConverter(type);%0A%09%09%09%0A%09%09%09if (converter == null) %7B%0A%09%09%09%09throw new ConfigurationConverterException(%22Input config type '%22 + type + %22' not supported. Expected one of: %22 + Arrays.toString(InputConfigTypes.values()));%0A%09%09%09%7D%0A%09%09%09return (AbstractInputConverter%3C?%3E) converter;%0A%09%09%7D%0A%09%7D%0A%7D

Create input converter factory.