X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.repo%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Frepo%2FJarFileIndexer.java;h=55019c4d47caa64acee8bd749b871c6347c863e8;hb=26302328d46b44e221ff5425cbad312e5cefa76d;hp=92460b02138e5d46c52d92e12d715eefc2fcebad;hpb=912cf5554a61dc35fb61183da39673656b668467;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/JarFileIndexer.java b/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/JarFileIndexer.java index 92460b021..55019c4d4 100644 --- a/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/JarFileIndexer.java +++ b/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/JarFileIndexer.java @@ -1,3 +1,18 @@ +/* + * Copyright (C) 2007-2012 Mathieu Baudier + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package org.argeo.slc.repo; import java.io.ByteArrayInputStream; @@ -59,8 +74,8 @@ public class JarFileIndexer implements NodeIndexer { jarIn = new JarInputStream(fileBinary.getStream()); Manifest manifest = jarIn.getManifest(); - if(manifest==null){ - log.error(fileNode+" has no MANIFEST"); + if (manifest == null) { + log.error(fileNode + " has no MANIFEST"); return; } bo = new ByteArrayOutputStream(); @@ -93,9 +108,11 @@ public class JarFileIndexer implements NodeIndexer { // OSGi if (attrs.containsKey(new Name(Constants.BUNDLE_SYMBOLICNAME))) { addOsgiMetadata(fileNode, attrs); + JcrUtils.updateLastModified(fileNode); if (log.isTraceEnabled()) log.trace("Indexed OSGi bundle " + fileNode); } else { + JcrUtils.updateLastModified(fileNode); if (log.isTraceEnabled()) log.trace("Indexed JAR file " + fileNode); } @@ -335,9 +352,11 @@ public class JarFileIndexer implements NodeIndexer { boolean in = false; for (char c : str.toCharArray()) { if (c == ',') { - if (!in) { + if (!in) {// new package res.add(curr.toString()); curr = new StringBuffer(""); + } else {// a ',' within " " + curr.append(c); } } else if (c == '\"') { in = !in;