Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Today 6 years ago Apache Camel was Created

DZone's Guide to

Today 6 years ago Apache Camel was Created

· Integration Zone ·
Free Resource

Download Microservices for Java Developers: A hands-on introduction to frameworks and containers. Brought to you in partnership with Red Hat.

On Monday, March 19th 2007, James Strachan did the first commit for what became Apache Camel. The commit log entry is here.

James Strachan founded the Apache Camel project with this first commit 6 years ago

Even in the first commit, today's users of the latest Apache Camel releases can see the structure of the route builder, and the API with the component, endpoint, exchange, producer, consumer, et al.

You can take a look in this unit test from the first commit.

Though here is a teaser with the RouteBuilder from the first commit
RouteBuilder builder = new RouteBuilder() {
  public void configure() {
    from("seda://a").to("seda://b");
  }
};
And the content based router was already included. Though today the headerEquals predicate has been slightly changes to header("foo").isEqualTo("bar") instead.
RouteBuilder builder = new RouteBuilder() {
  public void configure() {
    from("seda://a").choice()
      .when(headerEquals("foo", "bar")).to("seda://b")
      .when(headerEquals("foo", "cheese")).to("seda://c")
      .otherwise().to("seda://d");
    }
};
In summer 2007 Apache Camel 1.0 was released, and that was a very impressive first release, which I previously have blogged about.

Today 6 years later, we have done 13677 commits on trunk (37 different committers), accordingly to the Apache Camel git commit log (git log --oneline | wc -l).

... and yeah we are closing in on the anticipated Apache Camel 2.11 release (likely being GA in next month).


Download Building Reactive Microservices in Java: Asynchronous and Event-Based Application Design. Brought to you in partnership with Red Hat

Topics:

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}