All Projects → topicusoverheid → kamel

topicusoverheid / kamel

Licence: other
Kotlin DSL for Apache Camel

Programming Languages

kotlin
9241 projects

Labels

Projects that are alternatives of or similar to kamel

camel-extra
Additional components for the Apache Camel integration framework
Stars: ✭ 32 (+113.33%)
Mutual labels:  camel
clj-camel
The library adds a thin idiomatic layer on top of Java Apache Camel
Stars: ✭ 38 (+153.33%)
Mutual labels:  camel
hawtio-integration
Core integration plugins for Hawtio: Apache ActiveMQ, Camel, Karaf, OSGi, and Spring Boot
Stars: ✭ 26 (+73.33%)
Mutual labels:  camel
akka-microservice
Example of a microservice with Scala, Akka, Spray and Camel/ActiveMQ
Stars: ✭ 45 (+200%)
Mutual labels:  camel
further-cdi
🔊 Going further with CDI presentation
Stars: ✭ 28 (+86.67%)
Mutual labels:  camel
camel-k-examples
Apache Camel K Examples
Stars: ✭ 48 (+220%)
Mutual labels:  camel
camel-kafka-connector-examples
Apache Camel Kafka Connector Examples
Stars: ✭ 45 (+200%)
Mutual labels:  camel
camel-cxfrs-example
Camel CXF Rest Example with JSON
Stars: ✭ 31 (+106.67%)
Mutual labels:  camel
modules
Java & REST API's for creating and running integrations
Stars: ✭ 16 (+6.67%)
Mutual labels:  camel
pascalcase
Convert a string to pascal case (upper camel case). Used by more than 8.7 million projects on GitHub! Please follow this library's author: https://github.com/jonschlinkert
Stars: ✭ 35 (+133.33%)
Mutual labels:  camel
camel-lsp-client-vscode
This is a client implementation of the Apache Camel Language Server Protocol for Visual Studio Code
Stars: ✭ 24 (+60%)
Mutual labels:  camel
Camel
Apache Camel is an open source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data.
Stars: ✭ 4,034 (+26793.33%)
Mutual labels:  camel
event-driven-microservices
No description or website provided.
Stars: ✭ 15 (+0%)
Mutual labels:  camel
camel-language-server
The Apache Camel LSP server implementation
Stars: ✭ 31 (+106.67%)
Mutual labels:  camel
camel-karavan
Karavan the Camel Integration Designer
Stars: ✭ 77 (+413.33%)
Mutual labels:  camel
camel-quarkus-examples
Apache Camel Quarkus Examples
Stars: ✭ 37 (+146.67%)
Mutual labels:  camel
camel-bindy-example
camel Bindy Example
Stars: ✭ 13 (-13.33%)
Mutual labels:  camel

Kamel: Kotlin DSL for Apache Camel

Kamel is a library which allows easier definition of routes in Apache Camel using a custom DSL in Kotlin. The DSL is crafted to make working with Camel a breeze. To do so, the library primarily utilizes two very powerful Kotlin features: extensions and higher-order functions. When using Kamel, writing Camel routes feels like using a Camel-specific programming language.

Getting Started

Using Kamel is very easy. All you have to do is add the dependency to your project. This can easily be done using Maven. Add the following dependency to your POM:

<dependency>
  <groupId>nl.topicus.overheid</groupId>
  <artifactId>kamel</artifactId>
  <version>1.0</version>
</dependency>

As Kamel uses extensions on exisiting classes, you do not need to extend a different RouteBuilder class and can start using Kamel in existing RouteBuilders immediately. Find out more about using Kamel in the usage document

If you want to contribute to Kamel, follow the steps below to get a development environment set up.

Prerequisites

The library uses Maven for dependency management, so you'll have to install it. I use SDKMAN! for managing Maven, which makes installation very easy, but install it in any way you like.

Git is used for version management so you'll have to install that as well.

My IDE of choise is IntelliJ IDEA which has very rich Kotlin capabilities, but you can use any IDE you're familiar with.

Installing

First, start by cloning this repository:

git clone [email protected]:topicusoverheid/kamel.git kamel && cd kamel

Note: The above assumes you're using Git over SSH, substitute the repository URL for https://github.com/topicusoverheid/kamel.git to use Git over HTTPS.

After cloning has finished, a good first step is to try and compile the library:

mvn clean compile

Import the project into your IDE of choice and start developing!

Running the tests

Automated tests can be executed using Maven:

mvn test

Maven will execute them anytime you packge the library as well.

Built With

  • Kotlin - Programming language
  • Maven - Dependency Management
  • Camel - Framework for routing messages across various processors from and to endpoints

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

The versioning scheme we use is explained in the Maven documentation. For the versions available, see the tags on this repository.

Authors

See also the full list of contributors for everybody who participated in this project.

License

Copyright (c) 2018 Topicus Overheid
This project is licensed under the Apache 2.0 - see the LICENSE file for details

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].