forked from apache/camel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ServiceBusEndpointUriFactory.java
100 lines (86 loc) · 3.22 KB
/
ServiceBusEndpointUriFactory.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/* Generated by camel build tools - do NOT edit this file! */
package org.apache.camel.component.azure.servicebus;
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 ServiceBusEndpointUriFactory extends org.apache.camel.support.component.EndpointUriFactorySupport implements EndpointUriFactory {
private static final String BASE = ":topicOrQueueName";
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<>(30);
props.add("amqpRetryOptions");
props.add("amqpTransportType");
props.add("binary");
props.add("bridgeErrorHandler");
props.add("clientOptions");
props.add("connectionString");
props.add("consumerOperation");
props.add("credentialType");
props.add("disableAutoComplete");
props.add("exceptionHandler");
props.add("exchangePattern");
props.add("fullyQualifiedNamespace");
props.add("headerFilterStrategy");
props.add("lazyStartProducer");
props.add("maxAutoLockRenewDuration");
props.add("peekNumMaxMessages");
props.add("prefetchCount");
props.add("producerOperation");
props.add("proxyOptions");
props.add("receiverAsyncClient");
props.add("reconnectDelay");
props.add("scheduledEnqueueTime");
props.add("senderAsyncClient");
props.add("serviceBusReceiveMode");
props.add("serviceBusTransactionContext");
props.add("serviceBusType");
props.add("subQueue");
props.add("subscriptionName");
props.add("tokenCredential");
props.add("topicOrQueueName");
PROPERTY_NAMES = Collections.unmodifiableSet(props);
Set<String> secretProps = new HashSet<>(2);
secretProps.add("connectionString");
secretProps.add("tokenCredential");
SECRET_PROPERTY_NAMES = Collections.unmodifiableSet(secretProps);
MULTI_VALUE_PREFIXES = Collections.emptySet();
}
@Override
public boolean isEnabled(String scheme) {
return "azure-servicebus".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, "topicOrQueueName", null, false, 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;
}
}