diff options
| author | 2023-03-08 15:38:03 -0500 | |
|---|---|---|
| committer | 2023-06-03 00:05:38 -0700 | |
| commit | bbe5dee9f8473b1aaf2059efd9ab83b7be444bf6 (patch) | |
| tree | 0a6f63be11c4bfa595e76f74fbf7421f067e34ff /src/android | |
| parent | android: Convert EmulationFragment to Kotlin (diff) | |
| download | yuzu-bbe5dee9f8473b1aaf2059efd9ab83b7be444bf6.tar.gz yuzu-bbe5dee9f8473b1aaf2059efd9ab83b7be444bf6.tar.xz yuzu-bbe5dee9f8473b1aaf2059efd9ab83b7be444bf6.zip | |
android: Convert Game to Kotlin
Diffstat (limited to 'src/android')
| -rw-r--r-- | src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.java | 76 | ||||
| -rw-r--r-- | src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.kt | 56 |
2 files changed, 56 insertions, 76 deletions
diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.java b/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.java deleted file mode 100644 index 681117268..000000000 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.java +++ /dev/null | |||
| @@ -1,76 +0,0 @@ | |||
| 1 | package org.yuzu.yuzu_emu.model; | ||
| 2 | |||
| 3 | import android.content.ContentValues; | ||
| 4 | import android.database.Cursor; | ||
| 5 | |||
| 6 | import java.nio.file.Paths; | ||
| 7 | |||
| 8 | public final class Game { | ||
| 9 | private String mTitle; | ||
| 10 | private String mDescription; | ||
| 11 | private String mPath; | ||
| 12 | private String mGameId; | ||
| 13 | private String mCompany; | ||
| 14 | private String mRegions; | ||
| 15 | |||
| 16 | public Game(String title, String description, String regions, String path, | ||
| 17 | String gameId, String company) { | ||
| 18 | mTitle = title; | ||
| 19 | mDescription = description; | ||
| 20 | mRegions = regions; | ||
| 21 | mPath = path; | ||
| 22 | mGameId = gameId; | ||
| 23 | mCompany = company; | ||
| 24 | } | ||
| 25 | |||
| 26 | public static ContentValues asContentValues(String title, String description, String regions, String path, String gameId, String company) { | ||
| 27 | ContentValues values = new ContentValues(); | ||
| 28 | |||
| 29 | if (gameId.isEmpty()) { | ||
| 30 | // Homebrew, etc. may not have a game ID, use filename as a unique identifier | ||
| 31 | gameId = Paths.get(path).getFileName().toString(); | ||
| 32 | } | ||
| 33 | |||
| 34 | values.put(GameDatabase.KEY_GAME_TITLE, title); | ||
| 35 | values.put(GameDatabase.KEY_GAME_DESCRIPTION, description); | ||
| 36 | values.put(GameDatabase.KEY_GAME_REGIONS, regions); | ||
| 37 | values.put(GameDatabase.KEY_GAME_PATH, path); | ||
| 38 | values.put(GameDatabase.KEY_GAME_ID, gameId); | ||
| 39 | values.put(GameDatabase.KEY_GAME_COMPANY, company); | ||
| 40 | |||
| 41 | return values; | ||
| 42 | } | ||
| 43 | |||
| 44 | public static Game fromCursor(Cursor cursor) { | ||
| 45 | return new Game(cursor.getString(GameDatabase.GAME_COLUMN_TITLE), | ||
| 46 | cursor.getString(GameDatabase.GAME_COLUMN_DESCRIPTION), | ||
| 47 | cursor.getString(GameDatabase.GAME_COLUMN_REGIONS), | ||
| 48 | cursor.getString(GameDatabase.GAME_COLUMN_PATH), | ||
| 49 | cursor.getString(GameDatabase.GAME_COLUMN_GAME_ID), | ||
| 50 | cursor.getString(GameDatabase.GAME_COLUMN_CAPTION)); | ||
| 51 | } | ||
| 52 | |||
| 53 | public String getTitle() { | ||
| 54 | return mTitle; | ||
| 55 | } | ||
| 56 | |||
| 57 | public String getDescription() { | ||
| 58 | return mDescription; | ||
| 59 | } | ||
| 60 | |||
| 61 | public String getCompany() { | ||
| 62 | return mCompany; | ||
| 63 | } | ||
| 64 | |||
| 65 | public String getRegions() { | ||
| 66 | return mRegions; | ||
| 67 | } | ||
| 68 | |||
| 69 | public String getPath() { | ||
| 70 | return mPath; | ||
| 71 | } | ||
| 72 | |||
| 73 | public String getGameId() { | ||
| 74 | return mGameId; | ||
| 75 | } | ||
| 76 | } | ||
diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.kt new file mode 100644 index 000000000..5653d9313 --- /dev/null +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/Game.kt | |||
| @@ -0,0 +1,56 @@ | |||
| 1 | package org.yuzu.yuzu_emu.model | ||
| 2 | |||
| 3 | import android.content.ContentValues | ||
| 4 | import android.database.Cursor | ||
| 5 | import java.nio.file.Paths | ||
| 6 | import java.util.HashSet | ||
| 7 | |||
| 8 | class Game( | ||
| 9 | val title: String, | ||
| 10 | val description: String, | ||
| 11 | val regions: String, | ||
| 12 | val path: String, | ||
| 13 | val gameId: String, | ||
| 14 | val company: String | ||
| 15 | ) { | ||
| 16 | companion object { | ||
| 17 | val extensions: Set<String> = HashSet( | ||
| 18 | listOf(".xci", ".nsp", ".nca", ".nro") | ||
| 19 | ) | ||
| 20 | |||
| 21 | @JvmStatic | ||
| 22 | fun asContentValues( | ||
| 23 | title: String?, | ||
| 24 | description: String?, | ||
| 25 | regions: String?, | ||
| 26 | path: String?, | ||
| 27 | gameId: String, | ||
| 28 | company: String? | ||
| 29 | ): ContentValues { | ||
| 30 | var realGameId = gameId | ||
| 31 | val values = ContentValues() | ||
| 32 | if (realGameId.isEmpty()) { | ||
| 33 | // Homebrew, etc. may not have a game ID, use filename as a unique identifier | ||
| 34 | realGameId = Paths.get(path).fileName.toString() | ||
| 35 | } | ||
| 36 | values.put(GameDatabase.KEY_GAME_TITLE, title) | ||
| 37 | values.put(GameDatabase.KEY_GAME_DESCRIPTION, description) | ||
| 38 | values.put(GameDatabase.KEY_GAME_REGIONS, regions) | ||
| 39 | values.put(GameDatabase.KEY_GAME_PATH, path) | ||
| 40 | values.put(GameDatabase.KEY_GAME_ID, realGameId) | ||
| 41 | values.put(GameDatabase.KEY_GAME_COMPANY, company) | ||
| 42 | return values | ||
| 43 | } | ||
| 44 | |||
| 45 | fun fromCursor(cursor: Cursor): Game { | ||
| 46 | return Game( | ||
| 47 | cursor.getString(GameDatabase.GAME_COLUMN_TITLE), | ||
| 48 | cursor.getString(GameDatabase.GAME_COLUMN_DESCRIPTION), | ||
| 49 | cursor.getString(GameDatabase.GAME_COLUMN_REGIONS), | ||
| 50 | cursor.getString(GameDatabase.GAME_COLUMN_PATH), | ||
| 51 | cursor.getString(GameDatabase.GAME_COLUMN_GAME_ID), | ||
| 52 | cursor.getString(GameDatabase.GAME_COLUMN_CAPTION) | ||
| 53 | ) | ||
| 54 | } | ||
| 55 | } | ||
| 56 | } | ||