Autumnframework - A C++ dependency injection framework like Spring in java.

  •        0

This project implements Dependency Injection for C++. It supports property setter injection and constructor injection. It is compiled on multiple platform. It supports POCO (Plain Old C++ Object) and has no constraints on the classes you create. It has no incursion to your program code. Autumn framework contains two parts: a dynamic library and a wrapper generator named AutumnGen Autumn use a Small, simple, cross-platform, free and fast C++ XML Parser written by Frank Vanden Berghen to parse config file. 07/26/2007 Ver 0.5.0 released.This version: support multi-inheritance, including direct and indirect inheritance. Indirect inheritance should list base classes in doccomment. add namespace Autumn for Autumn framework. decorate some class member functions with const. other changes, including Issues 1~3 05/21/2007 Ver 0.4.0 released.This version: has AutumnGen, a generator for wrapper files. You needn't now write any code to use Autumn framework, you can generate wrapper files(a head file and a implementation file) from a head file with AutumnGen. bean support init-method, destroy-method and delete-method attributes. change "type" to "bean", remove "type" element in configure file. 03/26/2007 Ver 0.3.0 released.This version: needn't set property's type or constructor argument's type in configuration file. If set, it will replace the type got with wrapper. bean supports factory-method attribute and multiple factory methods, and don't support overloading. erase bean's attributes: initializable and destroyable. Bean supports init and destroy function however, it's decided by definition of bean wrapper support bean reference. unite IBasicType and ICombinedType into IAutumnType. 03/13/2007 Ver 0.2.0 released.This version supports creating bean using 'instance factory' and 'static factory method' patterns. You can find samples in test project. 03/05/2007 Ver 0.1.0 released.You can download source code here. A simple install guide is here.The code has been compiled on: WindowsXP with Visual C++ 6.0 Linux Ubuntu 6.06 with GCC 4.0.3 SunOS 5.10 i86pc with Sun C++ 5.8 AIX 5L with XL C V7.0 01/16/2007 Ver 0.1.0 beta for Windows VC6 released.You can download it here. Some docs are here. CppDoc is here. It may be very babyish now, because I don't know Spring well and do this to imitate Spring in a hurry. I will write some docs ASAP. Now, it support: Support property injection and constructor injection.Only two constructors now, one has arguments and one has no argument. The setter function name should be like setXXX where XXX is a property name. You may not obey that rule if you rewrite the file BeanWrapperMacro.h. Support following basic type: char, short, int, long, float, double, char*, string, and some docrated with unsigned. Support class injection. (A class is named as a bean in Autumn like in Spring.) Support customized type using interface IBasicType. Support pointer to above types. Support singleton. Support initialization and destroyation functions. Support property setter overloading. Supoort dependence(it may be not like Spring). Support multiple dynamic libraries and local library(bean is in main process). Support configuration of log file path and level.

http://code.google.com/p/autumnframework

Tags
Implementation
License
Platform

   




Related Projects

Spring - Application Framework


Spring is an Application framework which has Inversion of Control container, Aspect-oriented programming framework, Data access, Transaction management, Model-view-controller for web, Remote access framework (RPC) and lot more. It is well integrated with Toplink, Hibernate, JDO, and iBATIS.

JdonFramework


a Domain Driven Design + CQRS + EventSource java framework

Fast Code Eclipse Plugin


Fast Code Plugin is a free eclipse plugin designed to help write code faster in Java and Php applications. In Java, it has some special features for applications that uses the well known Spring Framework. It helps to generate code snippets based on fields from arbitrary pojo class or class from any package or files in folder, Generates database templates, Spring config files, Boiler plate classes, Junit test code and lote more.

Wallcreeper


Sets your desktop wallpaper based on the time of day, season, or local weather conditions. For example, you can set up the following wallpaper theme combinations: Spring, Summer - Twilight, Autumn - Cloudy day, Winter - Snowy night. Compatible with Windows Vista/7 wallpaper manager, which means you can still see the fading effect when changing the wallpaper.

spring-mvc-showcase - Demonstrates the features of the Spring MVC web framework


Demonstrates the features of the Spring MVC web framework

JUnit - A programmer-oriented testing framework for Java


JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.

Spring Framework


The dominant application framework for Java, Spring solves core enterprise development and runtime problems, offering configuration via Dependency Injection; declarative services via AOP; and packaged enterprise services. Developed by SpringSource.

Spring Rich Client


Java Swing application framework built on the Spring Framework with the goal of simplifying whats required to build professional, enterprise-ready rich client applications.

springside4 - A Spring Framework based, pragmatic style JavaEE application reference architecture.


A Spring Framework based, pragmatic style JavaEE application reference architecture.