X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=org.argeo.server.jcr%2Fsrc%2Forg%2Fargeo%2Fjackrabbit%2FJackrabbitWrapper.java;h=268ecdb282f8832d5c7f37fcb6ec1e9ff184c327;hb=8260f4470f514ea347ca53f5b4dfc632c4a4de66;hp=53a9ff1e2b4e802a6fddeeb3bc2e9f714daf7cae;hpb=0a63088e055dcd5ff397ce4e98d008c62c84dc98;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.server.jcr/src/org/argeo/jackrabbit/JackrabbitWrapper.java b/org.argeo.server.jcr/src/org/argeo/jackrabbit/JackrabbitWrapper.java index 53a9ff1e2..268ecdb28 100644 --- a/org.argeo.server.jcr/src/org/argeo/jackrabbit/JackrabbitWrapper.java +++ b/org.argeo.server.jcr/src/org/argeo/jackrabbit/JackrabbitWrapper.java @@ -26,9 +26,12 @@ import java.util.List; import java.util.Map; import javax.jcr.Credentials; +import javax.jcr.LoginException; +import javax.jcr.NoSuchWorkspaceException; import javax.jcr.Node; import javax.jcr.NodeIterator; import javax.jcr.Repository; +import javax.jcr.RepositoryException; import javax.jcr.Session; import javax.jcr.nodetype.NodeType; @@ -36,10 +39,11 @@ import org.apache.commons.io.FilenameUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.jackrabbit.api.JackrabbitRepository; import org.apache.jackrabbit.commons.NamespaceHelper; import org.apache.jackrabbit.commons.cnd.CndImporter; -import org.argeo.ArgeoException; import org.argeo.jcr.ArgeoJcrConstants; +import org.argeo.jcr.ArgeoJcrException; import org.argeo.jcr.ArgeoNames; import org.argeo.jcr.ArgeoTypes; import org.argeo.jcr.JcrRepositoryWrapper; @@ -58,8 +62,9 @@ import org.springframework.core.io.ResourceLoader; * Wrapper around a Jackrabbit repository which allows to simplify configuration * and intercept some actions. It exposes itself as a {@link Repository}. */ +@Deprecated public class JackrabbitWrapper extends JcrRepositoryWrapper implements - ResourceLoaderAware { + JackrabbitRepository, ResourceLoaderAware { private final static Log log = LogFactory.getLog(JackrabbitWrapper.class); private final static String DIGEST_ALGORITHM = "MD5"; @@ -128,7 +133,7 @@ public class JackrabbitWrapper extends JcrRepositoryWrapper implements } } catch (Exception e) { JcrUtils.discardQuietly(session); - throw new ArgeoException("Cannot import node type definitions " + throw new ArgeoJcrException("Cannot import node type definitions " + cndFiles, e); } finally { JcrUtils.logoutQuietly(session); @@ -170,8 +175,8 @@ public class JackrabbitWrapper extends JcrRepositoryWrapper implements String oldDigest = JcrUtils.checksumFile(dataModel, DIGEST_ALGORITHM); if (oldDigest.equals(newDigest)) { - if (log.isDebugEnabled()) - log.debug("Data model " + resUrl + if (log.isTraceEnabled()) + log.trace("Data model " + resUrl + " hasn't changed, keeping version " + currentVersion); return; @@ -241,7 +246,7 @@ public class JackrabbitWrapper extends JcrRepositoryWrapper implements + (bundle != null ? ", version " + bundle.getVersion() + ", bundle " + bundle.getSymbolicName() : "")); } catch (Exception e) { - throw new ArgeoException("Cannot process data model " + resUrl, e); + throw new ArgeoJcrException("Cannot process data model " + resUrl, e); } finally { IOUtils.closeQuietly(reader); } @@ -285,21 +290,34 @@ public class JackrabbitWrapper extends JcrRepositoryWrapper implements in = res.getInputStream(); url = res.getURL(); } else { - throw new ArgeoException("No " + resUrl + " in the classpath," + throw new ArgeoJcrException("No " + resUrl + " in the classpath," + " make sure the containing" + " package is visible."); } return IOUtils.toByteArray(in); } catch (Exception e) { - throw new ArgeoException("Cannot read CND from " + resUrl, e); + throw new ArgeoJcrException("Cannot read CND from " + resUrl, e); } finally { IOUtils.closeQuietly(in); } } /* - * REPOSITORY INTERCEPTOR + * JACKRABBIT REPOSITORY IMPLEMENTATION */ + @Override + public Session login(Credentials credentials, String workspaceName, + Map attributes) throws LoginException, + NoSuchWorkspaceException, RepositoryException { + // TODO Auto-generated method stub + return null; + } + + @Override + public void shutdown() { + // TODO Auto-generated method stub + + } /* * UTILITIES @@ -313,8 +331,8 @@ public class JackrabbitWrapper extends JcrRepositoryWrapper implements resUrl = resUrl.substring(1); String pkg = resUrl.substring(0, resUrl.lastIndexOf('/')).replace('/', '.'); - ServiceReference paSr = bundleContext - .getServiceReference(PackageAdmin.class.getName()); + ServiceReference paSr = bundleContext + .getServiceReference(PackageAdmin.class); PackageAdmin packageAdmin = (PackageAdmin) bundleContext .getService(paSr); @@ -323,7 +341,7 @@ public class JackrabbitWrapper extends JcrRepositoryWrapper implements ExportedPackage[] exportedPackages = packageAdmin .getExportedPackages(pkg); if (exportedPackages == null) - throw new ArgeoException("No exported package found for " + pkg); + throw new ArgeoJcrException("No exported package found for " + pkg); for (ExportedPackage ep : exportedPackages) { for (Bundle b : ep.getImportingBundles()) { if (b.getBundleId() == bundleContext.getBundle().getBundleId()) { @@ -339,7 +357,7 @@ public class JackrabbitWrapper extends JcrRepositoryWrapper implements } else { // assume this is in the same bundle exportingBundle = bundleContext.getBundle(); - // throw new ArgeoException("No OSGi exporting package found for " + // throw new ArgeoJcrException("No OSGi exporting package found for " // + resUrl); } return exportingBundle;