I'd like to introduce my work for Borland ECO.
It was inspired by many Java projects such as Beehive and Hibernate.
This project "EcoAccess" is based on Dynamic Proxy from Castle to enable a declarative programming model to Borland ECO.
Obviously, it utilise many ECO services and let you easy to have OCL access methods.
I'd like to thank many articles from ECO section of HowToDoThings.com that guide me on ECO.
The most intesting concept I implemented into EcoAccess is that it provides a pure interface programming model like this:
[AccessEcoSpace(typeof (UserEcoSpace))]
public interface ISystemUserDAO {
[Ocl("SystemUser.allInstances->select(s|s.id = id)->first")]
SystemUser FindById(int id);
}
You can read the first tutorial here.