This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
     new fe768c5655 Remove export / backport code - no longer required for 9.0.x
fe768c5655 is described below

commit fe768c565572037d70afd32c0de81d0accb44718
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Thu May 23 13:36:41 2024 +0100

    Remove export / backport code - no longer required for 9.0.x
---
 .../tomcat/buildutil/translate/BackportBase.java   | 65 ----------------
 .../buildutil/translate/BackportEnglish.java       | 67 ----------------
 .../buildutil/translate/BackportTranslations.java  | 68 -----------------
 .../tomcat/buildutil/translate/Constants.java      |  2 -
 .../apache/tomcat/buildutil/translate/Utils.java   | 89 ----------------------
 .../tomcat/buildutil/translate/TestUtils.java      | 18 -----
 6 files changed, 309 deletions(-)

diff --git a/java/org/apache/tomcat/buildutil/translate/BackportBase.java 
b/java/org/apache/tomcat/buildutil/translate/BackportBase.java
deleted file mode 100644
index 1a7ab7ed8e..0000000000
--- a/java/org/apache/tomcat/buildutil/translate/BackportBase.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tomcat.buildutil.translate;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-
-/**
- * Base class providing common implementation for back-port utilities.
- */
-public abstract class BackportBase {
-
-    protected final Map<String,Properties> sourceTranslations = new 
HashMap<>();
-    protected final Map<String,Properties> targetTranslations = new 
HashMap<>();
-    protected final File targetRoot;
-    protected final Properties sourceEnglish;
-    protected final Properties targetEnglish;
-    protected final File storageDir;
-
-    protected BackportBase(String... args) throws IOException {
-        if (args.length != 1) {
-            throw new IllegalArgumentException("Missing back-port target");
-        }
-        targetRoot = new File(args[0]);
-
-        if (!targetRoot.isDirectory()) {
-            throw new IllegalArgumentException("Back-port target not a 
directory");
-        }
-
-        File sourceRoot = new File(".");
-        for (String dir : Constants.SEARCH_DIRS) {
-            File directory = new File(dir);
-            Utils.processDirectory(sourceRoot, directory, sourceTranslations);
-        }
-
-        for (String dir : Constants.SEARCH_DIRS) {
-            File directory = new File(targetRoot, dir);
-            Utils.processDirectory(targetRoot, directory, targetTranslations);
-        }
-
-        sourceEnglish = sourceTranslations.get("");
-        targetEnglish = targetTranslations.get("");
-
-        storageDir = new File(targetRoot, Constants.STORAGE_DIR);
-    }
-
-    protected abstract void execute() throws IOException;
-}
diff --git a/java/org/apache/tomcat/buildutil/translate/BackportEnglish.java 
b/java/org/apache/tomcat/buildutil/translate/BackportEnglish.java
deleted file mode 100644
index 8fd8b61a3e..0000000000
--- a/java/org/apache/tomcat/buildutil/translate/BackportEnglish.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tomcat.buildutil.translate;
-
-import java.io.IOException;
-import java.util.HashSet;
-import java.util.Set;
-
-/**
- * Generates a set of English property files to back-port updates to a previous
- * version. Where a key exists in the source and target versions the value is
- * copied from the source to the target, overwriting the value in the target.
- * The expectation is that the changes will be manually reviewed before
- * committing them.
- */
-public class BackportEnglish extends BackportBase {
-
-    private static Set<String> keysToExclude = new HashSet<>();
-
-
-    public static void main(String... args) throws IOException {
-        // Exclude keys known to be different between all versions
-        
keysToExclude.add("java.org.apache.jasper.resources.zzz.jsp.error.jsproot.version.invalid");
-        
keysToExclude.add("java.org.apache.jasper.resources.zzz.jspc.webfrg.header");
-        
keysToExclude.add("java.org.apache.jasper.resources.zzz.jspc.webxml.header");
-
-        // Exclude keys known to be different between 9.0.x and 8.5.x
-        
keysToExclude.add("java.org.apache.catalina.manager.zzz.htmlManagerServlet.deployPath");
-        
keysToExclude.add("java.org.apache.catalina.startup.zzz.catalina.stopServer.connectException");
-        keysToExclude.add("java.org.apache.jasper.resources.zzz.jspc.usage");
-        
keysToExclude.add("java.org.apache.tomcat.dbcp.dbcp2.zzz.connectionFactory.lifetimeExceeded");
-
-        BackportEnglish backport = new BackportEnglish(args);
-        backport.execute();
-    }
-
-
-    protected BackportEnglish(String[] args) throws IOException {
-        super(args);
-    }
-
-
-    @Override
-    protected void execute() throws IOException {
-        for (Object key : sourceEnglish.keySet()) {
-            if (targetEnglish.containsKey(key) && 
!keysToExclude.contains(key)) {
-                targetEnglish.put(key, sourceEnglish.get(key));
-            }
-        }
-
-        Utils.export("", targetEnglish, storageDir);
-    }
-}
diff --git 
a/java/org/apache/tomcat/buildutil/translate/BackportTranslations.java 
b/java/org/apache/tomcat/buildutil/translate/BackportTranslations.java
deleted file mode 100644
index ff493224de..0000000000
--- a/java/org/apache/tomcat/buildutil/translate/BackportTranslations.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * 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.
- */
-package org.apache.tomcat.buildutil.translate;
-
-import java.io.IOException;
-import java.util.Properties;
-
-/**
- * Generates a set of translated property files to back-port updates to a
- * previous version. If the source and target use the same value for the 
English
- * key then any translated value for that key is copied from the source to the
- * target.
- */
-public class BackportTranslations extends BackportBase {
-
-    public static void main(String... args) throws IOException {
-        BackportTranslations backport = new BackportTranslations(args);
-        backport.execute();
-    }
-
-    protected BackportTranslations(String[] args) throws IOException {
-        super(args);
-    }
-
-
-    @Override
-    protected void execute() throws IOException {
-        for (String language : targetTranslations.keySet()) {
-            // Skip source
-            if (language.length() == 0) {
-                continue;
-            }
-
-            Properties sourceTranslated = sourceTranslations.get(language);
-            Properties targetTranslated = targetTranslations.get(language);
-            if (targetTranslated == null) {
-                targetTranslated = new Properties();
-                targetTranslations.put(language, targetTranslated);
-            }
-
-            for (Object key : targetEnglish.keySet()) {
-                if (sourceTranslated.containsKey(key) &&
-                        targetEnglish.get(key).equals(sourceEnglish.get(key))) 
{
-
-                    targetTranslated.put(key, sourceTranslated.get(key));
-                }
-            }
-
-            // Remove translated values for keys that have been removed
-            targetTranslated.entrySet().removeIf(entry -> 
!targetEnglish.containsKey(entry.getKey()));
-            Utils.export(language, targetTranslated, storageDir);
-        }
-    }
-}
diff --git a/java/org/apache/tomcat/buildutil/translate/Constants.java 
b/java/org/apache/tomcat/buildutil/translate/Constants.java
index c156df976c..d372ad9b88 100644
--- a/java/org/apache/tomcat/buildutil/translate/Constants.java
+++ b/java/org/apache/tomcat/buildutil/translate/Constants.java
@@ -21,8 +21,6 @@ public class Constants {
     public static final String L10N_PREFIX = "LocalStrings";
     public static final String L10N_SUFFIX = ".properties";
 
-    public static final String[] SEARCH_DIRS = new String[] { "java", 
"webapps" };
-
     public static final String STORAGE_DIR = ".settings/translations";
 
     public static final String END_PACKAGE_MARKER = ".zzz.";
diff --git a/java/org/apache/tomcat/buildutil/translate/Utils.java 
b/java/org/apache/tomcat/buildutil/translate/Utils.java
index b4ebf1c54f..af2949e5a1 100644
--- a/java/org/apache/tomcat/buildutil/translate/Utils.java
+++ b/java/org/apache/tomcat/buildutil/translate/Utils.java
@@ -18,16 +18,11 @@ package org.apache.tomcat.buildutil.translate;
 
 import java.io.File;
 import java.io.FileInputStream;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
 import java.io.Reader;
-import java.io.Writer;
 import java.nio.charset.StandardCharsets;
-import java.util.Arrays;
 import java.util.HashSet;
-import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 import java.util.regex.Pattern;
@@ -71,19 +66,6 @@ public class Utils {
     }
 
 
-    static String formatValueExport(String in) {
-        String result;
-
-        if (in.startsWith("\n")) {
-            result = PADDING + in;
-        } else {
-            result = in;
-        }
-
-        return formatValueCommon(result);
-    }
-
-
     static String formatValueImport(String in) {
         String result;
 
@@ -127,75 +109,4 @@ public class Utils {
 
         return result;
     }
-
-
-    static void processDirectory(File root, File dir, Map<String,Properties> 
translations) throws IOException {
-        File[] files = dir.listFiles();
-        if (files == null) {
-            throw new IllegalArgumentException("Not a directory [" + 
dir.getAbsolutePath() + "]");
-        }
-        for (File f : files) {
-            if (f.isDirectory()) {
-                processDirectory(root, f, translations);
-            } else if (f.isFile()) {
-                processFile(root, f, translations);
-            }
-        }
-    }
-
-
-    static void processFile(File root, File f, Map<String,Properties> 
translations) throws IOException {
-        String name = f.getName();
-
-        // non-l10n files
-        if (!name.startsWith(Constants.L10N_PREFIX)) {
-            return;
-        }
-
-        // Determine language
-        String language = getLanguage(name);
-
-        String keyPrefix = getKeyPrefix(root, f);
-        Properties props = load(f);
-
-        // Create a Map for the language if one does not exist.
-        Properties translation = translations.get(language);
-        if (translation == null) {
-            translation = new Properties();
-            translations.put(language, translation);
-        }
-
-        // Add the properties from this file to the combined file, prefixing 
the
-        // key with the package name to ensure uniqueness.
-        for (Object obj : props.keySet()) {
-            String key = (String) obj;
-            String value = props.getProperty(key);
-
-            translation.put(keyPrefix + key, value);
-        }
-    }
-
-
-    static String getKeyPrefix(File root, File f) throws IOException {
-        String prefix = f.getParentFile().getCanonicalPath();
-        prefix = prefix.substring(root.getCanonicalPath().length() + 1);
-        prefix = prefix.replace(File.separatorChar, '.');
-        prefix = prefix + Constants.END_PACKAGE_MARKER;
-        return prefix;
-    }
-
-
-    static void export(String language, Properties translation, File 
storageDir) {
-        File out = new File(storageDir, Constants.L10N_PREFIX + language + 
Constants.L10N_SUFFIX);
-        try (FileOutputStream fos = new FileOutputStream(out);
-                Writer w = new OutputStreamWriter(fos, 
StandardCharsets.UTF_8)) {
-            String[] keys = translation.keySet().toArray(new String[0]);
-            Arrays.sort(keys);
-            for (Object key : keys) {
-                w.write(key + "=" + 
formatValueExport(translation.getProperty((String) key)) + "\n");
-            }
-        } catch (IOException ioe) {
-            ioe.printStackTrace();
-        }
-    }
 }
diff --git a/test/org/apache/tomcat/buildutil/translate/TestUtils.java 
b/test/org/apache/tomcat/buildutil/translate/TestUtils.java
index d2d549043e..250f8aedf5 100644
--- a/test/org/apache/tomcat/buildutil/translate/TestUtils.java
+++ b/test/org/apache/tomcat/buildutil/translate/TestUtils.java
@@ -58,22 +58,4 @@ public class TestUtils {
         // Import from POEditor
         Assert.assertEquals("\\n\\\n</web-fragment>\\n", 
Utils.formatValueImport("\\n</web-fragment>\\n"));
     }
-
-    @Test
-    public void testFormatValue03() {
-        // Export from Tomcat
-        Assert.assertEquals("line1\\n\\\nline2\\n\\\nline3", 
Utils.formatValueExport("line1\nline2\nline3"));
-    }
-
-    @Test
-    public void testFormatValue04() {
-        // Export from Tomcat
-        Assert.assertEquals(Utils.PADDING + "\\n\\\nline2\\n\\\nline3", 
Utils.formatValueExport("\nline2\nline3"));
-    }
-
-    @Test
-    public void testFormatValue05() {
-        // Export from Tomcat
-        Assert.assertEquals("line1\\n\\\n\\tline2\\n\\\n\\tline3", 
Utils.formatValueExport("line1\n\tline2\n\tline3"));
-    }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to