In the current drive towards dynamic self-managing systems, a particular challenge is the development of coherent architectures of context-aware middleware and components. The embedded class of systems brings the additional challenges of resource limitations and difficulty to upgrade deployed code. This paper describes a complete implementation of middleware and component architecture that facilitates flexible run-time configuration via embedding of dynamically replaceable decision logic into software components. An automotive air conditioning system application is described illustrating the approach, using a variety of context sources.