diff --git a/app/src/main/java/fr/free/nrw/commons/upload/FileMetadataUtils.java b/app/src/main/java/fr/free/nrw/commons/upload/FileMetadataUtils.java deleted file mode 100644 index 3a6db30a7..000000000 --- a/app/src/main/java/fr/free/nrw/commons/upload/FileMetadataUtils.java +++ /dev/null @@ -1,59 +0,0 @@ -package fr.free.nrw.commons.upload; - -import timber.log.Timber; - -import static androidx.exifinterface.media.ExifInterface.TAG_ARTIST; -import static androidx.exifinterface.media.ExifInterface.TAG_BODY_SERIAL_NUMBER; -import static androidx.exifinterface.media.ExifInterface.TAG_CAMERA_OWNER_NAME; -import static androidx.exifinterface.media.ExifInterface.TAG_COPYRIGHT; -import static androidx.exifinterface.media.ExifInterface.TAG_GPS_ALTITUDE; -import static androidx.exifinterface.media.ExifInterface.TAG_GPS_ALTITUDE_REF; -import static androidx.exifinterface.media.ExifInterface.TAG_GPS_LATITUDE; -import static androidx.exifinterface.media.ExifInterface.TAG_GPS_LATITUDE_REF; -import static androidx.exifinterface.media.ExifInterface.TAG_GPS_LONGITUDE; -import static androidx.exifinterface.media.ExifInterface.TAG_GPS_LONGITUDE_REF; -import static androidx.exifinterface.media.ExifInterface.TAG_LENS_MAKE; -import static androidx.exifinterface.media.ExifInterface.TAG_LENS_MODEL; -import static androidx.exifinterface.media.ExifInterface.TAG_LENS_SERIAL_NUMBER; -import static androidx.exifinterface.media.ExifInterface.TAG_LENS_SPECIFICATION; -import static androidx.exifinterface.media.ExifInterface.TAG_MAKE; -import static androidx.exifinterface.media.ExifInterface.TAG_MODEL; -import static androidx.exifinterface.media.ExifInterface.TAG_SOFTWARE; - -/** - * Support utils for EXIF metadata handling - * - */ -public class FileMetadataUtils { - - /** - * Takes EXIF label from sharedPreferences as input and returns relevant EXIF tags - * - * @param pref EXIF sharedPreference label - * @return EXIF tags - */ - public static String[] getTagsFromPref(String pref) { - Timber.d("Retuning tags for pref:%s", pref); - switch (pref) { - case "Author": - return new String[]{TAG_ARTIST, TAG_CAMERA_OWNER_NAME}; - case "Copyright": - return new String[]{TAG_COPYRIGHT}; - case "Location": - return new String[]{TAG_GPS_LATITUDE, TAG_GPS_LATITUDE_REF, - TAG_GPS_LONGITUDE, TAG_GPS_LONGITUDE_REF, - TAG_GPS_ALTITUDE, TAG_GPS_ALTITUDE_REF}; - case "Camera Model": - return new String[]{TAG_MAKE, TAG_MODEL}; - case "Lens Model": - return new String[]{TAG_LENS_MAKE, TAG_LENS_MODEL, TAG_LENS_SPECIFICATION}; - case "Serial Numbers": - return new String[]{TAG_BODY_SERIAL_NUMBER, TAG_LENS_SERIAL_NUMBER}; - case "Software": - return new String[]{TAG_SOFTWARE}; - default: - return new String[]{}; - } - } - -} diff --git a/app/src/main/java/fr/free/nrw/commons/upload/FileMetadataUtils.kt b/app/src/main/java/fr/free/nrw/commons/upload/FileMetadataUtils.kt new file mode 100644 index 000000000..3f27f6f1e --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/upload/FileMetadataUtils.kt @@ -0,0 +1,61 @@ +package fr.free.nrw.commons.upload + +import androidx.exifinterface.media.ExifInterface +import timber.log.Timber + +/** + * Support utils for EXIF metadata handling + * + */ +object FileMetadataUtils { + /** + * Takes EXIF label from sharedPreferences as input and returns relevant EXIF tags + * + * @param pref EXIF sharedPreference label + * @return EXIF tags + */ + fun getTagsFromPref(pref: String): Array { + Timber.d("Retuning tags for pref:%s", pref) + return when (pref) { + "Author" -> arrayOf( + ExifInterface.TAG_ARTIST, + ExifInterface.TAG_CAMERA_OWNER_NAME + ) + + "Copyright" -> arrayOf( + ExifInterface.TAG_COPYRIGHT + ) + + "Location" -> arrayOf( + ExifInterface.TAG_GPS_LATITUDE, + ExifInterface.TAG_GPS_LATITUDE_REF, + ExifInterface.TAG_GPS_LONGITUDE, + ExifInterface.TAG_GPS_LONGITUDE_REF, + ExifInterface.TAG_GPS_ALTITUDE, + ExifInterface.TAG_GPS_ALTITUDE_REF + ) + + "Camera Model" -> arrayOf( + ExifInterface.TAG_MAKE, + ExifInterface.TAG_MODEL + ) + + "Lens Model" -> arrayOf( + ExifInterface.TAG_LENS_MAKE, + ExifInterface.TAG_LENS_MODEL, + ExifInterface.TAG_LENS_SPECIFICATION + ) + + "Serial Numbers" -> arrayOf( + ExifInterface.TAG_BODY_SERIAL_NUMBER, + ExifInterface.TAG_LENS_SERIAL_NUMBER + ) + + "Software" -> arrayOf( + ExifInterface.TAG_SOFTWARE + ) + + else -> arrayOf() + } + } +}