├── .asf.yaml ├── .gitattributes ├── .github ├── GH-ROBOTS.txt ├── dependabot.yml ├── pull_request_template.md └── workflows │ ├── codeql-analysis.yml │ ├── dependency-review.yml │ ├── maven.yml │ └── scorecards-analysis.yml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.txt ├── NOTICE.txt ├── PROPOSAL.html ├── README.md ├── RELEASE-NOTES.txt ├── SECURITY.md ├── TODO.txt ├── pom.xml └── src ├── assembly ├── bin.xml └── src.xml ├── changes ├── changes.xml └── release-notes.vm ├── conf ├── checkstyle-header.txt ├── checkstyle-suppressions.xml ├── checkstyle.xml └── pmd.xml ├── main ├── java │ └── org │ │ └── apache │ │ └── commons │ │ └── codec │ │ ├── BinaryDecoder.java │ │ ├── BinaryEncoder.java │ │ ├── CharEncoding.java │ │ ├── Charsets.java │ │ ├── CodecPolicy.java │ │ ├── Decoder.java │ │ ├── DecoderException.java │ │ ├── Encoder.java │ │ ├── EncoderException.java │ │ ├── Resources.java │ │ ├── StringDecoder.java │ │ ├── StringEncoder.java │ │ ├── StringEncoderComparator.java │ │ ├── binary │ │ ├── Base16.java │ │ ├── Base16InputStream.java │ │ ├── Base16OutputStream.java │ │ ├── Base32.java │ │ ├── Base32InputStream.java │ │ ├── Base32OutputStream.java │ │ ├── Base64.java │ │ ├── Base64InputStream.java │ │ ├── Base64OutputStream.java │ │ ├── BaseNCodec.java │ │ ├── BaseNCodecInputStream.java │ │ ├── BaseNCodecOutputStream.java │ │ ├── BinaryCodec.java │ │ ├── CharSequenceUtils.java │ │ ├── Hex.java │ │ ├── StringUtils.java │ │ └── package-info.java │ │ ├── cli │ │ ├── Digest.java │ │ └── package-info.java │ │ ├── digest │ │ ├── B64.java │ │ ├── Blake3.java │ │ ├── Crypt.java │ │ ├── DigestUtils.java │ │ ├── HmacAlgorithms.java │ │ ├── HmacUtils.java │ │ ├── Md5Crypt.java │ │ ├── MessageDigestAlgorithms.java │ │ ├── MurmurHash2.java │ │ ├── MurmurHash3.java │ │ ├── PureJavaCrc32.java │ │ ├── PureJavaCrc32C.java │ │ ├── Sha2Crypt.java │ │ ├── UnixCrypt.java │ │ ├── XXHash32.java │ │ └── package-info.java │ │ ├── language │ │ ├── AbstractCaverphone.java │ │ ├── Caverphone.java │ │ ├── Caverphone1.java │ │ ├── Caverphone2.java │ │ ├── ColognePhonetic.java │ │ ├── DaitchMokotoffSoundex.java │ │ ├── DoubleMetaphone.java │ │ ├── MatchRatingApproachEncoder.java │ │ ├── Metaphone.java │ │ ├── Nysiis.java │ │ ├── RefinedSoundex.java │ │ ├── Soundex.java │ │ ├── SoundexUtils.java │ │ ├── bm │ │ │ ├── BeiderMorseEncoder.java │ │ │ ├── Lang.java │ │ │ ├── Languages.java │ │ │ ├── NameType.java │ │ │ ├── PhoneticEngine.java │ │ │ ├── ResourceConstants.java │ │ │ ├── Rule.java │ │ │ ├── RuleType.java │ │ │ └── package-info.java │ │ └── package-info.java │ │ ├── net │ │ ├── BCodec.java │ │ ├── PercentCodec.java │ │ ├── QCodec.java │ │ ├── QuotedPrintableCodec.java │ │ ├── RFC1522Codec.java │ │ ├── URLCodec.java │ │ ├── Utils.java │ │ └── package-info.java │ │ └── package-info.java ├── javadoc │ └── overview.html └── resources │ └── org │ └── apache │ └── commons │ └── codec │ └── language │ ├── bm │ ├── ash_approx_any.txt │ ├── ash_approx_common.txt │ ├── ash_approx_cyrillic.txt │ ├── ash_approx_english.txt │ ├── ash_approx_french.txt │ ├── ash_approx_german.txt │ ├── ash_approx_hebrew.txt │ ├── ash_approx_hungarian.txt │ ├── ash_approx_polish.txt │ ├── ash_approx_romanian.txt │ ├── ash_approx_russian.txt │ ├── ash_approx_spanish.txt │ ├── ash_exact_any.txt │ ├── ash_exact_approx_common.txt │ ├── ash_exact_common.txt │ ├── ash_exact_cyrillic.txt │ ├── ash_exact_english.txt │ ├── ash_exact_french.txt │ ├── ash_exact_german.txt │ ├── ash_exact_hebrew.txt │ ├── ash_exact_hungarian.txt │ ├── ash_exact_polish.txt │ ├── ash_exact_romanian.txt │ ├── ash_exact_russian.txt │ ├── ash_exact_spanish.txt │ ├── ash_hebrew_common.txt │ ├── ash_lang.txt │ ├── ash_languages.txt │ ├── ash_rules_any.txt │ ├── ash_rules_cyrillic.txt │ ├── ash_rules_english.txt │ ├── ash_rules_french.txt │ ├── ash_rules_german.txt │ ├── ash_rules_hebrew.txt │ ├── ash_rules_hungarian.txt │ ├── ash_rules_polish.txt │ ├── ash_rules_romanian.txt │ ├── ash_rules_russian.txt │ ├── ash_rules_spanish.txt │ ├── gen_approx_any.txt │ ├── gen_approx_arabic.txt │ ├── gen_approx_common.txt │ ├── gen_approx_cyrillic.txt │ ├── gen_approx_czech.txt │ ├── gen_approx_dutch.txt │ ├── gen_approx_english.txt │ ├── gen_approx_french.txt │ ├── gen_approx_german.txt │ ├── gen_approx_greek.txt │ ├── gen_approx_greeklatin.txt │ ├── gen_approx_hebrew.txt │ ├── gen_approx_hungarian.txt │ ├── gen_approx_italian.txt │ ├── gen_approx_polish.txt │ ├── gen_approx_portuguese.txt │ ├── gen_approx_romanian.txt │ ├── gen_approx_russian.txt │ ├── gen_approx_spanish.txt │ ├── gen_approx_turkish.txt │ ├── gen_exact_any.txt │ ├── gen_exact_approx_common.txt │ ├── gen_exact_arabic.txt │ ├── gen_exact_common.txt │ ├── gen_exact_cyrillic.txt │ ├── gen_exact_czech.txt │ ├── gen_exact_dutch.txt │ ├── gen_exact_english.txt │ ├── gen_exact_french.txt │ ├── gen_exact_german.txt │ ├── gen_exact_greek.txt │ ├── gen_exact_greeklatin.txt │ ├── gen_exact_hebrew.txt │ ├── gen_exact_hungarian.txt │ ├── gen_exact_italian.txt │ ├── gen_exact_polish.txt │ ├── gen_exact_portuguese.txt │ ├── gen_exact_romanian.txt │ ├── gen_exact_russian.txt │ ├── gen_exact_spanish.txt │ ├── gen_exact_turkish.txt │ ├── gen_hebrew_common.txt │ ├── gen_lang.txt │ ├── gen_languages.txt │ ├── gen_rules_any.txt │ ├── gen_rules_arabic.txt │ ├── gen_rules_cyrillic.txt │ ├── gen_rules_czech.txt │ ├── gen_rules_dutch.txt │ ├── gen_rules_english.txt │ ├── gen_rules_french.txt │ ├── gen_rules_german.txt │ ├── gen_rules_greek.txt │ ├── gen_rules_greeklatin.txt │ ├── gen_rules_hebrew.txt │ ├── gen_rules_hungarian.txt │ ├── gen_rules_italian.txt │ ├── gen_rules_polish.txt │ ├── gen_rules_portuguese.txt │ ├── gen_rules_romanian.txt │ ├── gen_rules_russian.txt │ ├── gen_rules_spanish.txt │ ├── gen_rules_turkish.txt │ ├── lang.txt │ ├── sep_approx_any.txt │ ├── sep_approx_common.txt │ ├── sep_approx_french.txt │ ├── sep_approx_hebrew.txt │ ├── sep_approx_italian.txt │ ├── sep_approx_portuguese.txt │ ├── sep_approx_spanish.txt │ ├── sep_exact_any.txt │ ├── sep_exact_approx_common.txt │ ├── sep_exact_common.txt │ ├── sep_exact_french.txt │ ├── sep_exact_hebrew.txt │ ├── sep_exact_italian.txt │ ├── sep_exact_portuguese.txt │ ├── sep_exact_spanish.txt │ ├── sep_hebrew_common.txt │ ├── sep_lang.txt │ ├── sep_languages.txt │ ├── sep_rules_any.txt │ ├── sep_rules_french.txt │ ├── sep_rules_hebrew.txt │ ├── sep_rules_italian.txt │ ├── sep_rules_portuguese.txt │ └── sep_rules_spanish.txt │ └── dmrules.txt ├── media └── logo.xcf ├── site ├── resources │ ├── .htaccess │ ├── download_codec.cgi │ ├── images │ │ └── logo.png │ └── profile.jacoco ├── site.xml └── xdoc │ ├── download_codec.xml │ ├── index.xml │ ├── issue-tracking.xml │ ├── mail-lists.xml │ ├── proposal.xml │ └── security.xml └── test ├── java └── org │ └── apache │ └── commons │ └── codec │ ├── AbstractStringEncoderTest.java │ ├── BinaryEncoderAbstractTest.java │ ├── CharEncodingTest.java │ ├── CharsetsTest.java │ ├── DecoderExceptionTest.java │ ├── EncoderExceptionTest.java │ ├── ResourcesTest.java │ ├── StringEncoderComparatorTest.java │ ├── binary │ ├── AllocateDirectHexTest.java │ ├── Base16InputStreamTest.java │ ├── Base16OutputStreamTest.java │ ├── Base16Test.java │ ├── Base16TestData.java │ ├── Base32InputStreamTest.java │ ├── Base32OutputStreamTest.java │ ├── Base32Test.java │ ├── Base32TestData.java │ ├── Base64Codec13Test.java │ ├── Base64InputStreamTest.java │ ├── Base64OutputStreamTest.java │ ├── Base64Test.java │ ├── Base64TestData.java │ ├── BaseNCodecTest.java │ ├── BaseNTestData.java │ ├── BinaryCodecTest.java │ ├── CharSequenceUtilsTest.java │ ├── Codec105ErrorInputStream.java │ ├── HexTest.java │ └── StringUtilsTest.java │ ├── cli │ └── DigestTest.java │ ├── digest │ ├── Apr1CryptTest.java │ ├── B64Test.java │ ├── Blake3Test.java │ ├── Blake3TestVectorsTest.java │ ├── CryptTest.java │ ├── DigestUtilsTest.java │ ├── HmacAlgorithmsTest.java │ ├── HmacUtilsTest.java │ ├── Md5CryptTest.java │ ├── MessageDigestAlgorithmsTest.java │ ├── MurmurHash2Test.java │ ├── MurmurHash3Test.java │ ├── PureJavaCrc32CTest.java │ ├── PureJavaCrc32Test.java │ ├── Sha256CryptTest.java │ ├── Sha2CryptTest.java │ ├── Sha512CryptTest.java │ ├── UnixCryptTest.java │ ├── XXHash32OverflowTest.java │ └── XXHash32Test.java │ ├── language │ ├── Caverphone1Test.java │ ├── Caverphone2Test.java │ ├── ColognePhoneticTest.java │ ├── DaitchMokotoffSoundexTest.java │ ├── DoubleMetaphone2Test.java │ ├── DoubleMetaphoneTest.java │ ├── MatchRatingApproachEncoderTest.java │ ├── MetaphoneTest.java │ ├── NysiisTest.java │ ├── RefinedSoundexTest.java │ ├── SoundexTest.java │ └── bm │ │ ├── BeiderMorseEncoderTest.java │ │ ├── CacheSubSequencePerformanceTest.java │ │ ├── LanguageGuessingTest.java │ │ ├── PhoneticEnginePerformanceTest.java │ │ ├── PhoneticEngineRegressionTest.java │ │ ├── PhoneticEngineTest.java │ │ └── RuleTest.java │ └── net │ ├── BCodecTest.java │ ├── PercentCodecTest.java │ ├── QCodecTest.java │ ├── QuotedPrintableCodecTest.java │ ├── RFC1522CodecTest.java │ ├── RFC1522OverrideTestCodec.java │ ├── URLCodecTest.java │ └── UtilsTest.java └── resources └── org └── apache └── commons └── codec ├── bla.tar ├── bla.tar.xz ├── empty.bin └── small.bin /.asf.yaml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # https://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | github: 17 | description: "Apache Commons Codec" 18 | homepage: https://commons.apache.org/codec/ 19 | 20 | notifications: 21 | commits: commits@commons.apache.org 22 | issues: issues@commons.apache.org 23 | pullrequests: issues@commons.apache.org 24 | jira_options: link label 25 | jobs: notifications@commons.apache.org 26 | issues_bot_dependabot: notifications@commons.apache.org 27 | pullrequests_bot_dependabot: notifications@commons.apache.org 28 | issues_bot_codecov-commenter: notifications@commons.apache.org 29 | pullrequests_bot_codecov-commenter: notifications@commons.apache.org 30 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # https://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | * text=auto 17 | -------------------------------------------------------------------------------- /.github/GH-ROBOTS.txt: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # https://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | # Keeps on creating FUD PRs in test code 17 | # Does not follow Apache disclosure policies 18 | User-agent: JLLeitschuh/security-research 19 | Disallow: * 20 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # https://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: 2 17 | updates: 18 | - package-ecosystem: "maven" 19 | directory: "/" 20 | schedule: 21 | interval: "weekly" 22 | day: "friday" 23 | - package-ecosystem: "github-actions" 24 | directory: "/" 25 | schedule: 26 | interval: "weekly" 27 | day: "friday" 28 | -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | 19 | 20 | Thanks for your contribution to [Apache Commons](https://commons.apache.org/)! Your help is appreciated! 21 | 22 | Before you push a pull request, review this list: 23 | 24 | - [ ] Read the [contribution guidelines](CONTRIBUTING.md) for this project. 25 | - [ ] Run a successful build using the default [Maven](https://maven.apache.org/) goal with `mvn`; that's `mvn` on the command line by itself. 26 | - [ ] Write unit tests that match behavioral changes, where the tests fail if the changes to the runtime are not applied. This may not always be possible but is a best-practice. 27 | - [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why. 28 | - [ ] Each commit in the pull request should have a meaningful subject line and body. Note that commits might be squashed by a maintainer on merge. 29 | -------------------------------------------------------------------------------- /.github/workflows/dependency-review.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one 2 | # or more contributor license agreements. See the NOTICE file 3 | # distributed with this work for additional information 4 | # regarding copyright ownership. The ASF licenses this file 5 | # to you under the Apache License, Version 2.0 (the 6 | # "License"); you may not use this file except in compliance 7 | # with the License. You may obtain a copy of the License at 8 | # 9 | # https://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, 12 | # software distributed under the License is distributed on an 13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | # KIND, either express or implied. See the License for the 15 | # specific language governing permissions and limitations 16 | # under the License. 17 | 18 | name: 'Dependency Review' 19 | on: [pull_request] 20 | 21 | permissions: 22 | contents: read 23 | 24 | jobs: 25 | dependency-review: 26 | runs-on: ubuntu-latest 27 | steps: 28 | - name: 'Checkout Repository' 29 | uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 30 | - name: 'Dependency Review PR' 31 | uses: actions/dependency-review-action@da24556b548a50705dd671f47852072ea4c105d9 # v4.7.1 32 | -------------------------------------------------------------------------------- /.github/workflows/maven.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # https://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | name: Java CI 17 | 18 | on: [push, pull_request] 19 | 20 | permissions: 21 | contents: read 22 | 23 | jobs: 24 | build: 25 | 26 | runs-on: ubuntu-latest 27 | continue-on-error: ${{ matrix.experimental }} 28 | strategy: 29 | matrix: 30 | java: [ 8, 11, 17, 21, 24 ] 31 | experimental: [false] 32 | include: 33 | - java: 25-ea 34 | experimental: true 35 | 36 | steps: 37 | - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2 38 | with: 39 | persist-credentials: false 40 | - uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3 41 | with: 42 | path: ~/.m2/repository 43 | key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} 44 | restore-keys: | 45 | ${{ runner.os }}-maven- 46 | - name: Set up JDK ${{ matrix.java }} 47 | uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 48 | with: 49 | distribution: 'temurin' 50 | java-version: ${{ matrix.java }} 51 | - name: Build with Maven 52 | run: mvn --errors --show-version --batch-mode --no-transfer-progress 53 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *.swp 3 | .idea/ 4 | .idea_modules/ 5 | .idea/* 6 | .settings 7 | .cache 8 | .DS_Store 9 | target/ 10 | .project 11 | .classpath 12 | .externalToolBuilders/* 13 | /commons-codec.iml 14 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | 17 | The Apache code of conduct page is [https://www.apache.org/foundation/policies/conduct.html](https://www.apache.org/foundation/policies/conduct.html). 18 | -------------------------------------------------------------------------------- /NOTICE.txt: -------------------------------------------------------------------------------- 1 | Apache Commons Codec 2 | Copyright 2002-2025 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (https://www.apache.org/). 6 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | 17 | The Apache Commons security page is [https://commons.apache.org/security.html](https://commons.apache.org/security.html). 18 | -------------------------------------------------------------------------------- /TODO.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | [This file is very old and possibly out of date compared to what is in Jira.] 19 | 20 | This is a list of action items to be finished in the [codec] project. 21 | This TODO list reflects the current direction of development, and 22 | should be updated by all committers when a known issues or task 23 | is identified. 24 | 25 | When a task in the TODO list is done, change the changes.xml document in xdocs 26 | 27 | ** TODO List 28 | 29 | * Add a ship encode and decode to binary package 30 | 31 | * Add a btoa encode and decode to binary package 32 | 33 | * Add a uu encode and decode to binary package 34 | 35 | * Add a Rot13 implementation to text package 36 | 37 | * figure out a better way to supply test data and expected input/output 38 | to the JUnit test cases 39 | 40 | * develop multiple distributions for projects that only wish to use 41 | a specific class, and are worried about footprint (memory and disk space). 42 | -------------------------------------------------------------------------------- /src/assembly/bin.xml: -------------------------------------------------------------------------------- 1 | 17 | 19 | bin 20 | 21 | tar.gz 22 | zip 23 | 24 | false 25 | 26 | 27 | 28 | LICENSE.txt 29 | NOTICE.txt 30 | RELEASE-NOTES.txt 31 | 32 | 33 | 34 | target 35 | 36 | 37 | *.jar 38 | 39 | 644 40 | 41 | 42 | target/site/apidocs 43 | apidocs 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /src/assembly/src.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 22 | src 23 | 24 | tar.gz 25 | zip 26 | 27 | ${project.artifactId}-${project.version}-src 28 | 29 | 30 | 31 | BUILDING.txt 32 | CODE_OF_CONDUCT.md 33 | CONTRIBUTING.md 34 | LICENSE.txt 35 | NOTICE.txt 36 | pom.xml 37 | README.md 38 | RELEASE-NOTES.txt 39 | SECURITY.md 40 | 41 | 42 | 43 | src 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /src/conf/checkstyle-header.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | -------------------------------------------------------------------------------- /src/conf/checkstyle-suppressions.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/conf/pmd.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 22 | Excludes from default PMD rules. 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/BinaryDecoder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | /** 21 | * Defines common decoding methods for byte array decoders. 22 | */ 23 | public interface BinaryDecoder extends Decoder { 24 | 25 | /** 26 | * Decodes a byte array and returns the results as a byte array. 27 | * 28 | * @param source 29 | * A byte array which has been encoded with the appropriate encoder 30 | * @return a byte array that contains decoded content 31 | * @throws DecoderException 32 | * A decoder exception is thrown if a Decoder encounters a failure condition during the decode process. 33 | */ 34 | byte[] decode(byte[] source) throws DecoderException; 35 | } 36 | 37 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/BinaryEncoder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | /** 21 | * Defines common encoding methods for byte array encoders. 22 | */ 23 | public interface BinaryEncoder extends Encoder { 24 | 25 | /** 26 | * Encodes a byte array and return the encoded data as a byte array. 27 | * 28 | * @param source 29 | * Data to be encoded 30 | * @return A byte array containing the encoded data 31 | * @throws EncoderException 32 | * thrown if the Encoder encounters a failure condition during the encoding process. 33 | */ 34 | byte[] encode(byte[] source) throws EncoderException; 35 | } 36 | 37 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/CodecPolicy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | /** 21 | * Defines encoding and decoding policies. 22 | * 23 | * @since 1.15 24 | */ 25 | public enum CodecPolicy { 26 | 27 | /** 28 | * The strict policy. Data that causes a codec to fail should throw an exception. 29 | */ 30 | STRICT, 31 | 32 | /** 33 | * The lenient policy. Data that causes a codec to fail should not throw an exception. 34 | */ 35 | LENIENT 36 | } 37 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/Decoder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | /** 21 | * Provides the highest level of abstraction for Decoders. 22 | *

23 | * This is the sister interface of {@link Encoder}. All Decoders implement this common generic interface. 24 | * Allows a user to pass a generic Object to any Decoder implementation in the codec package. 25 | *

26 | *

27 | * One of the two interfaces at the center of the codec package. 28 | *

29 | */ 30 | public interface Decoder { 31 | 32 | /** 33 | * Decodes an "encoded" Object and returns a "decoded" Object. Note that the implementation of this interface will 34 | * try to cast the Object parameter to the specific type expected by a particular Decoder implementation. If a 35 | * {@link ClassCastException} occurs this decode method will throw a DecoderException. 36 | * 37 | * @param source 38 | * the object to decode 39 | * @return a 'decoded" object 40 | * @throws DecoderException 41 | * a decoder exception can be thrown for any number of reasons. Some good candidates are that the 42 | * parameter passed to this method is null, a param cannot be cast to the appropriate type for a 43 | * specific encoder. 44 | */ 45 | Object decode(Object source) throws DecoderException; 46 | } 47 | 48 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/Encoder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | /** 21 | * Provides the highest level of abstraction for Encoders. 22 | *

23 | * This is the sister interface of {@link Decoder}. Every implementation of Encoder provides this 24 | * common generic interface which allows a user to pass a generic Object to any Encoder implementation 25 | * in the codec package. 26 | *

27 | */ 28 | public interface Encoder { 29 | 30 | /** 31 | * Encodes an "Object" and returns the encoded content as an Object. The Objects here may just be 32 | * {@code byte[]} or {@code String}s depending on the implementation used. 33 | * 34 | * @param source 35 | * An object to encode 36 | * @return An "encoded" Object 37 | * @throws EncoderException 38 | * An encoder exception is thrown if the encoder experiences a failure condition during the encoding 39 | * process. 40 | */ 41 | Object encode(Object source) throws EncoderException; 42 | } 43 | 44 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/Resources.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | import java.io.InputStream; 21 | 22 | /** 23 | * Consider this class package private. Helps load resources. 24 | * 25 | * @since 1.12 26 | */ 27 | public class Resources { 28 | 29 | /** 30 | * Gets a read-only stream on the contents of the resource specified by resName. The mapping between the resource name and the stream is managed by this 31 | * class's class loader. 32 | * 33 | * @param name The resource name. 34 | * @return An input stream. 35 | * @see ClassLoader#getResourceAsStream(String) 36 | */ 37 | public static InputStream getInputStream(final String name) { 38 | // Use java.lang.Class.getResourceAsStream(String) to make JPMS happy 39 | final InputStream inputStream = Resources.class.getResourceAsStream(name); 40 | if (inputStream == null) { 41 | throw new IllegalArgumentException("Unable to resolve required resource: " + name); 42 | } 43 | return inputStream; 44 | } 45 | 46 | /** 47 | * TODO Make private in 2.0. 48 | * 49 | * @deprecated TODO Make private in 2.0. 50 | */ 51 | @Deprecated 52 | public Resources() { 53 | // empty 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/StringDecoder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | /** 21 | * Defines common decoding methods for String decoders. 22 | */ 23 | public interface StringDecoder extends Decoder { 24 | 25 | /** 26 | * Decodes a String and returns a String. 27 | * 28 | * @param source 29 | * the String to decode 30 | * @return the encoded String 31 | * @throws DecoderException 32 | * thrown if there is an error condition during the Encoding process. 33 | */ 34 | String decode(String source) throws DecoderException; 35 | } 36 | 37 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/StringEncoder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | /** 21 | * Defines common encoding methods for String encoders. 22 | */ 23 | public interface StringEncoder extends Encoder { 24 | 25 | /** 26 | * Encodes a String and returns a String. 27 | * 28 | * @param source 29 | * the String to encode 30 | * @return the encoded String 31 | * @throws EncoderException 32 | * thrown if there is an error condition during the encoding process. 33 | */ 34 | String encode(String source) throws EncoderException; 35 | } 36 | 37 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/binary/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | /** 19 | * Base64, Base32, Base16, BaseN, Binary, and Hexadecimal String encoding and decoding. 20 | */ 21 | package org.apache.commons.codec.binary; 22 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/cli/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | /** 19 | * Command line utility. 20 | */ 21 | package org.apache.commons.codec.cli; 22 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/digest/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | /** 19 | * Simplifies common {@link java.security.MessageDigest} tasks and includes a libc crypt(3) compatible crypt method that supports DES, MD5, SHA-256 and SHA-512 20 | * based algorithms as well as the Apache specific "$apr1$" variant. 21 | */ 22 | package org.apache.commons.codec.digest; 23 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/language/bm/NameType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.language.bm; 19 | 20 | /** 21 | * Supported types of names. Unless you are matching particular family names, use {@link #GENERIC}. The 22 | * {@code GENERIC} NameType should work reasonably well for non-name words. The other encodings are 23 | * specifically tuned to family names, and may not work well at all for general text. 24 | * 25 | * @since 1.6 26 | */ 27 | public enum NameType { 28 | 29 | /** 30 | * Ashkenazi family names. 31 | */ 32 | ASHKENAZI("ash"), 33 | 34 | /** 35 | * Generic names and words. 36 | */ 37 | GENERIC("gen"), 38 | 39 | /** 40 | * Sephardic family names. 41 | */ 42 | SEPHARDIC("sep"); 43 | 44 | private final String name; 45 | 46 | NameType(final String name) { 47 | this.name = name; 48 | } 49 | 50 | /** 51 | * Gets the short version of the name type. 52 | * 53 | * @return the NameType short string 54 | */ 55 | public String getName() { 56 | return this.name; 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/language/bm/ResourceConstants.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.language.bm; 19 | 20 | import java.util.regex.Pattern; 21 | 22 | import org.apache.commons.codec.CharEncoding; 23 | 24 | /** 25 | * Constants used to process resource files. 26 | * 27 | *

This class is immutable and thread-safe.

28 | * 29 | * @since 1.6 30 | */ 31 | final class ResourceConstants { 32 | 33 | static final String CMT = "//"; 34 | static final String ENCODING = CharEncoding.UTF_8; 35 | static final String EXT_CMT_END = "*/"; 36 | static final String EXT_CMT_START = "/*"; 37 | static final Pattern SPACES = Pattern.compile("\\s+"); 38 | 39 | 40 | } 41 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/language/bm/RuleType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.language.bm; 19 | 20 | /** 21 | * Types of rule. 22 | * 23 | * @since 1.6 24 | */ 25 | public enum RuleType { 26 | 27 | /** 28 | * Approximate rules, which will lead to the largest number of phonetic interpretations. 29 | */ 30 | APPROX("approx"), 31 | 32 | /** 33 | * Exact rules, which will lead to a minimum number of phonetic interpretations. 34 | */ 35 | EXACT("exact"), 36 | 37 | /** 38 | * For internal use only. Please use {@link #APPROX} or {@link #EXACT}. 39 | */ 40 | RULES("rules"); 41 | 42 | private final String name; 43 | 44 | RuleType(final String name) { 45 | this.name = name; 46 | } 47 | 48 | /** 49 | * Gets the rule name. 50 | * 51 | * @return the rule name. 52 | */ 53 | public String getName() { 54 | return this.name; 55 | } 56 | 57 | } 58 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/language/bm/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | /** 19 | * Implementation details of the Beider-Morse codec. 20 | */ 21 | package org.apache.commons.codec.language.bm; 22 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/language/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | /** 19 | * Language and phonetic encoders. 20 | */ 21 | package org.apache.commons.codec.language; 22 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/net/Utils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.net; 19 | 20 | import org.apache.commons.codec.DecoderException; 21 | 22 | /** 23 | * Utility methods for this package. 24 | * 25 | *

This class is immutable and thread-safe.

26 | * 27 | * @since 1.4 28 | */ 29 | final class Utils { 30 | 31 | /** 32 | * Radix used in encoding and decoding. 33 | */ 34 | private static final int RADIX = 16; 35 | 36 | /** 37 | * Returns the numeric value of the character {@code b} in radix 16. 38 | * 39 | * @param b 40 | * The byte to be converted. 41 | * @return The numeric value represented by the character in radix 16. 42 | * @throws DecoderException 43 | * Thrown when the byte is not valid per {@link Character#digit(char,int)} 44 | */ 45 | static int digit16(final byte b) throws DecoderException { 46 | final int i = Character.digit((char) b, RADIX); 47 | if (i == -1) { 48 | throw new DecoderException("Invalid URL encoding: not a valid digit (radix " + RADIX + "): " + b); 49 | } 50 | return i; 51 | } 52 | 53 | /** 54 | * Returns the upper case hexadecimal digit of the lower 4 bits of the int. 55 | * 56 | * @param b the input int 57 | * @return the upper case hexadecimal digit of the lower 4 bits of the int. 58 | */ 59 | static char hexDigit(final int b) { 60 | return Character.toUpperCase(Character.forDigit(b & 0xF, RADIX)); 61 | } 62 | 63 | } 64 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/net/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | /** 19 | * Network related encoding and decoding. 20 | */ 21 | package org.apache.commons.codec.net; 22 | -------------------------------------------------------------------------------- /src/main/java/org/apache/commons/codec/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | /** 19 | * Interfaces and classes used by the various implementations in the sub-packages. 20 | *

21 | * Definitive implementations of commonly used encoders and decoders. 22 | *

23 | *

24 | * Codec is currently comprised of a modest set of utilities and a simple framework for String encoding and decoding in the following packages: 25 | *

26 | * 34 | */ 35 | package org.apache.commons.codec; 36 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_cyrillic.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_approx_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_english.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // VOWELS 19 | "I" "" "[^aEIeiou]e" "(Q|i|D)" // like in "five" 20 | "I" "" "$" "i" 21 | "I" "[aEIeiou]" "" "i" 22 | "I" "" "[^k]$" "i" 23 | "Ik" "[lr]" "$" "(ik|Qk)" 24 | "Ik" "" "$" "ik" 25 | "sIts" "" "$" "(sits|sQts)" 26 | "Its" "" "$" "its" 27 | "I" "" "" "(i|Q)" 28 | 29 | "lE" "[bdfgkmnprsStvzZ]" "" "(il|li|lY)" // Applebaum < Appelbaum 30 | 31 | "au" "" "" "(D|a|u)" 32 | "ou" "" "" "(D|o|u)" 33 | "ai" "" "" "(D|a|i)" 34 | "oi" "" "" "(D|o|i)" 35 | "ui" "" "" "(D|u|i)" 36 | 37 | "E" "D[^aeiEIou]" "" "(i|)" // Weinberg, Shaneberg (shaneberg/shejneberg) --> shejnberg 38 | "e" "D[^aeiEIou]" "" "(i|)" 39 | 40 | "e" "" "" "i" 41 | "E" "" "[fklmnprsStv]$" "i" 42 | "E" "" "ts$" "i" 43 | "E" "[DaoiEuQY]" "" "i" 44 | "E" "" "[aoQY]" "i" 45 | "E" "" "" "(Y|i)" 46 | 47 | "a" "" "" "(a|o)" 48 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_french.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "I" "" "$" "i" 19 | "I" "[aEIeiou]" "" "i" 20 | "I" "" "[^k]$" "i" 21 | "Ik" "[lr]" "$" "(ik|Qk)" 22 | "Ik" "" "$" "ik" 23 | "sIts" "" "$" "(sits|sQts)" 24 | "Its" "" "$" "its" 25 | "I" "" "" "(i|Q)" 26 | 27 | "au" "" "" "(D|a|u)" 28 | "ou" "" "" "(D|o|u)" 29 | "ai" "" "" "(D|a|i)" 30 | "oi" "" "" "(D|o|i)" 31 | "ui" "" "" "(D|u|i)" 32 | 33 | "a" "" "" "(a|o)" 34 | "e" "" "" "i" 35 | 36 | "E" "" "[fklmnprsStv]$" "i" 37 | "E" "" "ts$" "i" 38 | "E" "[aoiuQ]" "" "i" 39 | "E" "" "[aoQ]" "i" 40 | "E" "" "" "(Y|i)" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_german.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "I" "" "$" "i" 19 | "I" "[aeiAEIOUouQY]" "" "i" 20 | "I" "" "[^k]$" "i" 21 | "Ik" "[lr]" "$" "(ik|Qk)" 22 | "Ik" "" "$" "ik" 23 | "sIts" "" "$" "(sits|sQts)" 24 | "Its" "" "$" "its" 25 | "I" "" "" "(Q|i)" 26 | 27 | "AU" "" "" "(D|a|u)" 28 | "aU" "" "" "(D|a|u)" 29 | "Au" "" "" "(D|a|u)" 30 | "au" "" "" "(D|a|u)" 31 | "ou" "" "" "(D|o|u)" 32 | "OU" "" "" "(D|o|u)" 33 | "oU" "" "" "(D|o|u)" 34 | "Ou" "" "" "(D|o|u)" 35 | "ai" "" "" "(D|a|i)" 36 | "Ai" "" "" "(D|a|i)" 37 | "oi" "" "" "(D|o|i)" 38 | "Oi" "" "" "(D|o|i)" 39 | "ui" "" "" "(D|u|i)" 40 | "Ui" "" "" "(D|u|i)" 41 | 42 | "e" "" "" "i" 43 | 44 | "E" "" "[fklmnprst]$" "i" 45 | "E" "" "ts$" "i" 46 | "E" "" "$" "i" 47 | "E" "[DaoAOUiuQY]" "" "i" 48 | "E" "" "[aoAOQY]" "i" 49 | "E" "" "" "(Y|i)" 50 | 51 | "O" "" "$" "o" 52 | "O" "" "[fklmnprst]$" "o" 53 | "O" "" "ts$" "o" 54 | "O" "[aoAOUeiuQY]" "" "o" 55 | "O" "" "" "(o|Y)" 56 | 57 | "a" "" "" "(a|o)" 58 | 59 | "A" "" "$" "(a|o)" 60 | "A" "" "[fklmnprst]$" "(a|o)" 61 | "A" "" "ts$" "(a|o)" 62 | "A" "[aoeOUiuQY]" "" "(a|o)" 63 | "A" "" "" "(a|o|Y)" 64 | 65 | "U" "" "$" "u" 66 | "U" "[DaoiuUQY]" "" "u" 67 | "U" "" "[^k]$" "u" 68 | "Uk" "[lr]" "$" "(uk|Qk)" 69 | "Uk" "" "$" "uk" 70 | "sUts" "" "$" "(suts|sQts)" 71 | "Uts" "" "$" "uts" 72 | "U" "" "" "(u|Q)" 73 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_hungarian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_polish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "aiB" "" "[bp]" "(D|Dm)" 19 | "oiB" "" "[bp]" "(D|Dm)" 20 | "uiB" "" "[bp]" "(D|Dm)" 21 | "eiB" "" "[bp]" "(D|Dm)" 22 | "EiB" "" "[bp]" "(D|Dm)" 23 | "iiB" "" "[bp]" "(D|Dm)" 24 | "IiB" "" "[bp]" "(D|Dm)" 25 | 26 | "aiB" "" "[dgkstvz]" "(D|Dn)" 27 | "oiB" "" "[dgkstvz]" "(D|Dn)" 28 | "uiB" "" "[dgkstvz]" "(D|Dn)" 29 | "eiB" "" "[dgkstvz]" "(D|Dn)" 30 | "EiB" "" "[dgkstvz]" "(D|Dn)" 31 | "iiB" "" "[dgkstvz]" "(D|Dn)" 32 | "IiB" "" "[dgkstvz]" "(D|Dn)" 33 | 34 | "B" "" "[bp]" "(o|om|im)" 35 | "B" "" "[dgkstvz]" "(o|on|in)" 36 | "B" "" "" "o" 37 | 38 | "aiF" "" "[bp]" "(D|Dm)" 39 | "oiF" "" "[bp]" "(D|Dm)" 40 | "uiF" "" "[bp]" "(D|Dm)" 41 | "eiF" "" "[bp]" "(D|Dm)" 42 | "EiF" "" "[bp]" "(D|Dm)" 43 | "iiF" "" "[bp]" "(D|Dm)" 44 | "IiF" "" "[bp]" "(D|Dm)" 45 | 46 | "aiF" "" "[dgkstvz]" "(D|Dn)" 47 | "oiF" "" "[dgkstvz]" "(D|Dn)" 48 | "uiF" "" "[dgkstvz]" "(D|Dn)" 49 | "eiF" "" "[dgkstvz]" "(D|Dn)" 50 | "EiF" "" "[dgkstvz]" "(D|Dn)" 51 | "iiF" "" "[dgkstvz]" "(D|Dn)" 52 | "IiF" "" "[dgkstvz]" "(D|Dn)" 53 | 54 | "F" "" "[bp]" "(i|im|om)" 55 | "F" "" "[dgkstvz]" "(i|in|on)" 56 | "F" "" "" "i" 57 | 58 | "P" "" "" "(o|u)" 59 | 60 | "I" "" "$" "i" 61 | "I" "" "[^k]$" "i" 62 | "Ik" "[lr]" "$" "(ik|Qk)" 63 | "Ik" "" "$" "ik" 64 | "sIts" "" "$" "(sits|sQts)" 65 | "Its" "" "$" "its" 66 | "I" "[aeiAEBFIou]" "" "i" 67 | "I" "" "" "(i|Q)" 68 | 69 | "au" "" "" "(D|a|u)" 70 | "ou" "" "" "(D|o|u)" 71 | "ai" "" "" "(D|a|i)" 72 | "oi" "" "" "(D|o|i)" 73 | "ui" "" "" "(D|u|i)" 74 | 75 | "a" "" "" "(a|o)" 76 | "e" "" "" "i" 77 | 78 | "E" "" "[fklmnprst]$" "i" 79 | "E" "" "ts$" "i" 80 | "E" "" "$" "i" 81 | "E" "[DaoiuQ]" "" "i" 82 | "E" "" "[aoQ]" "i" 83 | "E" "" "" "(Y|i)" 84 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_romanian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_approx_polish -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_russian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "I" "" "$" "i" 19 | "I" "" "[^k]$" "i" 20 | "Ik" "[lr]" "$" "(ik|Qk)" 21 | "Ik" "" "$" "ik" 22 | "sIts" "" "$" "(sits|sQts)" 23 | "Its" "" "$" "its" 24 | "I" "[aeiEIou]" "" "i" 25 | "I" "" "" "(i|Q)" 26 | 27 | "au" "" "" "(D|a|u)" 28 | "ou" "" "" "(D|o|u)" 29 | "ai" "" "" "(D|a|i)" 30 | "oi" "" "" "(D|o|i)" 31 | "ui" "" "" "(D|u|i)" 32 | 33 | "om" "" "[bp]" "(om|im)" 34 | "on" "" "[dgkstvz]" "(on|in)" 35 | "em" "" "[bp]" "(im|om)" 36 | "en" "" "[dgkstvz]" "(in|on)" 37 | "Em" "" "[bp]" "(im|Ym|om)" 38 | "En" "" "[dgkstvz]" "(in|Yn|on)" 39 | 40 | "a" "" "" "(a|o)" 41 | "e" "" "" "i" 42 | 43 | "E" "" "[fklmnprsStv]$" "i" 44 | "E" "" "ts$" "i" 45 | "E" "[DaoiuQ]" "" "i" 46 | "E" "" "[aoQ]" "i" 47 | "E" "" "" "(Y|i)" 48 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_approx_spanish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_any.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // These rules are applied after the word has been transliterated into the phonetic alphabet 19 | // These rules are substitution rules within the phonetic character space rather than mapping rules 20 | 21 | // format of each entry rule in the table 22 | // (pattern, left context, right context, phonetic) 23 | // where 24 | // pattern is a sequence of characters that might appear after a word has been transliterated into phonetic alphabet 25 | // left context is the context that precedes the pattern 26 | // right context is the context that follows the pattern 27 | // phonetic is the result that this rule generates 28 | // 29 | // note that both left context and right context can be regular expressions 30 | // ex: left context of ^ would mean start of word 31 | // right context of $ means end of word 32 | // 33 | // match occurs if all of the following are true: 34 | // portion of word matches the pattern 35 | // that portion satisfies the context 36 | 37 | // A, E, I, O, P, U should create variants, but a, e, i, o, u should not create any new variant 38 | // Q = ü ; Y = ä = ö 39 | 40 | 41 | "A" "" "" "a" 42 | "B" "" "" "a" 43 | 44 | "E" "" "" "e" 45 | "F" "" "" "e" 46 | 47 | "I" "" "" "i" 48 | "O" "" "" "o" 49 | "P" "" "" "o" 50 | "U" "" "" "u" 51 | 52 | "J" "" "" "l" 53 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_approx_common.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // Ashkenazic 19 | 20 | "h" "" "$" "" 21 | // VOICED - UNVOICED CONSONANTS 22 | "b" "" "[fktSs]" "p" 23 | "b" "" "p" "" 24 | "b" "" "$" "p" 25 | "p" "" "[gdZz]" "b" 26 | "p" "" "b" "" 27 | 28 | "v" "" "[pktSs]" "f" 29 | "v" "" "f" "" 30 | "v" "" "$" "f" 31 | "f" "" "[bgdZz]" "v" 32 | "f" "" "v" "" 33 | 34 | "g" "" "[pftSs]" "k" 35 | "g" "" "k" "" 36 | "g" "" "$" "k" 37 | "k" "" "[bdZz]" "g" 38 | "k" "" "g" "" 39 | 40 | "d" "" "[pfkSs]" "t" 41 | "d" "" "t" "" 42 | "d" "" "$" "t" 43 | "t" "" "[bgZz]" "d" 44 | "t" "" "d" "" 45 | 46 | "s" "" "dZ" "" 47 | "s" "" "tS" "" 48 | 49 | "z" "" "[pfkSt]" "s" 50 | "z" "" "[sSzZ]" "" 51 | "s" "" "[sSzZ]" "" 52 | "Z" "" "[sSzZ]" "" 53 | "S" "" "[sSzZ]" "" 54 | 55 | // SIMPLIFICATION OF CONSONANT CLUSTERS 56 | 57 | "jnm" "" "" "jm" 58 | 59 | // DOUBLE --> SINGLE 60 | 61 | "ji" "^" "" "i" 62 | "jI" "^" "" "I" 63 | 64 | "a" "" "[aAB]" "" 65 | "a" "[AB]" "" "" 66 | "A" "" "A" "" 67 | "B" "" "B" "" 68 | 69 | "b" "" "b" "" 70 | "d" "" "d" "" 71 | "f" "" "f" "" 72 | "g" "" "g" "" 73 | "k" "" "k" "" 74 | "l" "" "l" "" 75 | "m" "" "m" "" 76 | "n" "" "n" "" 77 | "p" "" "p" "" 78 | "r" "" "r" "" 79 | "t" "" "t" "" 80 | "v" "" "v" "" 81 | "z" "" "z" "" 82 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_common.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_approx_common 19 | 20 | "H" "" "" "h" 21 | 22 | // VOICED - UNVOICED CONSONANTS 23 | 24 | "s" "[^t]" "[bgZd]" "z" 25 | "Z" "" "[pfkst]" "S" 26 | "Z" "" "$" "S" 27 | "S" "" "[bgzd]" "Z" 28 | "z" "" "$" "s" 29 | 30 | "ji" "[aAoOeEiIuU]" "" "j" 31 | "jI" "[aAoOeEiIuU]" "" "j" 32 | "je" "[aAoOeEiIuU]" "" "j" 33 | "jE" "[aAoOeEiIuU]" "" "j" 34 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_cyrillic.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_english.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_french.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_german.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_any -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_hungarian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_polish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "B" "" "" "a" 19 | "F" "" "" "e" 20 | "P" "" "" "o" 21 | 22 | "E" "" "" "e" 23 | "I" "" "" "i" 24 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_romanian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_russian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "E" "" "" "e" 19 | "I" "" "" "i" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_exact_spanish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include ash_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_languages.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | any 19 | cyrillic 20 | english 21 | french 22 | german 23 | hebrew 24 | hungarian 25 | polish 26 | romanian 27 | russian 28 | spanish 29 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_rules_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // Ashkenazic 19 | 20 | "אי" "" "" "i" 21 | "עי" "" "" "i" 22 | "עו" "" "" "VV" 23 | "או" "" "" "VV" 24 | 25 | "ג׳" "" "" "Z" 26 | "ד׳" "" "" "dZ" 27 | 28 | "א" "" "" "L" 29 | "ב" "" "" "b" 30 | "ג" "" "" "g" 31 | "ד" "" "" "d" 32 | 33 | "ה" "^" "" "1" 34 | "ה" "" "$" "1" 35 | "ה" "" "" "" 36 | 37 | "וו" "" "" "V" 38 | "וי" "" "" "WW" 39 | "ו" "" "" "W" 40 | "ז" "" "" "z" 41 | "ח" "" "" "X" 42 | "ט" "" "" "T" 43 | "יי" "" "" "i" 44 | "י" "" "" "i" 45 | "ך" "" "" "X" 46 | "כ" "^" "" "K" 47 | "כ" "" "" "k" 48 | "ל" "" "" "l" 49 | "ם" "" "" "m" 50 | "מ" "" "" "m" 51 | "ן" "" "" "n" 52 | "נ" "" "" "n" 53 | "ס" "" "" "s" 54 | "ע" "" "" "L" 55 | "ף" "" "" "f" 56 | "פ" "" "" "f" 57 | "ץ" "" "" "C" 58 | "צ" "" "" "C" 59 | "ק" "" "" "K" 60 | "ר" "" "" "r" 61 | "ש" "" "" "s" 62 | "ת" "" "" "TB" // only Ashkenazic 63 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_rules_hungarian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // ASHKENAZIC 19 | 20 | // CONSONANTS 21 | "sz" "" "" "s" 22 | "zs" "" "" "Z" 23 | "cs" "" "" "tS" 24 | 25 | "ay" "" "" "(oj|aj)" 26 | "ai" "" "" "(oj|aj)" 27 | "aj" "" "" "(oj|aj)" 28 | 29 | "ei" "" "" "aj" // German element 30 | "ey" "" "" "aj" // German element 31 | 32 | "y" "[áo]" "" "j" 33 | "i" "[áo]" "" "j" 34 | "ee" "" "" "(aj|e)" // actually ej 35 | "ely" "" "" "(aj|eli)" // actually ej 36 | "ly" "" "" "(j|li)" 37 | "gy" "" "[aeouáéóúüöőű]" "dj" 38 | "gy" "" "" "(d|gi)" 39 | "ny" "" "[aeouáéóúüöőű]" "nj" 40 | "ny" "" "" "(n|ni)" 41 | "ty" "" "[aeouáéóúüöőű]" "tj" 42 | "ty" "" "" "(t|ti)" 43 | 44 | "qu" "" "" "(ku|kv)" 45 | "h" "" "$" "" 46 | 47 | // VOWELS 48 | "á" "" "" "a" 49 | "é" "" "" "e" 50 | "í" "" "" "i" 51 | "ó" "" "" "o" 52 | "ö" "" "" "Y" 53 | "ő" "" "" "Y" 54 | "ú" "" "" "u" 55 | "ü" "" "" "Q" 56 | "ű" "" "" "Q" 57 | 58 | // LATIN ALPHABET 59 | "a" "" "" "a" 60 | "b" "" "" "b" 61 | "c" "" "" "ts" 62 | "d" "" "" "d" 63 | "e" "" "" "E" 64 | "f" "" "" "f" 65 | "g" "" "" "g" 66 | "h" "" "" "h" 67 | "i" "" "" "I" 68 | "j" "" "" "j" 69 | "k" "" "" "k" 70 | "l" "" "" "l" 71 | "m" "" "" "m" 72 | "n" "" "" "n" 73 | "o" "" "" "o" 74 | "p" "" "" "p" 75 | "q" "" "" "k" 76 | "r" "" "" "r" 77 | "s" "" "" "(S|s)" 78 | "t" "" "" "t" 79 | "u" "" "" "u" 80 | "v" "" "" "v" 81 | "w" "" "" "v" 82 | "x" "" "" "ks" 83 | "y" "" "" "i" 84 | "z" "" "" "z" 85 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_rules_romanian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "j" "" "" "Z" 19 | 20 | "ce" "" "" "tSe" 21 | "ci" "" "" "(tSi|tS)" 22 | "ch" "" "[ei]" "k" 23 | "ch" "" "" "x" // foreign 24 | "c" "" "" "k" 25 | 26 | "gi" "" "" "(dZi|dZ)" 27 | "g" "" "[ei]" "dZ" 28 | "gh" "" "" "g" 29 | 30 | "ei" "" "" "aj" 31 | "i" "[aou]" "" "j" 32 | "i" "" "[aeou]" "j" 33 | "ţ" "" "" "ts" 34 | "ş" "" "" "S" 35 | "h" "" "" "(x|h)" 36 | 37 | "qu" "" "" "k" 38 | "q" "" "" "k" 39 | "w" "" "" "v" 40 | "x" "" "" "ks" 41 | "y" "" "" "i" 42 | 43 | "î" "" "" "i" 44 | "ea" "" "" "ja" 45 | "ă" "" "" "(e|a)" 46 | "aue" "" "" "aue" 47 | 48 | "a" "" "" "a" 49 | "b" "" "" "b" 50 | "d" "" "" "d" 51 | "e" "" "" "E" 52 | "f" "" "" "f" 53 | "g" "" "" "g" 54 | "i" "" "" "I" 55 | "k" "" "" "k" 56 | "l" "" "" "l" 57 | "m" "" "" "m" 58 | "n" "" "" "n" 59 | "o" "" "" "o" 60 | "p" "" "" "p" 61 | "r" "" "" "r" 62 | "s" "" "" "s" 63 | "t" "" "" "t" 64 | "u" "" "" "u" 65 | "v" "" "" "v" 66 | "z" "" "" "z" 67 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/ash_rules_spanish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // Ashkenazic = Argentina 19 | 20 | // CONSONANTS 21 | "ñ" "" "" "(n|nj)" 22 | 23 | "ch" "" "" "(tS|dZ)" // dZ is typical for Argentina 24 | "h" "[bdgt]" "" "" // translit. from Arabic 25 | "h" "" "$" "" // foreign 26 | 27 | "j" "" "" "x" 28 | "x" "" "" "ks" 29 | "ll" "" "" "(l|Z)" // Z is typical for Argentina, only Ashkenazic 30 | "w" "" "" "v" // foreign words 31 | 32 | "v" "" "" "(b|v)" 33 | "b" "" "" "(b|v)" 34 | "m" "" "[bpvf]" "(m|n)" 35 | 36 | "c" "" "[ei]" "s" 37 | "c" "" "" "k" 38 | 39 | "z" "" "" "(z|s)" // as "c" befoire "e" or "i", in Spain it is like unvoiced English "th" 40 | 41 | "gu" "" "[ei]" "(g|gv)" // "gv" because "u" can actually be "ü" 42 | "g" "" "[ei]" "(x|g)" // "g" only for foreign words 43 | 44 | "qu" "" "" "k" 45 | "q" "" "" "k" 46 | 47 | "uo" "" "" "(vo|o)" 48 | "u" "" "[aei]" "v" 49 | 50 | "y" "" "" "(i|j|S|Z)" // S or Z are peculiar to South America; only Ashkenazic 51 | 52 | // VOWELS 53 | "ü" "" "" "v" 54 | "á" "" "" "a" 55 | "é" "" "" "e" 56 | "í" "" "" "i" 57 | "ó" "" "" "o" 58 | "ú" "" "" "u" 59 | 60 | // TRIVIAL 61 | "a" "" "" "a" 62 | "d" "" "" "d" 63 | "e" "" "" "E" // Only Ashkenazic 64 | "f" "" "" "f" 65 | "g" "" "" "g" 66 | "h" "" "" "h" 67 | "i" "" "" "I" // Only Ashkenazic 68 | "k" "" "" "k" 69 | "l" "" "" "l" 70 | "m" "" "" "m" 71 | "n" "" "" "n" 72 | "o" "" "" "o" 73 | "p" "" "" "p" 74 | "r" "" "" "r" 75 | "s" "" "" "s" 76 | "t" "" "" "t" 77 | "u" "" "" "u" 78 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_arabic.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "1a" "" "" "(D|a)" 19 | "1i" "" "" "(D|i|e)" 20 | "1u" "" "" "(D|u|o)" 21 | "j1" "" "" "(ja|je|jo|ju|j)" 22 | "1" "" "" "(a|e|i|o|u|)" 23 | "u" "" "" "(o|u)" 24 | "i" "" "" "(i|e)" 25 | "p" "" "$" "p" 26 | "p" "" "" "(p|b)" 27 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_cyrillic.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_czech.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_dutch.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_english.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // VOWELS 19 | "I" "" "[^aEIeiou]e" "(Q|i|D)" // like in "five" 20 | "I" "" "$" "i" 21 | "I" "[aEIeiou]" "" "i" 22 | "I" "" "[^k]$" "i" 23 | "Ik" "[lr]" "$" "(ik|Qk)" 24 | "Ik" "" "$" "ik" 25 | "sIts" "" "$" "(sits|sQts)" 26 | "Its" "" "$" "its" 27 | "I" "" "" "(i|Q)" 28 | 29 | "lE" "[bdfgkmnprsStvzZ]" "" "(il|li|lY)" // Applebaum < Appelbaum 30 | 31 | "au" "" "" "(D|a|u)" 32 | "ou" "" "" "(D|o|u)" 33 | "ai" "" "" "(D|a|i)" 34 | "oi" "" "" "(D|o|i)" 35 | "ui" "" "" "(D|u|i)" 36 | 37 | "E" "D[^aeiEIou]" "" "(i|)" // Weinberg, Shaneberg (shaneberg/shejneberg) --> shejnberg 38 | "e" "D[^aeiEIou]" "" "(i|)" 39 | 40 | "e" "" "" "i" 41 | "E" "" "[fklmnprsStv]$" "i" 42 | "E" "" "ts$" "i" 43 | "E" "[DaoiEuQY]" "" "i" 44 | "E" "" "[aoQY]" "i" 45 | "E" "" "" "(Y|i)" 46 | 47 | "a" "" "" "(a|o)" 48 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_french.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "au" "" "" "(D|a|u)" 19 | "ou" "" "" "(D|o|u)" 20 | "ai" "" "" "(D|a|i)" 21 | "oi" "" "" "(D|o|i)" 22 | "ui" "" "" "(D|u|i)" 23 | 24 | "a" "" "" "(a|o)" 25 | "e" "" "" "i" 26 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_german.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | "I" "" "$" "i" 20 | "I" "[aeiAEIOUouQY]" "" "i" 21 | "I" "" "[^k]$" "i" 22 | "Ik" "[lr]" "$" "(ik|Qk)" 23 | "Ik" "" "$" "ik" 24 | "sIts" "" "$" "(sits|sQts)" 25 | "Its" "" "$" "its" 26 | "I" "" "" "(Q|i)" 27 | 28 | "AU" "" "" "(D|a|u)" 29 | "aU" "" "" "(D|a|u)" 30 | "Au" "" "" "(D|a|u)" 31 | "au" "" "" "(D|a|u)" 32 | "ou" "" "" "(D|o|u)" 33 | "OU" "" "" "(D|o|u)" 34 | "oU" "" "" "(D|o|u)" 35 | "Ou" "" "" "(D|o|u)" 36 | "ai" "" "" "(D|a|i)" 37 | "Ai" "" "" "(D|a|i)" 38 | "oi" "" "" "(D|o|i)" 39 | "Oi" "" "" "(D|o|i)" 40 | "ui" "" "" "(D|u|i)" 41 | "Ui" "" "" "(D|u|i)" 42 | 43 | "e" "" "" "i" 44 | 45 | "E" "" "[fklmnprst]$" "i" 46 | "E" "" "ts$" "i" 47 | "E" "" "$" "i" 48 | "E" "[DaoAOUiuQY]" "" "i" 49 | "E" "" "[aoAOQY]" "i" 50 | "E" "" "" "(Y|i)" 51 | 52 | "O" "" "$" "o" 53 | "O" "" "[fklmnprst]$" "o" 54 | "O" "" "ts$" "o" 55 | "O" "[aoAOUeiuQY]" "" "o" 56 | "O" "" "" "(o|Y)" 57 | 58 | "a" "" "" "(a|o)" 59 | 60 | "A" "" "$" "(a|o)" 61 | "A" "" "[fklmnprst]$" "(a|o)" 62 | "A" "" "ts$" "(a|o)" 63 | "A" "[aoeOUiuQY]" "" "(a|o)" 64 | "A" "" "" "(a|o|Y)" 65 | 66 | "U" "" "$" "u" 67 | "U" "[DaoiuUQY]" "" "u" 68 | "U" "" "[^k]$" "u" 69 | "Uk" "[lr]" "$" "(uk|Qk)" 70 | "Uk" "" "$" "uk" 71 | "sUts" "" "$" "(suts|sQts)" 72 | "Uts" "" "$" "uts" 73 | "U" "" "" "(u|Q)" 74 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_greek.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_greeklatin.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french 19 | 20 | "N" "" "" "" 21 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_hungarian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french 19 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_italian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french 19 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_polish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | "aiB" "" "[bp]" "(D|Dm)" 20 | "oiB" "" "[bp]" "(D|Dm)" 21 | "uiB" "" "[bp]" "(D|Dm)" 22 | "eiB" "" "[bp]" "(D|Dm)" 23 | "EiB" "" "[bp]" "(D|Dm)" 24 | "iiB" "" "[bp]" "(D|Dm)" 25 | "IiB" "" "[bp]" "(D|Dm)" 26 | 27 | "aiB" "" "[dgkstvz]" "(D|Dn)" 28 | "oiB" "" "[dgkstvz]" "(D|Dn)" 29 | "uiB" "" "[dgkstvz]" "(D|Dn)" 30 | "eiB" "" "[dgkstvz]" "(D|Dn)" 31 | "EiB" "" "[dgkstvz]" "(D|Dn)" 32 | "iiB" "" "[dgkstvz]" "(D|Dn)" 33 | "IiB" "" "[dgkstvz]" "(D|Dn)" 34 | 35 | "B" "" "[bp]" "(o|om|im)" 36 | "B" "" "[dgkstvz]" "(o|on|in)" 37 | "B" "" "" "o" 38 | 39 | "aiF" "" "[bp]" "(D|Dm)" 40 | "oiF" "" "[bp]" "(D|Dm)" 41 | "uiF" "" "[bp]" "(D|Dm)" 42 | "eiF" "" "[bp]" "(D|Dm)" 43 | "EiF" "" "[bp]" "(D|Dm)" 44 | "iiF" "" "[bp]" "(D|Dm)" 45 | "IiF" "" "[bp]" "(D|Dm)" 46 | 47 | "aiF" "" "[dgkstvz]" "(D|Dn)" 48 | "oiF" "" "[dgkstvz]" "(D|Dn)" 49 | "uiF" "" "[dgkstvz]" "(D|Dn)" 50 | "eiF" "" "[dgkstvz]" "(D|Dn)" 51 | "EiF" "" "[dgkstvz]" "(D|Dn)" 52 | "iiF" "" "[dgkstvz]" "(D|Dn)" 53 | "IiF" "" "[dgkstvz]" "(D|Dn)" 54 | 55 | "F" "" "[bp]" "(i|im|om)" 56 | "F" "" "[dgkstvz]" "(i|in|on)" 57 | "F" "" "" "i" 58 | 59 | "P" "" "" "(o|u)" 60 | 61 | "I" "" "$" "i" 62 | "I" "" "[^k]$" "i" 63 | "Ik" "[lr]" "$" "(ik|Qk)" 64 | "Ik" "" "$" "ik" 65 | "sIts" "" "$" "(sits|sQts)" 66 | "Its" "" "$" "its" 67 | "I" "[aeiAEBFIou]" "" "i" 68 | "I" "" "" "(i|Q)" 69 | 70 | "au" "" "" "(D|a|u)" 71 | "ou" "" "" "(D|o|u)" 72 | "ai" "" "" "(D|a|i)" 73 | "oi" "" "" "(D|o|i)" 74 | "ui" "" "" "(D|u|i)" 75 | 76 | "a" "" "" "(a|o)" 77 | "e" "" "" "i" 78 | 79 | "E" "" "[fklmnprst]$" "i" 80 | "E" "" "ts$" "i" 81 | "E" "" "$" "i" 82 | "E" "[DaoiuQ]" "" "i" 83 | "E" "" "[aoQ]" "i" 84 | "E" "" "" "(Y|i)" 85 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_portuguese.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_romanian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_polish -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_russian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // VOWELS 19 | "I" "" "$" "i" 20 | "I" "" "[^k]$" "i" 21 | "Ik" "[lr]" "$" "(ik|Qk)" 22 | "Ik" "" "$" "ik" 23 | "sIts" "" "$" "(sits|sQts)" 24 | "Its" "" "$" "its" 25 | "I" "[aeiEIou]" "" "i" 26 | "I" "" "" "(i|Q)" 27 | 28 | "au" "" "" "(D|a|u)" 29 | "ou" "" "" "(D|o|u)" 30 | "ai" "" "" "(D|a|i)" 31 | "oi" "" "" "(D|o|i)" 32 | "ui" "" "" "(D|u|i)" 33 | 34 | "om" "" "[bp]" "(om|im)" 35 | "on" "" "[dgkstvz]" "(on|in)" 36 | "em" "" "[bp]" "(im|om)" 37 | "en" "" "[dgkstvz]" "(in|on)" 38 | "Em" "" "[bp]" "(im|Ym|om)" 39 | "En" "" "[dgkstvz]" "(in|Yn|on)" 40 | 41 | "a" "" "" "(a|o)" 42 | "e" "" "" "i" 43 | 44 | "E" "" "[fklmnprsStv]$" "i" 45 | "E" "" "ts$" "i" 46 | "E" "[DaoiuQ]" "" "i" 47 | "E" "" "[aoQ]" "i" 48 | "E" "" "" "(Y|i)" 49 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_spanish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french 19 | 20 | "B" "" "" "(b|v)" 21 | "V" "" "" "(b|v)" 22 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_approx_turkish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_any.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // GENERAL 19 | // A, E, I, O, P, U should create variants, 20 | // EE = final "e" (english & french) 21 | // V, B from Spanish 22 | // but a, e, i, o, u should not create any new variant 23 | "EE" "" "$" "e" 24 | 25 | "A" "" "" "a" 26 | "E" "" "" "e" 27 | "I" "" "" "i" 28 | "O" "" "" "o" 29 | "P" "" "" "o" 30 | "U" "" "" "u" 31 | 32 | "B" "" "[fktSs]" "p" 33 | "B" "" "p" "" 34 | "B" "" "$" "p" 35 | "V" "" "[pktSs]" "f" 36 | "V" "" "f" "" 37 | "V" "" "$" "f" 38 | 39 | "B" "" "" "b" 40 | "V" "" "" "v" 41 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_approx_common.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // GENERAL 19 | "h" "" "$" "" 20 | 21 | // VOICED - UNVOICED CONSONANTS 22 | "b" "" "[fktSs]" "p" 23 | "b" "" "p" "" 24 | "b" "" "$" "p" 25 | "p" "" "[vgdZz]" "b" // Ashk: "v" excluded (everythere) 26 | "p" "" "b" "" 27 | 28 | "v" "" "[pktSs]" "f" 29 | "v" "" "f" "" 30 | "v" "" "$" "f" 31 | "f" "" "[vbgdZz]" "v" 32 | "f" "" "v" "" 33 | 34 | "g" "" "[pftSs]" "k" 35 | "g" "" "k" "" 36 | "g" "" "$" "k" 37 | "k" "" "[vbdZz]" "g" 38 | "k" "" "g" "" 39 | 40 | "d" "" "[pfkSs]" "t" 41 | "d" "" "t" "" 42 | "d" "" "$" "t" 43 | "t" "" "[vbgZz]" "d" 44 | "t" "" "d" "" 45 | 46 | "s" "" "dZ" "" 47 | "s" "" "tS" "" 48 | 49 | "z" "" "[pfkSt]" "s" 50 | "z" "" "[sSzZ]" "" 51 | "s" "" "[sSzZ]" "" 52 | "Z" "" "[sSzZ]" "" 53 | "S" "" "[sSzZ]" "" 54 | 55 | // SIMPLIFICATION OF CONSONANT CLUSTERS 56 | "jnm" "" "" "jm" 57 | 58 | // DOUBLE --> SINGLE 59 | "ji" "^" "" "i" 60 | "jI" "^" "" "I" 61 | 62 | "a" "" "[aA]" "" 63 | "a" "A" "" "" 64 | "A" "" "A" "" 65 | 66 | "b" "" "b" "" 67 | "d" "" "d" "" 68 | "f" "" "f" "" 69 | "g" "" "g" "" 70 | "j" "" "j" "" 71 | "k" "" "k" "" 72 | "l" "" "l" "" 73 | "m" "" "m" "" 74 | "n" "" "n" "" 75 | "p" "" "p" "" 76 | "r" "" "r" "" 77 | "t" "" "t" "" 78 | "v" "" "v" "" 79 | "z" "" "z" "" 80 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_arabic.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "1" "" "" "" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_common.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_exact_approx_common 19 | 20 | "H" "" "" "" 21 | 22 | // VOICED - UNVOICED CONSONANTS 23 | "s" "[^t]" "[bgZd]" "z" 24 | "Z" "" "[pfkst]" "S" 25 | "Z" "" "$" "S" 26 | "S" "" "[bgzd]" "Z" 27 | "z" "" "$" "s" 28 | 29 | "ji" "[aAoOeEiIuU]" "" "j" 30 | "jI" "[aAoOeEiIuU]" "" "j" 31 | "je" "[aAoOeEiIuU]" "" "j" 32 | "jE" "[aAoOeEiIuU]" "" "j" 33 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_cyrillic.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_czech.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_dutch.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_english.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_exact_russian -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_french.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_german.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include gen_exact_any -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_greek.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_greeklatin.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "N" "" "" "n" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_hungarian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_italian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_polish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "B" "" "" "a" 19 | "F" "" "" "e" 20 | "P" "" "" "o" 21 | 22 | "E" "" "" "e" 23 | "I" "" "" "i" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_portuguese.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_romanian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_russian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "E" "" "" "e" 19 | "I" "" "" "i" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_spanish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "B" "" "" "b" 19 | "V" "" "" "v" 20 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_exact_turkish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_languages.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | any 19 | arabic 20 | cyrillic 21 | czech 22 | dutch 23 | english 24 | french 25 | german 26 | greek 27 | greeklatin 28 | hebrew 29 | hungarian 30 | italian 31 | polish 32 | portuguese 33 | romanian 34 | russian 35 | spanish 36 | turkish 37 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_arabic.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // General 19 | "ا" "" "" "a" // alif isol & init 20 | "ب" "" "$" "b" 21 | "ب" "" "" "b1" // ba' isol 22 | "ت" "" "$" "t" 23 | "ت" "" "" "t1" // ta' isol 24 | "ث" "" "$" "t" 25 | "ث" "" "" "t1" // tha' isol 26 | "ج" "" "$" "(dZ|Z)" 27 | "ج" "" "" "(dZ1|Z1)" // jim isol 28 | "ح" "^" "" "1" 29 | "ح" "" "$" "1" 30 | "ح" "" "" "(h1|1)" // h.a' isol 31 | "خ" "" "$" "x" 32 | "خ" "" "" "x1" // kha' isol 33 | "د" "" "$" "d" 34 | "د" "" "" "d1" // dal isol & init 35 | "ذ" "" "$" "d" 36 | "ذ" "" "" "d1" // dhal isol & init 37 | "ر" "" "$" "r" 38 | "ر" "" "" "r1" // ra' isol & init 39 | "ز" "" "$" "z" 40 | "ز" "" "" "z1" // za' isol & init 41 | "س" "" "$" "s" 42 | "س" "" "" "s1" // sin isol 43 | "ش" "" "$" "S" 44 | "ش" "" "" "S1" // shin isol 45 | "ص" "" "$" "s" 46 | "ص" "" "" "s1" // s.ad isol 47 | "ض" "" "$" "d" 48 | "ض" "" "" "d1" // d.ad isol 49 | "ط" "" "$" "t" 50 | "ط" "" "" "t1" // t.a' isol 51 | "ظ" "" "$" "z" 52 | "ظ" "" "" "z1" // z.a' isol 53 | "ع" "^" "" "1" 54 | "ع" "" "$" "1" 55 | "ع" "" "" "(h1|1)" // ayin isol 56 | "غ" "" "$" "g" 57 | "غ" "" "" "g1" // ghayin isol 58 | "ف" "" "$" "f" 59 | "ف" "" "" "f1" // fa' isol 60 | "ق" "" "$" "k" 61 | "ق" "" "" "k1" // qaf isol 62 | "ك" "" "$" "k" 63 | "ك" "" "" "k1" // kaf isol 64 | "ل" "" "$" "l" 65 | "ل" "" "" "l1" // lam isol 66 | "م" "" "$" "m" 67 | "م" "" "" "m1" // mim isol 68 | "ن" "" "$" "n" 69 | "ن" "" "" "n1" // nun isol 70 | "ه" "^" "" "1" 71 | "ه" "" "$" "1" 72 | "ه" "" "" "(h1|1)" // h isol 73 | "و" "" "$" "(u|v)" 74 | "و" "" "" "(u|v1)" // waw, isol + init 75 | "ي‎" "" "$" "(i|j)" 76 | "ي‎" "" "" "(i|j1)" // ya' isol 77 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_czech.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "ch" "" "" "x" 19 | "qu" "" "" "(k|kv)" 20 | "aue" "" "" "aue" 21 | "ei" "" "" "(ej|aj)" 22 | "i" "[aou]" "" "j" 23 | "i" "" "[aeou]" "j" 24 | 25 | "č" "" "" "tS" 26 | "š" "" "" "S" 27 | "ň" "" "" "n" 28 | "ť" "" "" "(t|tj)" 29 | "ď" "" "" "(d|dj)" 30 | "ř" "" "" "(r|rZ)" 31 | 32 | "á" "" "" "a" 33 | "é" "" "" "e" 34 | "í" "" "" "i" 35 | "ó" "" "" "o" 36 | "ú" "" "" "u" 37 | "ý" "" "" "i" 38 | "ě" "" "" "(e|je)" 39 | "ů" "" "" "u" 40 | 41 | // LATIN ALPHABET 42 | "a" "" "" "a" 43 | "b" "" "" "b" 44 | "c" "" "" "ts" 45 | "d" "" "" "d" 46 | "e" "" "" "E" 47 | "f" "" "" "f" 48 | "g" "" "" "g" 49 | "h" "" "" "(h|g)" 50 | "i" "" "" "I" 51 | "j" "" "" "j" 52 | "k" "" "" "k" 53 | "l" "" "" "l" 54 | "m" "" "" "m" 55 | "n" "" "" "n" 56 | "o" "" "" "o" 57 | "p" "" "" "p" 58 | "q" "" "" "(k|kv)" 59 | "r" "" "" "r" 60 | "s" "" "" "s" 61 | "t" "" "" "t" 62 | "u" "" "" "u" 63 | "v" "" "" "v" 64 | "w" "" "" "v" 65 | "x" "" "" "ks" 66 | "y" "" "" "i" 67 | "z" "" "" "z" 68 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_dutch.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // CONSONANTS 19 | "ssj" "" "" "S" 20 | "sj" "" "" "S" 21 | "ch" "" "" "x" 22 | "c" "" "[eiy]" "ts" 23 | "ck" "" "" "k" // German 24 | "pf" "" "" "(pf|p|f)" // German 25 | "ph" "" "" "(ph|f)" 26 | "qu" "" "" "kv" 27 | "th" "^" "" "t" // German 28 | "th" "" "[äöüaeiou]" "(t|th)" // German 29 | "th" "" "" "t" // German 30 | "ss" "" "" "s" 31 | "h" "[aeiouy]" "" "" 32 | 33 | // VOWELS 34 | "aue" "" "" "aue" 35 | "ou" "" "" "au" 36 | "ie" "" "" "(Q|i)" 37 | "uu" "" "" "(Q|u)" 38 | "ee" "" "" "e" 39 | "eu" "" "" "(Y|Yj)" // Dutch Y 40 | "aa" "" "" "a" 41 | "oo" "" "" "o" 42 | "oe" "" "" "u" 43 | "ij" "" "" "ej" 44 | "ui" "" "" "(Y|uj)" 45 | "ei" "" "" "(ej|aj)" // Dutch ej 46 | 47 | "i" "" "[aou]" "j" 48 | "y" "" "[aeou]" "j" 49 | "i" "[aou]" "" "j" 50 | "y" "[aeou]" "" "j" 51 | 52 | // LATIN ALPHABET 53 | "a" "" "" "a" 54 | "b" "" "" "b" 55 | "c" "" "" "k" 56 | "d" "" "" "d" 57 | "e" "" "" "e" 58 | "f" "" "" "f" 59 | "g" "" "" "(g|x)" 60 | "h" "" "" "h" 61 | "i" "" "" "(i|Q)" 62 | "j" "" "" "j" 63 | "k" "" "" "k" 64 | "l" "" "" "l" 65 | "m" "" "" "m" 66 | "n" "" "" "n" 67 | "o" "" "" "o" 68 | "p" "" "" "p" 69 | "q" "" "" "k" 70 | "r" "" "" "r" 71 | "s" "" "" "s" 72 | "t" "" "" "t" 73 | "u" "" "" "(u|Q)" 74 | "v" "" "" "v" 75 | "w" "" "" "(w|v)" 76 | "x" "" "" "ks" 77 | "y" "" "" "i" 78 | "z" "" "" "z" 79 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // General = Ashkenazic 19 | 20 | "אי" "" "" "i" 21 | "עי" "" "" "i" 22 | "עו" "" "" "VV" 23 | "או" "" "" "VV" 24 | 25 | "ג׳" "" "" "Z" 26 | "ד׳" "" "" "dZ" 27 | 28 | "א" "" "" "L" 29 | "ב" "" "" "b" 30 | "ג" "" "" "g" 31 | "ד" "" "" "d" 32 | 33 | "ה" "^" "" "1" 34 | "ה" "" "$" "1" 35 | "ה" "" "" "" 36 | 37 | "וו" "" "" "V" 38 | "וי" "" "" "WW" 39 | "ו" "" "" "W" 40 | "ז" "" "" "z" 41 | "ח" "" "" "X" 42 | "ט" "" "" "T" 43 | "יי" "" "" "i" 44 | "י" "" "" "i" 45 | "ך" "" "" "X" 46 | "כ" "^" "" "K" 47 | "כ" "" "" "k" 48 | "ל" "" "" "l" 49 | "ם" "" "" "m" 50 | "מ" "" "" "m" 51 | "ן" "" "" "n" 52 | "נ" "" "" "n" 53 | "ס" "" "" "s" 54 | "ע" "" "" "L" 55 | "ף" "" "" "f" 56 | "פ" "" "" "f" 57 | "ץ" "" "" "C" 58 | "צ" "" "" "C" 59 | "ק" "" "" "K" 60 | "ר" "" "" "r" 61 | "ש" "" "" "s" 62 | "ת" "" "" "TB" // only Ashkenazic 63 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_hungarian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // GENERAL 19 | 20 | // CONSONANTS 21 | "sz" "" "" "s" 22 | "zs" "" "" "Z" 23 | "cs" "" "" "tS" 24 | 25 | "ay" "" "" "(oj|aj)" 26 | "ai" "" "" "(oj|aj)" 27 | "aj" "" "" "(oj|aj)" 28 | 29 | "ei" "" "" "(aj|ej)" // German element 30 | "ey" "" "" "(aj|ej)" // German element 31 | 32 | "y" "[áo]" "" "j" 33 | "i" "[áo]" "" "j" 34 | "ee" "" "" "(ej|e)" 35 | "ely" "" "" "(ej|eli)" 36 | "ly" "" "" "(j|li)" 37 | "gy" "" "[aeouáéóúüöőű]" "dj" 38 | "gy" "" "" "(d|gi)" 39 | "ny" "" "[aeouáéóúüöőű]" "nj" 40 | "ny" "" "" "(n|ni)" 41 | "ty" "" "[aeouáéóúüöőű]" "tj" 42 | "ty" "" "" "(t|ti)" 43 | "qu" "" "" "(ku|kv)" 44 | "h" "" "$" "" 45 | 46 | // SPECIAL VOWELS 47 | "á" "" "" "a" 48 | "é" "" "" "e" 49 | "í" "" "" "i" 50 | "ó" "" "" "o" 51 | "ú" "" "" "u" 52 | "ö" "" "" "Y" 53 | "ő" "" "" "Y" 54 | "ü" "" "" "Q" 55 | "ű" "" "" "Q" 56 | 57 | // LATIN ALPHABET 58 | "a" "" "" "a" 59 | "b" "" "" "b" 60 | "c" "" "" "ts" 61 | "d" "" "" "d" 62 | "e" "" "" "E" 63 | "f" "" "" "f" 64 | "g" "" "" "g" 65 | "h" "" "" "h" 66 | "i" "" "" "I" 67 | "j" "" "" "j" 68 | "k" "" "" "k" 69 | "l" "" "" "l" 70 | "m" "" "" "m" 71 | "n" "" "" "n" 72 | "o" "" "" "o" 73 | "p" "" "" "p" 74 | "q" "" "" "k" 75 | "r" "" "" "r" 76 | "s" "" "" "(S|s)" 77 | "t" "" "" "t" 78 | "u" "" "" "u" 79 | "v" "" "" "v" 80 | "w" "" "" "v" 81 | "x" "" "" "ks" 82 | "y" "" "" "i" 83 | "z" "" "" "z" 84 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_italian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "kh" "" "" "x" // foreign 19 | 20 | "gli" "" "" "(l|gli)" 21 | "gn" "" "[aeou]" "(n|nj|gn)" 22 | "gni" "" "" "(ni|gni)" 23 | 24 | "gi" "" "[aeou]" "dZ" 25 | "gg" "" "[ei]" "dZ" 26 | "g" "" "[ei]" "dZ" 27 | "h" "[bdgt]" "" "g" // gh is It; others from Arabic translit 28 | "h" "" "$" "" // foreign 29 | 30 | "ci" "" "[aeou]" "tS" 31 | "ch" "" "[ei]" "k" 32 | "sc" "" "[ei]" "S" 33 | "cc" "" "[ei]" "tS" 34 | "c" "" "[ei]" "tS" 35 | "s" "[aeiou]" "[aeiou]" "z" 36 | 37 | "i" "[aeou]" "" "j" 38 | "i" "" "[aeou]" "j" 39 | "y" "[aeou]" "" "j" // foreign 40 | "y" "" "[aeou]" "j" // foreign 41 | 42 | "qu" "" "" "k" 43 | "uo" "" "" "(vo|o)" 44 | "u" "" "[aei]" "v" 45 | 46 | "�" "" "" "e" 47 | "�" "" "" "e" 48 | "�" "" "" "o" 49 | "�" "" "" "o" 50 | 51 | // LATIN ALPHABET 52 | "a" "" "" "a" 53 | "b" "" "" "b" 54 | "c" "" "" "k" 55 | "d" "" "" "d" 56 | "e" "" "" "e" 57 | "f" "" "" "f" 58 | "g" "" "" "g" 59 | "h" "" "" "h" 60 | "i" "" "" "i" 61 | "j" "" "" "(Z|dZ|j)" // foreign 62 | "k" "" "" "k" 63 | "l" "" "" "l" 64 | "m" "" "" "m" 65 | "n" "" "" "n" 66 | "o" "" "" "o" 67 | "p" "" "" "p" 68 | "q" "" "" "k" 69 | "r" "" "" "r" 70 | "s" "" "" "s" 71 | "t" "" "" "t" 72 | "u" "" "" "u" 73 | "v" "" "" "v" 74 | "w" "" "" "v" // foreign 75 | "x" "" "" "ks" // foreign 76 | "y" "" "" "i" // foreign 77 | "z" "" "" "(ts|dz)" 78 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_romanian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "ce" "" "" "tSe" 19 | "ci" "" "" "(tSi|tS)" 20 | "ch" "" "[ei]" "k" 21 | "ch" "" "" "x" // foreign 22 | 23 | "gi" "" "" "(dZi|dZ)" 24 | "g" "" "[ei]" "dZ" 25 | "gh" "" "" "g" 26 | 27 | "i" "[aeou]" "" "j" 28 | "i" "" "[aeou]" "j" 29 | "ţ" "" "" "ts" 30 | "ş" "" "" "S" 31 | "qu" "" "" "k" 32 | 33 | "î" "" "" "i" 34 | "ea" "" "" "ja" 35 | "ă" "" "" "(e|a)" 36 | "aue" "" "" "aue" 37 | 38 | // LATIN ALPHABET 39 | "a" "" "" "a" 40 | "b" "" "" "b" 41 | "c" "" "" "k" 42 | "d" "" "" "d" 43 | "e" "" "" "E" 44 | "f" "" "" "f" 45 | "g" "" "" "g" 46 | "h" "" "" "(x|h)" 47 | "i" "" "" "I" 48 | "j" "" "" "Z" 49 | "k" "" "" "k" 50 | "l" "" "" "l" 51 | "m" "" "" "m" 52 | "n" "" "" "n" 53 | "o" "" "" "o" 54 | "p" "" "" "p" 55 | "q" "" "" "k" 56 | "r" "" "" "r" 57 | "s" "" "" "s" 58 | "t" "" "" "t" 59 | "u" "" "" "u" 60 | "v" "" "" "v" 61 | "w" "" "" "v" 62 | "x" "" "" "ks" 63 | "y" "" "" "i" 64 | "z" "" "" "z" 65 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/gen_rules_turkish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "ç" "" "" "tS" 19 | "ğ" "" "" "" // to show that previous vowel is long 20 | "ş" "" "" "S" 21 | "ü" "" "" "Q" 22 | "ö" "" "" "Y" 23 | "ı" "" "" "(e|i|)" // as "e" in English "label" 24 | 25 | "a" "" "" "a" 26 | "b" "" "" "b" 27 | "c" "" "" "dZ" 28 | "d" "" "" "d" 29 | "e" "" "" "e" 30 | "f" "" "" "f" 31 | "g" "" "" "g" 32 | "h" "" "" "h" 33 | "i" "" "" "i" 34 | "j" "" "" "Z" 35 | "k" "" "" "k" 36 | "l" "" "" "l" 37 | "m" "" "" "m" 38 | "n" "" "" "n" 39 | "o" "" "" "o" 40 | "p" "" "" "p" 41 | "q" "" "" "k" // foreign words 42 | "r" "" "" "r" 43 | "s" "" "" "s" 44 | "t" "" "" "t" 45 | "u" "" "" "u" 46 | "v" "" "" "v" 47 | "w" "" "" "v" // foreign words 48 | "x" "" "" "ks" // foreign words 49 | "y" "" "" "j" 50 | "z" "" "" "z" 51 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/lang.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_approx_any.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // SEPHARDIC 19 | 20 | "E" "" "" "" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_approx_french.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_approx_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_approx_italian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include sep_approx_french -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_approx_portuguese.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include sep_approx_french 19 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_approx_spanish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include sep_approx_french 19 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_any.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "E" "" "" "e" -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_approx_common.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // Sephardic 19 | 20 | "h" "" "$" "" 21 | 22 | // VOICED - UNVOICED CONSONANTS 23 | "b" "" "[fktSs]" "p" 24 | "b" "" "p" "" 25 | "b" "" "$" "p" 26 | "p" "" "[vgdZz]" "b" 27 | "p" "" "b" "" 28 | 29 | "v" "" "[pktSs]" "f" 30 | "v" "" "f" "" 31 | "v" "" "$" "f" 32 | "f" "" "[vbgdZz]" "v" 33 | "f" "" "v" "" 34 | 35 | "g" "" "[pftSs]" "k" 36 | "g" "" "k" "" 37 | "g" "" "$" "k" 38 | "k" "" "[vbdZz]" "g" 39 | "k" "" "g" "" 40 | 41 | "d" "" "[pfkSs]" "t" 42 | "d" "" "t" "" 43 | "d" "" "$" "t" 44 | "t" "" "[vbgZz]" "d" 45 | "t" "" "d" "" 46 | 47 | "s" "" "dZ" "" 48 | "s" "" "tS" "" 49 | 50 | "z" "" "[pfkSt]" "s" 51 | "z" "" "[sSzZ]" "" 52 | "s" "" "[sSzZ]" "" 53 | "Z" "" "[sSzZ]" "" 54 | "S" "" "[sSzZ]" "" 55 | 56 | // SIMPLIFICATION OF CONSONANT CLUSTERS 57 | "nm" "" "" "m" 58 | 59 | // DOUBLE --> SINGLE 60 | "ji" "^" "" "i" 61 | 62 | "a" "" "a" "" 63 | "b" "" "b" "" 64 | "d" "" "d" "" 65 | "e" "" "e" "" 66 | "f" "" "f" "" 67 | "g" "" "g" "" 68 | "i" "" "i" "" 69 | "k" "" "k" "" 70 | "l" "" "l" "" 71 | "m" "" "m" "" 72 | "n" "" "n" "" 73 | "o" "" "o" "" 74 | "p" "" "p" "" 75 | "r" "" "r" "" 76 | "t" "" "t" "" 77 | "u" "" "u" "" 78 | "v" "" "v" "" 79 | "z" "" "z" "" 80 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_common.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include sep_exact_approx_common 19 | 20 | "h" "" "" "" 21 | //"C" "" "" "k" // c that can actually be � 22 | 23 | // VOICED - UNVOICED CONSONANTS 24 | "s" "[^t]" "[bgZd]" "z" 25 | "Z" "" "[pfkst]" "S" 26 | "Z" "" "$" "S" 27 | "S" "" "[bgzd]" "Z" 28 | "z" "" "$" "s" 29 | 30 | //special character to deal correctly in Hebrew match 31 | "B" "" "" "b" 32 | "V" "" "" "v" 33 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_french.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // Sephadic -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_italian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_portuguese.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_exact_spanish.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // empty -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_hebrew_common.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #include sep_exact_approx_common 19 | 20 | "E" "" "" "" // final French "e": only in Sephardic 21 | 22 | "ts" "" "" "C" // for not confusion Gutes [=guts] and Guts [=guc] 23 | "tS" "" "" "C" // same reason 24 | "S" "" "" "s" 25 | "p" "" "" "f" 26 | "b" "^" "" "b" 27 | "b" "" "" "(b|v)" 28 | 29 | "ja" "" "" "i" 30 | "je" "" "" "i" 31 | "aj" "" "" "i" 32 | "j" "" "" "i" 33 | 34 | "a" "^" "" "1" 35 | "e" "^" "" "1" 36 | "a" "" "$" "1" 37 | "e" "" "$" "1" 38 | 39 | "a" "" "" "" 40 | "e" "" "" "" 41 | 42 | "oj" "^" "" "(u|vi)" 43 | "uj" "^" "" "(u|vi)" 44 | 45 | "oj" "" "" "u" 46 | "uj" "" "" "u" 47 | 48 | "ou" "^" "" "(u|v|1)" 49 | "o" "^" "" "(u|v|1)" 50 | "u" "^" "" "(u|v|1)" 51 | 52 | "o" "" "$" "(u|1)" 53 | "u" "" "$" "(u|1)" 54 | 55 | "ou" "" "" "u" 56 | "o" "" "" "u" 57 | 58 | "VV" "" "" "u" // alef/ayin + vov from ruleshebrew 59 | "L" "^" "" "1" // alef/ayin from ruleshebrew 60 | "L" "" "$" "1" // alef/ayin from ruleshebrew 61 | "L" "" "" " " // alef/ayin from ruleshebrew 62 | "WW" "^" "" "(vi|u)" // vav-yod from ruleshebrew 63 | "WW" "" "" "u" // vav-yod from ruleshebrew 64 | "W" "^" "" "(u|v)" // vav from ruleshebrew 65 | "W" "" "" "u" // vav from ruleshebrew 66 | 67 | // "g" "" "" "(g|Z)" 68 | // "z" "" "" "(z|Z)" 69 | // "d" "" "" "(d|dZ)" 70 | 71 | "T" "" "" "t" // tet from ruleshebrew 72 | 73 | // "k" "" "" "(k|x)" 74 | // "x" "" "" "(k|x)" 75 | "K" "" "" "k" // kof and initial kaf from ruleshebrew 76 | "X" "" "" "x" // khet and final kaf from ruleshebrew 77 | 78 | // special for Spanish initial B/V 79 | "B" "" "" "v" 80 | "V" "" "" "b" 81 | 82 | "H" "^" "" "(x|1)" 83 | "H" "" "$" "(x|1)" 84 | "H" "" "" "(x|)" 85 | "h" "^" "" "1" 86 | "h" "" "" "" 87 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_languages.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | any 19 | french 20 | hebrew 21 | italian 22 | portuguese 23 | spanish 24 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_rules_french.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // Sephardic 19 | 20 | // CONSONANTS 21 | "kh" "" "" "x" // foreign 22 | "ph" "" "" "f" 23 | 24 | "ç" "" "" "s" 25 | "x" "" "" "ks" 26 | "ch" "" "" "S" 27 | "c" "" "[eiyéèê]" "s" 28 | "c" "" "" "k" 29 | "gn" "" "" "(n|gn)" 30 | "g" "" "[eiy]" "Z" 31 | "gue" "" "$" "k" 32 | "gu" "" "[eiy]" "g" 33 | //"aill" "" "e" "aj" // non Jewish 34 | //"ll" "" "e" "(l|j)" // non Jewish 35 | "que" "" "$" "k" 36 | "qu" "" "" "k" 37 | "q" "" "" "k" 38 | "s" "[aeiouyéèê]" "[aeiouyéèê]" "z" 39 | "h" "[bdgt]" "" "" // translit from Arabic 40 | "h" "" "$" "" // foreign 41 | "j" "" "" "Z" 42 | "w" "" "" "v" 43 | "ouh" "" "[aioe]" "(v|uh)" 44 | "ou" "" "[aeio]" "v" 45 | "uo" "" "" "(vo|o)" 46 | "u" "" "[aeio]" "v" 47 | 48 | // VOWELS 49 | "aue" "" "" "aue" 50 | "eau" "" "" "o" 51 | //"au" "" "" "(o|au)" // non Jewish 52 | "ai" "" "" "aj" // [e] is non Jewish 53 | "ay" "" "" "aj" // [e] is non Jewish 54 | "é" "" "" "e" 55 | "ê" "" "" "e" 56 | "è" "" "" "e" 57 | "à" "" "" "a" 58 | "â" "" "" "a" 59 | "où" "" "" "u" 60 | "ou" "" "" "u" 61 | "oi" "" "" "oj" // [ua] is non Jewish 62 | "ei" "" "" "ej" // [e] is non Jewish, in Ashk should be aj 63 | "ey" "" "" "ej" // [e] non Jewish, in Ashk should be aj 64 | //"eu" "" "" "(e|o)" // non Jewish 65 | "y" "[ou]" "" "j" 66 | "e" "" "$" "(e|)" 67 | "i" "" "[aou]" "j" 68 | "y" "" "[aoeu]" "j" 69 | "y" "" "" "i" 70 | 71 | // TRIVIAL 72 | "a" "" "" "a" 73 | "b" "" "" "b" 74 | "d" "" "" "d" 75 | "e" "" "" "e" 76 | "f" "" "" "f" 77 | "g" "" "" "g" 78 | "h" "" "" "h" 79 | "i" "" "" "i" 80 | "k" "" "" "k" 81 | "l" "" "" "l" 82 | "m" "" "" "m" 83 | "n" "" "" "n" 84 | "o" "" "" "o" 85 | "p" "" "" "p" 86 | "r" "" "" "r" 87 | "s" "" "" "s" 88 | "t" "" "" "t" 89 | "u" "" "" "u" 90 | "v" "" "" "v" 91 | "z" "" "" "z" 92 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_rules_hebrew.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | // Sephardic 19 | 20 | "אי" "" "" "i" 21 | "עי" "" "" "i" 22 | "עו" "" "" "VV" 23 | "או" "" "" "VV" 24 | 25 | "ג׳" "" "" "Z" 26 | "ד׳" "" "" "dZ" 27 | 28 | "א" "" "" "L" 29 | "ב" "" "" "b" 30 | "ג" "" "" "g" 31 | "ד" "" "" "d" 32 | 33 | "ה" "^" "" "1" 34 | "ה" "" "$" "1" 35 | "ה" "" "" "" 36 | 37 | "וו" "" "" "V" 38 | "וי" "" "" "WW" 39 | "ו" "" "" "W" 40 | "ז" "" "" "z" 41 | "ח" "" "" "X" 42 | "ט" "" "" "T" 43 | "יי" "" "" "i" 44 | "י" "" "" "i" 45 | "ך" "" "" "X" 46 | "כ" "^" "" "K" 47 | "כ" "" "" "k" 48 | "ל" "" "" "l" 49 | "ם" "" "" "m" 50 | "מ" "" "" "m" 51 | "ן" "" "" "n" 52 | "נ" "" "" "n" 53 | "ס" "" "" "s" 54 | "ע" "" "" "L" 55 | "ף" "" "" "f" 56 | "פ" "" "" "f" 57 | "ץ" "" "" "C" 58 | "צ" "" "" "C" 59 | "ק" "" "" "K" 60 | "ר" "" "" "r" 61 | "ש" "" "" "s" 62 | "ת" "" "" "T" // Special for Sephardim 63 | -------------------------------------------------------------------------------- /src/main/resources/org/apache/commons/codec/language/bm/sep_rules_italian.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | "kh" "" "" "x" // foreign 19 | 20 | "gli" "" "" "(l|gli)" 21 | "gn" "" "[aeou]" "(n|nj|gn)" 22 | "gni" "" "" "(ni|gni)" 23 | 24 | "gi" "" "[aeou]" "dZ" 25 | "gg" "" "[ei]" "dZ" 26 | "g" "" "[ei]" "dZ" 27 | "h" "[bdgt]" "" "g" // gh is It; others from Arabic translit 28 | 29 | "ci" "" "[aeou]" "tS" 30 | "ch" "" "[ei]" "k" 31 | "sc" "" "[ei]" "S" 32 | "cc" "" "[ei]" "tS" 33 | "c" "" "[ei]" "tS" 34 | "s" "[aeiou]" "[aeiou]" "z" 35 | 36 | "i" "[aeou]" "" "j" 37 | "i" "" "[aeou]" "j" 38 | "y" "[aeou]" "" "j" // foreign 39 | "y" "" "[aeou]" "j" // foreign 40 | 41 | "qu" "" "" "k" 42 | "uo" "" "" "(vo|o)" 43 | "u" "" "[aei]" "v" 44 | 45 | "�" "" "" "e" 46 | "�" "" "" "e" 47 | "�" "" "" "o" 48 | "�" "" "" "o" 49 | 50 | // LATIN ALPHABET 51 | "a" "" "" "a" 52 | "b" "" "" "b" 53 | "c" "" "" "k" 54 | "d" "" "" "d" 55 | "e" "" "" "e" 56 | "f" "" "" "f" 57 | "g" "" "" "g" 58 | "h" "" "" "h" 59 | "i" "" "" "i" 60 | "j" "" "" "(Z|dZ|j)" // foreign 61 | "k" "" "" "k" 62 | "l" "" "" "l" 63 | "m" "" "" "m" 64 | "n" "" "" "n" 65 | "o" "" "" "o" 66 | "p" "" "" "p" 67 | "q" "" "" "k" 68 | "r" "" "" "r" 69 | "s" "" "" "s" 70 | "t" "" "" "t" 71 | "u" "" "" "u" 72 | "v" "" "" "v" 73 | "w" "" "" "v" // foreign 74 | "x" "" "" "ks" // foreign 75 | "y" "" "" "i" // foreign 76 | "z" "" "" "(ts|dz)" 77 | -------------------------------------------------------------------------------- /src/media/logo.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/commons-codec/71090a179ffa96e371a72c55fa0ae2fa2b6d851b/src/media/logo.xcf -------------------------------------------------------------------------------- /src/site/resources/.htaccess: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # https://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | AddCharset utf-8 .txt .html 17 | -------------------------------------------------------------------------------- /src/site/resources/download_codec.cgi: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Just call the standard mirrors.cgi script. It will use download.html 3 | # as the input template. 4 | exec /www/www.apache.org/dyn/mirrors/mirrors.cgi $* -------------------------------------------------------------------------------- /src/site/resources/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/commons-codec/71090a179ffa96e371a72c55fa0ae2fa2b6d851b/src/site/resources/images/logo.png -------------------------------------------------------------------------------- /src/site/resources/profile.jacoco: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # https://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | # ----------------------------------------------------------------------------- 16 | # 17 | # Empty file used to automatically trigger JaCoCo profile from commons parent pom 18 | -------------------------------------------------------------------------------- /src/site/site.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /src/site/xdoc/security.xml: -------------------------------------------------------------------------------- 1 | 2 | 20 | 23 | 24 | Apache Commons Security Reports 25 | Apache Commons Team 26 | 27 | 28 |
29 |

30 | For information about reporting or asking questions about security, please see 31 | Apache Commons Security. 32 |

33 |

This page lists all security vulnerabilities fixed in released versions of this component. 34 |

35 |

Please note that binary patches are never provided. If you need to apply a source code patch, use the building instructions for the component version 36 | that you are using. 37 |

38 |

39 | If you need help on building this component or other help on following the instructions to mitigate the known vulnerabilities listed here, please send 40 | your questions to the public 41 | user mailing list. 42 |

43 |

If you have encountered an unlisted security vulnerability or other unexpected behavior that has security impact, or if the descriptions here are 44 | incomplete, please report them privately to the Apache Security Team. Thank you. 45 |

46 |
47 |
48 |

None.

49 |
50 | 51 |
-------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/BinaryEncoderAbstractTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | import static org.junit.jupiter.api.Assertions.assertThrows; 21 | 22 | import org.junit.jupiter.api.Test; 23 | 24 | /** 25 | */ 26 | public abstract class BinaryEncoderAbstractTest { 27 | 28 | protected abstract BinaryEncoder makeEncoder(); 29 | 30 | @Test 31 | public void testEncodeEmpty() throws Exception { 32 | final BinaryEncoder encoder = makeEncoder(); 33 | encoder.encode(new byte[0]); 34 | } 35 | 36 | @Test 37 | public void testEncodeNull() { 38 | assertThrows(EncoderException.class, () -> makeEncoder().encode(null)); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/CharEncodingTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | import static org.junit.jupiter.api.Assertions.assertEquals; 21 | 22 | import java.nio.charset.StandardCharsets; 23 | 24 | import org.junit.jupiter.api.Test; 25 | 26 | /** 27 | * Sanity checks for {@link CharEncoding}. 28 | */ 29 | public class CharEncodingTest { 30 | 31 | /** 32 | * We could make the constructor private in the future, it's a matter a style. 33 | */ 34 | @Test 35 | public void testConstructor() { 36 | new CharEncoding(); 37 | } 38 | 39 | @Test 40 | public void testIso8859_1() { 41 | assertEquals(StandardCharsets.ISO_8859_1.name(), CharEncoding.ISO_8859_1); 42 | } 43 | 44 | @Test 45 | public void testUsAscii() { 46 | assertEquals(StandardCharsets.US_ASCII.name(), CharEncoding.US_ASCII); 47 | } 48 | 49 | @Test 50 | public void testUtf16() { 51 | assertEquals(StandardCharsets.UTF_16.name(), CharEncoding.UTF_16); 52 | } 53 | 54 | @Test 55 | public void testUtf16Be() { 56 | assertEquals(StandardCharsets.UTF_16BE.name(), CharEncoding.UTF_16BE); 57 | } 58 | 59 | @Test 60 | public void testUtf16Le() { 61 | assertEquals(StandardCharsets.UTF_16LE.name(), CharEncoding.UTF_16LE); 62 | } 63 | 64 | @Test 65 | public void testUtf8() { 66 | assertEquals(StandardCharsets.UTF_8.name(), CharEncoding.UTF_8); 67 | } 68 | 69 | } 70 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/DecoderExceptionTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | import static org.junit.jupiter.api.Assertions.assertEquals; 21 | import static org.junit.jupiter.api.Assertions.assertNull; 22 | 23 | import org.junit.jupiter.api.Test; 24 | 25 | /** 26 | * Tests {@link DecoderException}. 27 | */ 28 | public class DecoderExceptionTest { 29 | 30 | private static final String MSG = "TEST"; 31 | 32 | private static final Throwable t = new Exception(); 33 | 34 | @Test 35 | public void testConstructor0() { 36 | final DecoderException e = new DecoderException(); 37 | assertNull(e.getMessage()); 38 | assertNull(e.getCause()); 39 | } 40 | 41 | @Test 42 | public void testConstructorString() { 43 | final DecoderException e = new DecoderException(MSG); 44 | assertEquals(MSG, e.getMessage()); 45 | assertNull(e.getCause()); 46 | } 47 | 48 | @Test 49 | public void testConstructorStringThrowable() { 50 | final DecoderException e = new DecoderException(MSG, t); 51 | assertEquals(MSG, e.getMessage()); 52 | assertEquals(t, e.getCause()); 53 | } 54 | 55 | @Test 56 | public void testConstructorThrowable() { 57 | final DecoderException e = new DecoderException(t); 58 | assertEquals(t.getClass().getName(), e.getMessage()); 59 | assertEquals(t, e.getCause()); 60 | } 61 | 62 | } 63 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/EncoderExceptionTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | import static org.junit.jupiter.api.Assertions.assertEquals; 21 | import static org.junit.jupiter.api.Assertions.assertNull; 22 | 23 | import org.junit.jupiter.api.Test; 24 | 25 | /** 26 | * Tests {@link EncoderException}. 27 | */ 28 | public class EncoderExceptionTest { 29 | 30 | private static final String MSG = "TEST"; 31 | 32 | private static final Throwable t = new Exception(); 33 | 34 | @Test 35 | public void testConstructor0() { 36 | final EncoderException e = new EncoderException(); 37 | assertNull(e.getMessage()); 38 | assertNull(e.getCause()); 39 | } 40 | 41 | @Test 42 | public void testConstructorString() { 43 | final EncoderException e = new EncoderException(MSG); 44 | assertEquals(MSG, e.getMessage()); 45 | assertNull(e.getCause()); 46 | } 47 | 48 | @Test 49 | public void testConstructorStringThrowable() { 50 | final EncoderException e = new EncoderException(MSG, t); 51 | assertEquals(MSG, e.getMessage()); 52 | assertEquals(t, e.getCause()); 53 | } 54 | 55 | @Test 56 | public void testConstructorThrowable() { 57 | final EncoderException e = new EncoderException(t); 58 | assertEquals(t.getClass().getName(), e.getMessage()); 59 | assertEquals(t, e.getCause()); 60 | } 61 | 62 | } 63 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/ResourcesTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec; 19 | 20 | import java.io.IOException; 21 | import java.io.InputStream; 22 | import java.util.Arrays; 23 | import java.util.List; 24 | 25 | import org.junit.jupiter.params.ParameterizedTest; 26 | import org.junit.jupiter.params.provider.MethodSource; 27 | 28 | /** 29 | * Tests {@link Resources}. 30 | */ 31 | public class ResourcesTest { 32 | 33 | static List getResourceNames() { 34 | return Arrays.asList("/org/apache/commons/codec/language/dmrules.txt", "/org/apache/commons/codec/language/bm/lang.txt"); 35 | } 36 | 37 | @ParameterizedTest 38 | @MethodSource("getResourceNames") 39 | public void testGetInputStream(final String resName) throws IOException { 40 | try (InputStream in = Resources.getInputStream(resName)) { 41 | // empty 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/binary/AllocateDirectHexTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.binary; 19 | 20 | import java.nio.ByteBuffer; 21 | 22 | public class AllocateDirectHexTest extends HexTest { 23 | 24 | @Override 25 | protected ByteBuffer allocate(final int capacity) { 26 | return ByteBuffer.allocateDirect(capacity); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/binary/Base32TestData.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.binary; 19 | 20 | /** 21 | * This random data was encoded by OpenSSL. Java had nothing to do with it. This data helps us test interop between 22 | * Commons-Codec and OpenSSL. Notice that OpenSSL creates 64 character lines instead of the 76 of Commons-Codec. 23 | * 24 | * @see RFC 2045 25 | */ 26 | public class Base32TestData { 27 | 28 | static final String STRING_FIXTURE = "Hello World"; 29 | 30 | static final String BASE32_FIXTURE = "JBSWY3DPEBLW64TMMQ======\r\n"; 31 | // static final String BASE32HEX_FIXTURE = "91IMOR3F41BMUSJCCG======"; 32 | 33 | } 34 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/binary/Codec105ErrorInputStream.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.binary; 19 | 20 | import java.io.IOException; 21 | import java.io.InputStream; 22 | 23 | /** 24 | * Emits three line-feeds '\n' in a row, one at a time, and then EOF. 25 | * 26 | * Recreates the bug described in CODEC-105. 27 | * 28 | * @since 1.5 29 | */ 30 | public class Codec105ErrorInputStream extends InputStream { 31 | private static final int EOF = -1; 32 | 33 | int countdown = 3; 34 | 35 | @Override 36 | public int read() throws IOException { 37 | if (this.countdown-- > 0) { 38 | return '\n'; 39 | } 40 | return EOF; 41 | } 42 | 43 | @Override 44 | public int read(final byte[] b, final int pos, final int len) throws IOException { 45 | if (this.countdown-- > 0) { 46 | b[pos] = '\n'; 47 | return 1; 48 | } 49 | return EOF; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/cli/DigestTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.cli; 19 | 20 | import static org.junit.jupiter.api.Assertions.assertThrows; 21 | 22 | import org.junit.jupiter.api.Test; 23 | 24 | /** 25 | * Tests {@link Digest}. 26 | */ 27 | public class DigestTest { 28 | 29 | /** 30 | * Tests if empty arguments are handled correctly. 31 | */ 32 | @Test 33 | public void testEmptyArguments() { 34 | assertThrows(IllegalArgumentException.class, () -> Digest.main(new String[0])); 35 | } 36 | /** 37 | * Tests if null arguments are handled correctly. 38 | */ 39 | @Test 40 | public void testNullArguments() { 41 | assertThrows(NullPointerException.class, () -> Digest.main(null)); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/digest/B64Test.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.commons.codec.digest; 18 | 19 | import static org.junit.jupiter.api.Assertions.assertEquals; 20 | import static org.junit.jupiter.api.Assertions.assertNotNull; 21 | 22 | import org.junit.jupiter.api.Test; 23 | 24 | public class B64Test { 25 | 26 | @Test 27 | public void testB64from24bit() { 28 | final StringBuilder buffer = new StringBuilder(""); 29 | B64.b64from24bit((byte) 8, (byte) 16, (byte) 64, 2, buffer); 30 | B64.b64from24bit((byte) 7, (byte) 77, (byte) 120, 4, buffer); 31 | assertEquals("./spo/", buffer.toString()); 32 | } 33 | 34 | @Test 35 | public void testB64T() { 36 | assertNotNull(new B64()); // for the 100% code coverage :) 37 | assertEquals(64, B64.B64T_ARRAY.length); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/digest/Blake3Test.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.commons.codec.digest; 18 | 19 | import static org.junit.jupiter.api.Assertions.assertThrows; 20 | 21 | import org.junit.jupiter.api.Test; 22 | 23 | public class Blake3Test { 24 | private static void assertThrowsProperExceptionWithKeySize(final int keySize) { 25 | assertThrows(IllegalArgumentException.class, () -> Blake3.initKeyedHash(new byte[keySize]), "Blake3 keys must be 32 bytes"); 26 | } 27 | 28 | @Test 29 | public void testShouldThrowIllegalArgumentExceptionWhenIncorrectKeySize() { 30 | for (int i = 0; i < 32; i++) { 31 | assertThrowsProperExceptionWithKeySize(i); 32 | } 33 | assertThrowsProperExceptionWithKeySize(33); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/digest/PureJavaCrc32CTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.commons.codec.digest; 18 | 19 | import static org.junit.jupiter.api.Assertions.assertEquals; 20 | 21 | import java.util.Arrays; 22 | 23 | import org.junit.jupiter.api.Test; 24 | 25 | /** 26 | * Tests {@link PureJavaCrc32C}. Test data was derived from https://tools.ietf.org/html/rfc3720#appendix-B.4 27 | */ 28 | public class PureJavaCrc32CTest { 29 | 30 | private final PureJavaCrc32C crc = new PureJavaCrc32C(); 31 | 32 | private final byte[] data = new byte[32]; 33 | 34 | // Using int because only want 32 bits 35 | private void check(final int expected) { 36 | crc.reset(); 37 | crc.update(data, 0, data.length); 38 | final int actual = (int) crc.getValue(); 39 | assertEquals(Integer.toHexString(expected), Integer.toHexString(actual)); 40 | } 41 | 42 | @Test 43 | public void testDecreasing() { 44 | for (int i = 0; i < data.length; i++) { 45 | data[i] = (byte) (31 - i); 46 | } 47 | check(0x113fdb5c); // 5c db 3f 11 48 | } 49 | 50 | @Test 51 | public void testIncreasing() { 52 | for (int i = 0; i < data.length; i++) { 53 | data[i] = (byte) i; 54 | } 55 | check(0x46dd794e); // 4e 79 dd 46 56 | } 57 | 58 | @Test 59 | public void testOnes() { 60 | Arrays.fill(data, (byte) 0xFF); 61 | check(0x62a8ab43); // 43 ab a8 62 62 | } 63 | 64 | @Test 65 | public void testZeros() { 66 | Arrays.fill(data, (byte) 0); 67 | check(0x8a9136aa); // aa 36 91 8a 68 | } 69 | 70 | } 71 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/digest/Sha2CryptTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.digest; 19 | 20 | import static org.junit.jupiter.api.Assertions.assertNotNull; 21 | 22 | import org.junit.jupiter.api.Test; 23 | 24 | public class Sha2CryptTest { 25 | 26 | @Test 27 | public void testCtor() { 28 | assertNotNull(new Sha2Crypt()); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/net/RFC1522OverrideTestCodec.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.net; 19 | 20 | import java.io.UnsupportedEncodingException; 21 | import java.nio.charset.Charset; 22 | import java.nio.charset.StandardCharsets; 23 | 24 | import org.apache.commons.codec.DecoderException; 25 | import org.apache.commons.codec.EncoderException; 26 | 27 | /** 28 | * Tests overriding the package private RFC1522Codec. 29 | */ 30 | class RFC1522OverrideTestCodec extends RFC1522Codec { 31 | 32 | RFC1522OverrideTestCodec() { 33 | super(StandardCharsets.UTF_8); 34 | } 35 | 36 | @Override 37 | protected String decodeText(final String text) throws DecoderException, UnsupportedEncodingException { 38 | return super.decodeText(text); 39 | } 40 | 41 | @Override 42 | protected byte[] doDecoding(final byte[] bytes) throws DecoderException { 43 | return null; 44 | } 45 | 46 | @Override 47 | protected byte[] doEncoding(final byte[] bytes) throws EncoderException { 48 | return null; 49 | } 50 | 51 | @Override 52 | protected String encodeText(final String text, final Charset charset) throws EncoderException { 53 | return super.encodeText(text, charset); 54 | } 55 | 56 | @Override 57 | protected String encodeText(final String text, final String charsetName) throws EncoderException { 58 | return super.encodeText(text, charsetName); 59 | } 60 | 61 | @Override 62 | protected String getEncoding() { 63 | return null; 64 | } 65 | 66 | } 67 | -------------------------------------------------------------------------------- /src/test/java/org/apache/commons/codec/net/UtilsTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * https://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.commons.codec.net; 19 | 20 | import org.junit.jupiter.api.Test; 21 | 22 | /** 23 | * Tests Utils. 24 | *

25 | * Methods currently get 100%/100% line/branch code coverage from other tests classes. 26 | *

27 | */ 28 | public class UtilsTest { 29 | 30 | /** 31 | * We could make the constructor private but there does not seem to be a point to jumping through extra code hoops 32 | * to restrict instantiation right now. 33 | */ 34 | @Test 35 | public void testConstructor() { 36 | new Utils(); 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /src/test/resources/org/apache/commons/codec/bla.tar.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/commons-codec/71090a179ffa96e371a72c55fa0ae2fa2b6d851b/src/test/resources/org/apache/commons/codec/bla.tar.xz -------------------------------------------------------------------------------- /src/test/resources/org/apache/commons/codec/empty.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/commons-codec/71090a179ffa96e371a72c55fa0ae2fa2b6d851b/src/test/resources/org/apache/commons/codec/empty.bin -------------------------------------------------------------------------------- /src/test/resources/org/apache/commons/codec/small.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/commons-codec/71090a179ffa96e371a72c55fa0ae2fa2b6d851b/src/test/resources/org/apache/commons/codec/small.bin --------------------------------------------------------------------------------