class Container implements IContainer {

    @Override
    public void register(final IKey key, final IResolveDependencyStrategy strategy)
            throws RegistrationException {
        try {
            IStrategyContainer strategyContainer = (IStrategyContainer) ScopeProvider.getCurrentScope().getValue(strategyContainerKey);
            strategyContainer.register(key, strategy);
        } catch (Throwable e) {
            throw new RegistrationException("Registration of dependency failed for key " + key, e);
        }
    }

    public  Container();

}