/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you 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.
*/
privateboolean excluded(File f, String prefix) { // #68929
String pathAbs = f.getAbsolutePath(); if (!pathAbs.startsWith(prefix)) { thrownew BuildException("Examined file " + f + " should have a path starting with " + prefix, getLocation());
} // Cannot just call matchPath on the pathAbs because a relative pattern will *never* match an absolute path!
String path = pathAbs.substring(prefix.length()); for (String exclude : DirectoryScanner.getDefaultExcludes()) { if (SelectorUtils.matchPath(exclude.replace('/', File.separatorChar), path)) { returntrue;
}
} returnfalse;
}
privateboolean lookForBrandingJars(File srcDir, File destDir, String srcPrefix, String locale) throws IOException { if (srcDir.getName().endsWith(".jar")) {
packBrandingJar(srcDir, destDir, locale); returntrue;
} else {
String[] kids = srcDir.list(); if (kids == null) { thrownew IOException("Could not list children of " + srcDir);
} boolean used = false; for (int i = 0; i < kids.length; i++) {
File kid = new File(srcDir, kids[i]); if (excluded(kid, srcPrefix)) { continue;
} if (!kid.isDirectory()) {
log("Warning: stray file " + kid + " encountered; ignoring", Project.MSG_WARN); continue;
}
used |= lookForBrandingJars(kid, new File(destDir, kids[i]), srcPrefix, locale);
} if (!used) {
log("Warning: stray directory " + srcDir + " with no brandables encountered; ignoring", Project.MSG_WARN);
} return used;
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.