Harvesting For Frameworks

time to read 3 min | 453 words

It is getting to that point in again where I find that I am writing the same code in several projects, and I get tired of that by the third repetition. It is time to harvest those projects for reusable pieces. At the moment I am planning on making this a part of Rhino Commons (what can I say, I like my Rhinos :-) ).

Currently I am planning the following additions:

  • Extentions to Windsor that includes:
    • Configuration Objects
    • Builtin NHibernate Integartaion and Automatic Transaction Management
    • Maybe: Add dependency cycle tracking (if it can be done externally).
  • IRepository<T> interface as well as a static class
  • NHibernate Repostiory<T> implementation
  • Repository<T> access point which will forward all calls to a repository instance that it gets from Windsor
  • Persistable wrappers around NHibernate's Criteria API that will also support operator overloading
  • Utility mehtods like ToArray<T>(IList), ToBindingList<T>(IList), etc.
  • With.Transaction( delegate { } )
  • More validations

If you can think of anything else that I blog about recently that you think would be nice to have there, drop me a line.

This also means that currently I'm taking a hard dependency on the following for all my projects:

  • NHibernate
  • Castle Windsor
  • log4net