assert session != null;
this.repositoryContext = repositoryContext;
this.session = session;
this.state = new SessionState(this);
this.valueFactory =
new ValueFactoryImpl(session, repositoryContext.getDataStore());
this.itemValidator = new ItemValidator(this);
this.nodeTypeManager = new NodeTypeManagerImpl(this);
this.privilegeManager = new PrivilegeManagerImpl(repositoryContext.getPrivilegeRegistry(), session);
this.nsRegistry = new PermissionAwareNamespaceRegistry();
this.workspace = new WorkspaceImpl(this, workspaceConfig);