Dashboard > ApacheDS Addons > ... > Developer's Guide > ADS 2.0
ADS 2.0
Added by Emmanuel Lécharny, last edited by Emmanuel Lécharny on Sep 10, 2006  (view change)
Labels: 
(None)


Apache Directory Server 2.0

This page collects all information relative to version 2.0 

Java 5 (6?)

Apache Directory 2.0 will use Java 5. That mean we will substitute many constructions to use new ones :

  • Enum instead of typeEnums
  • Generics
  • Loops
  • Concurrency 

ASN.1 codec

The ASN.1 codec must be rewritten totally. It has more states than necessayr, and it is hand written, which is not good. May be we can draft a very simple ASN.1 compiler which will generate only BER codecs for Ldap.

Regarding the way elements are encoded, we should not include the encoding within the objects, but we must create a special class which will handle the encoding. (this has te be churn a little bit, it's not really clear in my mind right now) 

Some information about the way we encode and decode Ldap Message can be found in  [ASN.1 BER CODEC]

Filter's grammar

Filters (RFC 2254) are parsed using  antlr.The problem is that antlr is not synchronized and is an excellent tool, but is slow. As the filter grammar is really simple, and Hand written grammar could be an option. The second advantage would be that we will have one less dependency.

This is just a personnal opinion that for runtime parser, a hand written one will always be faster than if we use a tool like antlr. For other purpose, like parsing schemas, this would be an insane move.

Message structure

We have currently two different message structures : Twix and Snickers. This is a nonsense (and this is my fault). We must merge both structures to spare a transformation. the Snicker structure is much better and should be used, but we might change some attributes name to stick closer to the Ldap specification.

Informations related to these modifications can be found here : Message structure

LDAP/JDK 1.5 API  

We should create a public LDAP API which could be used by external users, like the one from Netscape. The very same for JNDI, so that it can be imported in Harmony classes.

Backend 

The backend will be improved in this version. We should support JDBC capable database, or BerkeleyDB. The structure will evolve to increase the performances. Transaction support will be added.

All the information related to backend improvment can be found here :  [Backend]

Message structure (ApacheDS Addons)

Site running on a free Atlassian Confluence Open Source Project License granted to Safehaus. Evaluate Confluence today.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.4 Build:#809 Jun 12, 2007) - Bug/feature request - Contact Administrators