class ScopeProviderContainer implements IScopeProviderContainer {

    public Object createScope(final Object params)
            throws ScopeProviderException {
        try {
            IScope newScope = factory.createScope(params);
            for (IAction<IScope> handler : handlerStorage) {
                handler.execute(newScope);
            }
            Object uuid = UUID.randomUUID();
            scopeStorage.put(uuid, newScope);

            return uuid;
        } catch (Throwable e) {
            throw new ScopeProviderException("Failed to create instance of IScope.", e);
        }
    }

    public  ScopeProviderContainer(final IScopeFactory factory);

}