| /* Generated by camel build tools - do NOT edit this file! */ |
| package org.apache.camel.component.twilio; |
| |
| import java.net.URISyntaxException; |
| import java.util.Collections; |
| import java.util.HashMap; |
| import java.util.HashSet; |
| import java.util.Map; |
| import java.util.Set; |
| |
| import org.apache.camel.spi.EndpointUriFactory; |
| |
| /** |
| * Generated by camel build tools - do NOT edit this file! |
| */ |
| public class TwilioEndpointUriFactory extends org.apache.camel.support.component.EndpointUriFactorySupport implements EndpointUriFactory { |
| |
| private static final String BASE = ":apiName/methodName"; |
| |
| private static final Set<String> PROPERTY_NAMES; |
| private static final Set<String> SECRET_PROPERTY_NAMES; |
| private static final Set<String> MULTI_VALUE_PREFIXES; |
| static { |
| Set<String> props = new HashSet<>(66); |
| props.add("apiName"); |
| props.add("applicationSid"); |
| props.add("areaCode"); |
| props.add("backoffErrorThreshold"); |
| props.add("backoffIdleThreshold"); |
| props.add("backoffMultiplier"); |
| props.add("body"); |
| props.add("bridgeErrorHandler"); |
| props.add("callbackUrl"); |
| props.add("city"); |
| props.add("credentialListSid"); |
| props.add("customerName"); |
| props.add("delay"); |
| props.add("domainName"); |
| props.add("endDate"); |
| props.add("exceptionHandler"); |
| props.add("exchangePattern"); |
| props.add("friendlyName"); |
| props.add("from"); |
| props.add("greedy"); |
| props.add("inBody"); |
| props.add("initialDelay"); |
| props.add("ipAccessControlListSid"); |
| props.add("ipAddress"); |
| props.add("isoCountry"); |
| props.add("lazyStartProducer"); |
| props.add("mediaUrl"); |
| props.add("messagingServiceSid"); |
| props.add("methodName"); |
| props.add("password"); |
| props.add("pathAccountSid"); |
| props.add("pathAddOnResultSid"); |
| props.add("pathAddressSid"); |
| props.add("pathCallSid"); |
| props.add("pathConferenceSid"); |
| props.add("pathCountryCode"); |
| props.add("pathCredentialListSid"); |
| props.add("pathDomainSid"); |
| props.add("pathIpAccessControlListSid"); |
| props.add("pathMessageSid"); |
| props.add("pathQueueSid"); |
| props.add("pathRecordingSid"); |
| props.add("pathReferenceSid"); |
| props.add("pathSid"); |
| props.add("phoneNumber"); |
| props.add("pollStrategy"); |
| props.add("postalCode"); |
| props.add("region"); |
| props.add("repeatCount"); |
| props.add("runLoggingLevel"); |
| props.add("scheduledExecutorService"); |
| props.add("scheduler"); |
| props.add("schedulerProperties"); |
| props.add("sendEmptyMessageWhenIdle"); |
| props.add("startDate"); |
| props.add("startScheduler"); |
| props.add("status"); |
| props.add("street"); |
| props.add("timeUnit"); |
| props.add("to"); |
| props.add("triggerValue"); |
| props.add("twiml"); |
| props.add("url"); |
| props.add("usageCategory"); |
| props.add("useFixedDelay"); |
| props.add("username"); |
| PROPERTY_NAMES = Collections.unmodifiableSet(props); |
| SECRET_PROPERTY_NAMES = Collections.emptySet(); |
| Set<String> prefixes = new HashSet<>(1); |
| prefixes.add("scheduler."); |
| MULTI_VALUE_PREFIXES = Collections.unmodifiableSet(prefixes); |
| } |
| |
| @Override |
| public boolean isEnabled(String scheme) { |
| return "twilio".equals(scheme); |
| } |
| |
| @Override |
| public String buildUri(String scheme, Map<String, Object> properties, boolean encode) throws URISyntaxException { |
| String syntax = scheme + BASE; |
| String uri = syntax; |
| |
| Map<String, Object> copy = new HashMap<>(properties); |
| |
| uri = buildPathParameter(syntax, uri, "apiName", null, true, copy); |
| uri = buildPathParameter(syntax, uri, "methodName", null, true, copy); |
| uri = buildQueryParameters(uri, copy, encode); |
| return uri; |
| } |
| |
| @Override |
| public Set<String> propertyNames() { |
| return PROPERTY_NAMES; |
| } |
| |
| @Override |
| public Set<String> secretPropertyNames() { |
| return SECRET_PROPERTY_NAMES; |
| } |
| |
| @Override |
| public Set<String> multiValuePrefixes() { |
| return MULTI_VALUE_PREFIXES; |
| } |
| |
| @Override |
| public boolean isLenientProperties() { |
| return false; |
| } |
| } |
| |