blob: 631c84e2363a7e2f0c08f3faa45970bb9b497d22 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.camel.builder.endpoint;
// CHECKSTYLE:OFF
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.apache.camel.Exchange;
import org.apache.camel.Expression;
import org.apache.camel.builder.EndpointProducerBuilder;
import org.apache.camel.builder.endpoint.dsl.*;
import org.apache.camel.support.ExpressionAdapter;
public interface EndpointBuilderFactory extends
AMQPEndpointBuilderFactory,
AS2EndpointBuilderFactory,
ActiveMQEndpointBuilderFactory,
AhcEndpointBuilderFactory,
ApnsEndpointBuilderFactory,
AsteriskEndpointBuilderFactory,
AtmosEndpointBuilderFactory,
AtmosphereWebsocketEndpointBuilderFactory,
AtomEndpointBuilderFactory,
AtomixMapEndpointBuilderFactory,
AtomixMessagingEndpointBuilderFactory,
AtomixMultiMapEndpointBuilderFactory,
AtomixQueueEndpointBuilderFactory,
AtomixSetEndpointBuilderFactory,
AtomixValueEndpointBuilderFactory,
AvroEndpointBuilderFactory,
BeanEndpointBuilderFactory,
BeanValidatorEndpointBuilderFactory,
BeanstalkEndpointBuilderFactory,
BlobServiceEndpointBuilderFactory,
BonitaEndpointBuilderFactory,
BoxEndpointBuilderFactory,
BraintreeEndpointBuilderFactory,
BrowseEndpointBuilderFactory,
CMEndpointBuilderFactory,
CMISEndpointBuilderFactory,
CaffeineCacheEndpointBuilderFactory,
CaffeineLoadCacheEndpointBuilderFactory,
CassandraEndpointBuilderFactory,
ChatScriptEndpointBuilderFactory,
ChunkEndpointBuilderFactory,
CinderEndpointBuilderFactory,
ClassEndpointBuilderFactory,
ClientEndpointBuilderFactory,
CoAPEndpointBuilderFactory,
CometdEndpointBuilderFactory,
ConsulEndpointBuilderFactory,
ControlBusEndpointBuilderFactory,
CordaEndpointBuilderFactory,
CouchDbEndpointBuilderFactory,
CouchbaseEndpointBuilderFactory,
CryptoCmsEndpointBuilderFactory,
CwEndpointBuilderFactory,
CxfEndpointBuilderFactory,
CxfRsEndpointBuilderFactory,
DataFormatEndpointBuilderFactory,
DataSetEndpointBuilderFactory,
DataSetTestEndpointBuilderFactory,
DdbEndpointBuilderFactory,
DdbStreamEndpointBuilderFactory,
DigitalOceanEndpointBuilderFactory,
DigitalSignatureEndpointBuilderFactory,
DirectEndpointBuilderFactory,
DirectVmEndpointBuilderFactory,
DisruptorEndpointBuilderFactory,
DisruptorVmEndpointBuilderFactory,
DnsEndpointBuilderFactory,
DockerEndpointBuilderFactory,
DozerEndpointBuilderFactory,
DrillEndpointBuilderFactory,
DropboxEndpointBuilderFactory,
EC2EndpointBuilderFactory,
ECSEndpointBuilderFactory,
EKSEndpointBuilderFactory,
EhcacheEndpointBuilderFactory,
ElasticsearchEndpointBuilderFactory,
ElsqlEndpointBuilderFactory,
EtcdEndpointBuilderFactory,
EventAdminEndpointBuilderFactory,
EventEndpointBuilderFactory,
ExecEndpointBuilderFactory,
FacebookEndpointBuilderFactory,
FhirEndpointBuilderFactory,
FileEndpointBuilderFactory,
FlatpackEndpointBuilderFactory,
FlinkEndpointBuilderFactory,
FopEndpointBuilderFactory,
FreemarkerEndpointBuilderFactory,
FtpEndpointBuilderFactory,
FtpsEndpointBuilderFactory,
GangliaEndpointBuilderFactory,
GeoCoderEndpointBuilderFactory,
GitEndpointBuilderFactory,
GitHubEndpointBuilderFactory,
GlanceEndpointBuilderFactory,
GoogleBigQueryEndpointBuilderFactory,
GoogleBigQuerySQLEndpointBuilderFactory,
GoogleCalendarEndpointBuilderFactory,
GoogleCalendarStreamEndpointBuilderFactory,
GoogleDriveEndpointBuilderFactory,
GoogleMailEndpointBuilderFactory,
GoogleMailStreamEndpointBuilderFactory,
GooglePubsubEndpointBuilderFactory,
GoogleSheetsEndpointBuilderFactory,
GoogleSheetsStreamEndpointBuilderFactory,
GoraEndpointBuilderFactory,
GrapeEndpointBuilderFactory,
GridFsEndpointBuilderFactory,
GrpcEndpointBuilderFactory,
GuavaEventBusEndpointBuilderFactory,
HBaseEndpointBuilderFactory,
HazelcastAtomicnumberEndpointBuilderFactory,
HazelcastInstanceEndpointBuilderFactory,
HazelcastListEndpointBuilderFactory,
HazelcastMapEndpointBuilderFactory,
HazelcastMultimapEndpointBuilderFactory,
HazelcastQueueEndpointBuilderFactory,
HazelcastReplicatedmapEndpointBuilderFactory,
HazelcastRingbufferEndpointBuilderFactory,
HazelcastSedaEndpointBuilderFactory,
HazelcastSetEndpointBuilderFactory,
HazelcastTopicEndpointBuilderFactory,
HdfsEndpointBuilderFactory,
HipchatEndpointBuilderFactory,
HttpEndpointBuilderFactory,
IAMEndpointBuilderFactory,
IOTAEndpointBuilderFactory,
IPFSEndpointBuilderFactory,
IgniteCacheEndpointBuilderFactory,
IgniteComputeEndpointBuilderFactory,
IgniteEventsEndpointBuilderFactory,
IgniteIdGenEndpointBuilderFactory,
IgniteMessagingEndpointBuilderFactory,
IgniteQueueEndpointBuilderFactory,
IgniteSetEndpointBuilderFactory,
InfinispanEndpointBuilderFactory,
InfluxDbEndpointBuilderFactory,
IrcEndpointBuilderFactory,
IronMQEndpointBuilderFactory,
JBPMEndpointBuilderFactory,
JCacheEndpointBuilderFactory,
JGroupsEndpointBuilderFactory,
JGroupsRaftEndpointBuilderFactory,
JMXEndpointBuilderFactory,
JSR356WebSocketEndpointBuilderFactory,
JcloudsEndpointBuilderFactory,
JcrEndpointBuilderFactory,
JdbcEndpointBuilderFactory,
JettyHttpEndpointBuilder9Factory,
JingEndpointBuilderFactory,
JiraEndpointBuilderFactory,
JmsEndpointBuilderFactory,
JoltEndpointBuilderFactory,
JooqEndpointBuilderFactory,
JpaEndpointBuilderFactory,
JsonValidatorEndpointBuilderFactory,
Jt400EndpointBuilderFactory,
KMSEndpointBuilderFactory,
KafkaEndpointBuilderFactory,
KeystoneEndpointBuilderFactory,
KinesisEndpointBuilderFactory,
KinesisFirehoseEndpointBuilderFactory,
KubernetesConfigMapsEndpointBuilderFactory,
KubernetesDeploymentsEndpointBuilderFactory,
KubernetesHPAEndpointBuilderFactory,
KubernetesJobEndpointBuilderFactory,
KubernetesNamespacesEndpointBuilderFactory,
KubernetesNodesEndpointBuilderFactory,
KubernetesPersistentVolumesClaimsEndpointBuilderFactory,
KubernetesPersistentVolumesEndpointBuilderFactory,
KubernetesPodsEndpointBuilderFactory,
KubernetesReplicationControllersEndpointBuilderFactory,
KubernetesResourcesQuotaEndpointBuilderFactory,
KubernetesSecretsEndpointBuilderFactory,
KubernetesServiceAccountsEndpointBuilderFactory,
KubernetesServicesEndpointBuilderFactory,
LambdaEndpointBuilderFactory,
LanguageEndpointBuilderFactory,
LdapEndpointBuilderFactory,
LdifEndpointBuilderFactory,
LogEndpointBuilderFactory,
LuceneEndpointBuilderFactory,
LumberjackEndpointBuilderFactory,
MQEndpointBuilderFactory,
MSKEndpointBuilderFactory,
MailEndpointBuilderFactory,
MasterEndpointBuilderFactory,
MetricsEndpointBuilderFactory,
MicrometerEndpointBuilderFactory,
MiloClientEndpointBuilderFactory,
MiloServerEndpointBuilderFactory,
MinaEndpointBuilderFactory,
MllpEndpointBuilderFactory,
MockEndpointBuilderFactory,
MongoDbEndpointBuilderFactory,
MsvEndpointBuilderFactory,
MustacheEndpointBuilderFactory,
MvelEndpointBuilderFactory,
MyBatisBeanEndpointBuilderFactory,
MyBatisEndpointBuilderFactory,
NagiosEndpointBuilderFactory,
NatsEndpointBuilderFactory,
NetWeaverEndpointBuilderFactory,
NettyEndpointBuilderFactory,
NettyHttpEndpointBuilderFactory,
NeutronEndpointBuilderFactory,
NovaEndpointBuilderFactory,
NsqEndpointBuilderFactory,
Olingo2EndpointBuilderFactory,
Olingo4EndpointBuilderFactory,
OpenshiftBuildConfigsEndpointBuilderFactory,
OpenshiftBuildsEndpointBuilderFactory,
OptaPlannerEndpointBuilderFactory,
PahoEndpointBuilderFactory,
PaxLoggingEndpointBuilderFactory,
PdfEndpointBuilderFactory,
PgEventEndpointBuilderFactory,
PrinterEndpointBuilderFactory,
PubNubEndpointBuilderFactory,
PulsarEndpointBuilderFactory,
QuartzEndpointBuilderFactory,
QueueServiceEndpointBuilderFactory,
QuickfixjEndpointBuilderFactory,
RabbitMQEndpointBuilderFactory,
ReactiveStreamsEndpointBuilderFactory,
RedisEndpointBuilderFactory,
RefEndpointBuilderFactory,
RestApiEndpointBuilderFactory,
RestEndpointBuilderFactory,
RestSwaggerEndpointBuilderFactory,
RssEndpointBuilderFactory,
S3EndpointBuilderFactory,
SWFEndpointBuilderFactory,
SagaEndpointBuilderFactory,
SalesforceEndpointBuilderFactory,
SchedulerEndpointBuilderFactory,
SchematronEndpointBuilderFactory,
ScpEndpointBuilderFactory,
SdbEndpointBuilderFactory,
SedaEndpointBuilderFactory,
ServerEndpointBuilderFactory,
ServiceEndpointBuilderFactory,
ServiceNowEndpointBuilderFactory,
ServletEndpointBuilderFactory,
SesEndpointBuilderFactory,
SftpEndpointBuilderFactory,
SipEndpointBuilderFactory,
Sjms2EndpointBuilderFactory,
SjmsBatchEndpointBuilderFactory,
SjmsEndpointBuilderFactory,
SlackEndpointBuilderFactory,
SmppEndpointBuilderFactory,
SnmpEndpointBuilderFactory,
SnsEndpointBuilderFactory,
SolrEndpointBuilderFactory,
SoroushBotEndpointBuilderFactory,
SparkEndpointBuilderFactory,
SplunkEndpointBuilderFactory,
SpringBatchEndpointBuilderFactory,
SpringIntegrationEndpointBuilderFactory,
SpringLdapEndpointBuilderFactory,
SpringWebserviceEndpointBuilderFactory,
SqlEndpointBuilderFactory,
SqlStoredEndpointBuilderFactory,
SqsEndpointBuilderFactory,
SshEndpointBuilderFactory,
StAXEndpointBuilderFactory,
StompEndpointBuilderFactory,
StreamEndpointBuilderFactory,
StringTemplateEndpointBuilderFactory,
StubEndpointBuilderFactory,
SwiftEndpointBuilderFactory,
TelegramEndpointBuilderFactory,
ThriftEndpointBuilderFactory,
TikaEndpointBuilderFactory,
TimerEndpointBuilderFactory,
TwilioEndpointBuilderFactory,
TwitterDirectMessageEndpointBuilderFactory,
TwitterSearchEndpointBuilderFactory,
TwitterTimelineEndpointBuilderFactory,
UndertowEndpointBuilderFactory,
ValidatorEndpointBuilderFactory,
VelocityEndpointBuilderFactory,
VertxEndpointBuilderFactory,
VmEndpointBuilderFactory,
WeatherEndpointBuilderFactory,
Web3jEndpointBuilderFactory,
WebhookEndpointBuilderFactory,
WebsocketEndpointBuilderFactory,
WordpressEndpointBuilderFactory,
WsEndpointBuilderFactory,
XChangeEndpointBuilderFactory,
XQueryEndpointBuilderFactory,
XmlSignatureEndpointBuilderFactory,
XmppEndpointBuilderFactory,
XsltEndpointBuilderFactory,
YammerEndpointBuilderFactory,
ZendeskEndpointBuilderFactory,
ZooKeeperEndpointBuilderFactory,
ZooKeeperMasterEndpointBuilderFactory
{
default Expression endpoints(EndpointProducerBuilder... endpoints) {
return new ExpressionAdapter() {
List<Expression> expressions = Stream.of(endpoints)
.map(EndpointProducerBuilder::expr).collect(Collectors.toList());
@Override
public Object evaluate(Exchange exchange) {
return expressions.stream().map(e -> e.evaluate(exchange, Object.class))
.collect(Collectors.toList());
}
};
}
}