The projects in this section deals with infrastructure-type software in comparison to the fuller types of frameworks that Windsor and MonoRail make up.
1. Transaction Management & File Transactions
Clean application of transactionality to methods and objects. Works well together with MonoRail to create transactional actions, but could be used for any of your classes.
The transactions framework follows the same principle as the rest of the castle stack; take only what you need from it and leave the rest for the future or when you come around to reading about how it works. As such you can choose to use everything - the full IoC facility, just the transaction management classes for a medium integration or the individual transaction classes for minimum integration.
2. DictionaryAdapter
The DictionaryAdapter works by examining an interface, and then generating an object with getters and setters around the given dictionary, based on the interface's properties. The dictionary adapter generated IL code, so the penalty of generating a typed dictionary is only taken the first time; subsequent calls are cheap.
3. John Simons: TemplateEngine
Useful for e.g. sending e-mail newsletters. Allows you to write NVelocity code, a very easy language to get started with. Good if you rapidly need an e-mail language or something similar.
4. TODO G. Richard Bellamy: ValidatorComponent
Provides rich application level/single-property validation and a bit business logic level/multi-property/rule-based validation of entities/objects. Useful for validating input from web pages; ties in well with MonoRail and its view engines.
4. Scheduler
The Castle.Components.Scheduler project offers a lightweight and reusable general-purpose scheduling service that integrates well with most .Net applications. It is similar in purpose to the Java Quartz job scheduling framework but its implementation aims to leverage .Net idioms whenever possible.
