Friday, 21 January 2011
Monday, 25 January 2010
Anatomy of a Service
Friday, 15 January 2010
Learning RoadMap with jEmbedded 0.2
I have added new examples and refactored the existing ones using the new features of the 0.2 version.
In order to learn how to use the framework here it's the roadmap you could follow:
- Start learning the hello world service example, it's easy to follow and it's explained in the wiki. You can learn how to create your custom annotations, etc...
- Then you can learn how to create other services using composition with the included services: jetty example, calculator service, even
odd example etc...
- Once you are comfortable creating services, composing etc you can learn how to organize the services in layers with the layers example.
- When you know how to create a layer you can learn how to use the container in a web environment (using the previous layer example).
- Then you can have a look at the ESB case study that comprises all the previous stuff, services, layers, web environment etc...
I will continue improving the documentation and adding examples, and please feel free to ask everything you need.
Keep in mind that you can create and annotate your services and elements in many ways, I've tried to show this in the examples. There is no just one right way, you can create your custom annotations or not, you can inject fields or methods etc.. depends on the particular case.
Take care
Adolfo
jEmbedded 0.2-RC1 Released
I'm happy to announce that I've just released the 0.2 RC1 version of jEmbedded.
This version is almost a 1.0 version release as it contains most of the features that I had in mind when I started the project but well I have more stuff ready for next versions. In fact this time I pushed the actual design to the limit, so a new re design it's in place.
New features
- Services and components now can be created using annotations only
and just an abstract class (or a regular one).
* Service
@AnnotatedAbstractService, @Start, @Stop, @Compose, @Inject, ....
* Component
@AnnotatedAbstractComponent, @Init, @Dispose, @Inject ...
- Layers now can be created extending a @Repository or using the new @Layer annotation (no need to use a repository anymore to declare a layer). The layer will act as another service.
- A layer and a repository now has Spring as a external IoC provider
by default. Just add the @AnnotationSpringRepository to the
container.
- Services, components and beans annotations now has a new property: propertiesFile, by default it's META-INF/properties-service/properties- service.properties.
defaults.
- @Inject and @Compose can be use without using the ref property if the element is declared in that field or method. You still need to use
the ref property if the referenced element is declared elsewhere.
- The extension (inherintance) of annotations has been improved.
- The proxies created (for services and components) now can be more controlled with the properties interfaces and proxyClass.
- All the services have been refactored to be abstract services (just an abstract class).
- I have added more examples creating and learning road map that I will explain in another post.
- The core has been refactored, improved and legacy code has been removed.
Hope you like it.
Take care
Adolfo