public JCRNodeWrapper uploadFile(String name, InputStream is, String contentType) throws RepositoryException {
return getRootNode().uploadFile(name, is, contentType);
}
private JCRNodeWrapper getRootNode() throws RepositoryException {
JCRStoreProvider provider = null;
Map<String, JCRStoreProvider> dynamicMountPoints = getProvider().getSessionFactory().getDynamicMountPoints();
if (!dynamicMountPoints.containsKey(getPath())) {
if (isNodeType("jnt:vfsMountPoint")) {
Map<String, Object> m = new HashMap<String, Object>();
m.put("root",getProperty("j:root").getString());
provider = mount(VFSContentStoreProvider.class, getPath(), getUUID(), m);
}
} else {
provider = dynamicMountPoints.get(getPath());
}
if (provider != null) {
JCRSessionWrapper sessionWrapper = (JCRSessionWrapper) getSession();
return provider.getNodeWrapper(sessionWrapper.getProviderSession(provider).getRootNode(), sessionWrapper);
}
return null;
}