Commit Graph

115 Commits

Author SHA1 Message Date
Alan Orth 91a4367f38
src/main/java: Add comment 2020-08-01 11:01:27 +03:00
Alan Orth 8c23277382
src/main/resources: Start collecting CGSpace countries
I will use the same format as the ISO 3166-1 JSON to make parsing
easier. I will add a new "cgspace_name" key to indicate our custom
name, though the codes will map to the standard ISO 3166-1 codes.
2020-08-01 09:31:26 +03:00
Alan Orth 6477b923b6
Add working tagging of ISO 3166-1 countries
If an item has country metadata (cg.coverage.country) and no alpha
codes we check for name matches in ISO 3166 and add alpha_2 codes.
The name matching checks for a case-insensitive match on either an
ISO 3166-1 name, official name, or common name.
2020-08-01 00:05:21 +03:00
Alan Orth 6995d7a864
Match alpha_2 and alpha_3 JSON elements with class
For GSON to automatically map these to our class we need to make
sure they use the same name.
2020-08-01 00:02:27 +03:00
Alan Orth edd08c859a
CountryCodeTagger.java: Remove FileReader import
We are using an InputStream now.
2020-07-31 23:37:06 +03:00
Alan Orth 94ceabb732
Close BufferedReader after we use it 2020-07-31 22:26:50 +03:00
Alan Orth 9089ffb66f
Add TODO about using try-with-resource
This would automatically close the BufferedReader after we are done
with it, but it also means that the JSON object we create is lost
when we exit the try() scope...

See: https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html
2020-07-31 22:26:33 +03:00
Alan Orth af708933b2
Use BufferedReader for iso-codes JSON 2020-07-31 22:25:09 +03:00
Alan Orth bb9e53b220
README.md: Add note about iso-codes license
Debian's iso-codes project uses the LGPL v2.1 license.

See: https://salsa.debian.org/iso-codes-team/iso-codes/-/blob/main/COPYING
2020-07-31 22:23:35 +03:00
Alan Orth d11bd00fa9
Use country vocabs from package resources
Import a local copy of iso_3166-1.json from iso-codes version 4.5.0
so we don't need to load it from the system.

See: https://salsa.debian.org/iso-codes-team/iso-codes
2020-07-31 22:18:32 +03:00
Alan Orth 01be5c69ba
Add .gitignore 2020-07-31 22:01:05 +03:00
Alan Orth 4cf0626385
Update comments 2020-07-31 22:00:41 +03:00
Alan Orth f62b50f5a1
Use the @SerializedName annotation for ISO 3166-1
Our Java class needs to match the input JSON structure exactly, but
we can't use "3166-1" as a variable name so we tell GSON to use the
name "3166-1" when deserializing to countries.
2020-07-31 21:52:48 +03:00
Alan Orth 968bd354fe
Optimize imports 2020-07-31 21:42:41 +03:00
Alan Orth 89f1734a9a
Initial commit 2020-07-31 21:40:15 +03:00