Google Summer of Code
Skip to end of metadata
Go to start of metadata

This page is for some raw GSoC ideas offered by the Directory community if students are interested. For more information consult the following pages.

Project Ideas

List of raw ideas before being added to the main GSoC pages on Apache Wiki.

LDAP Persistence Project

Unlike the relational world, LDAP lacks a solid object to entry mapping tool and runtime API to handle seamless persistence. Some tools exist but they twist the LDAP access model while trying to map it to the relational access model.

For starters we would like to explore the possibilities of a new kind of ORM tool uniquely suited towards the LDAP access model. Below are some of the nice to have features for such a tool and API:

  • Generate LDAP schema from POJO/POJI
  • Generate POJO/POJI from existing LDAP schemas
  • Consider LDAP hierarchical namespace along with entry composition as mandated by the schema
  • Use hints for governing generation using Annotations and LDAP schema extensions
  • Full round-trip engineering capabilities going from Java domain model to schema and back
  • Supply adapters for interoperability with existing persistence frameworks like JDO and DAS
  • Apache Directory Studio integration: nice to right click on package and generate schema or right click on schema elements and generate POJO/POJI which a user can just start using.

These are long term objectives and we know the process will take some time beyond a GSoC session. We're hoping to start experimenting and weeding out ideas on the road to establishing a community and Directory subproject around these aims. The tasks for any student interested will be discrete and based on the recommendations of the student. The aim within the GSoC session is to have something that establishes some of these features in part and allows later for their embellishment.

LDAP Shell for Studio and Console

TBA

LDAP UML Modeling Tools for Studio

TBA

Apache Virtual Directory

TBA - may be too involved.

Labels
  • No labels