# Reliance modules

In Microcontainer it's all about dependecies. One of the features we promised is the ability to write your own dependency. As a dependency we mean some condition that must be satisfied in order that a state machine lets a node pass to next state. In our case the nodes are our beans, which we eventually want to install into the Microcontainer's registry.

Almost all component models impose some sort of authentification or authorization. We've added a simple identity module that relies on plain java.security concepts. On top of this we added an extension module where you can define your security requirements via Drools declarative rules. Drools integration is not limited to just security handling, it can be extended to suite any Drools defined rules. More about the subject in the chapters below.

We've also added a jBPM integration to support long lasting state flow definitions. This integration provides a plugable way of notifying state machine nodes that they can move forward to the next state. We'll show a simple human interaction of accepting state change requests to move beans into the next state.