diff options
Diffstat (limited to 'config-application-package/src')
2 files changed, 16 insertions, 2 deletions
diff --git a/config-application-package/src/main/java/com/yahoo/config/model/application/AbstractApplicationPackage.java b/config-application-package/src/main/java/com/yahoo/config/model/application/AbstractApplicationPackage.java index c616784c7be..005c54498fc 100644 --- a/config-application-package/src/main/java/com/yahoo/config/model/application/AbstractApplicationPackage.java +++ b/config-application-package/src/main/java/com/yahoo/config/model/application/AbstractApplicationPackage.java @@ -41,4 +41,18 @@ public abstract class AbstractApplicationPackage implements ApplicationPackage { return result; } + public static boolean validSchemaFilename(String fn) { + if (! fn.endsWith(SD_NAME_SUFFIX)) { + return false; + } + int lastSlash = fn.lastIndexOf('/'); + if (lastSlash >= 0) { + fn = fn.substring(lastSlash+1); + } + if (fn.startsWith(".")) { + return false; + } + return true; + } + } diff --git a/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java b/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java index c095b9ad586..5707206019f 100644 --- a/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java +++ b/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java @@ -432,11 +432,11 @@ public class FilesApplicationPackage extends AbstractApplicationPackage { File sdDir = applicationFile(appDir, SEARCH_DEFINITIONS_DIR.getRelative()); if (sdDir.isDirectory()) - schemaFiles.addAll(Arrays.asList(sdDir.listFiles((dir, name) -> name.matches(".*\\" + SD_NAME_SUFFIX)))); + schemaFiles.addAll(Arrays.asList(sdDir.listFiles((dir, name) -> validSchemaFilename(name)))); sdDir = applicationFile(appDir, SCHEMAS_DIR.getRelative()); if (sdDir.isDirectory()) - schemaFiles.addAll(Arrays.asList(sdDir.listFiles((dir, name) -> name.matches(".*\\" + SD_NAME_SUFFIX)))); + schemaFiles.addAll(Arrays.asList(sdDir.listFiles((dir, name) -> validSchemaFilename(name)))); return schemaFiles; } |