From 6d0720e25f35179d5b53e145e60bf6c6ef4f694d Mon Sep 17 00:00:00 2001 From: NekoInverter <7741672-NekoInverter@users.noreply.gitlab.com> Date: Tue, 29 Dec 2020 14:20:37 +0800 Subject: [PATCH] Update greendao to 3.3 --- app/build.gradle | 2 +- app/proguard-rules.pro | 10 ++++++-- .../main/java/com/hippo/ehviewer/EhDB.java | 17 +++++++------ .../hippo/ehviewer/ui/scene/HistoryScene.java | 4 ++-- daogenerator/build.gradle | 2 +- .../ehviewer/daogenerator/EhDaoGenerator.java | 24 +++++++++---------- 6 files changed, 34 insertions(+), 25 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index f7cc64a35..86b3e1358 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -122,7 +122,7 @@ dependencies { implementation 'com.github.NekoInverter:RefreshLayout:7241e04739' implementation 'fadeapp.widgets:scrollless-recyclerView:1.0.2' implementation 'org.ccil.cowan.tagsoup:tagsoup:1.2.1' - implementation 'org.greenrobot:greendao:2.2.1' + implementation 'org.greenrobot:greendao:3.3.0' implementation 'org.jsoup:jsoup:1.13.1' testImplementation 'junit:junit:4.12' testImplementation 'org.robolectric:robolectric:4.2.1' diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 63de2cd96..a5a0d3f2d 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -18,7 +18,13 @@ -keepattributes SourceFile,LineNumberTable -keep class com.hippo.a7zip.* { *; } --keep class com.hippo.ehviewer.dao.* { *; } -keep class com.hippo.ehviewer.ui.fragment.* extends com.hippo.ehviewer.ui.fragment.BaseFragment { *; } -keep class com.hippo.ehviewer.ui.fragment.* extends com.hippo.ehviewer.ui.fragment.BasePreferenceFragment { *; } --keep class com.hippo.image.* { *; } \ No newline at end of file +-keep class com.hippo.image.* { *; } +-keepclassmembers class * extends org.greenrobot.greendao.AbstractDao { +public static java.lang.String TABLENAME; +} +-keep class **$Properties { *; } +-keep class org.greenrobot.greendao.database.SqlCipherEncryptedHelper { *; } +-dontwarn net.sqlcipher.database.** +-dontwarn rx.** \ No newline at end of file diff --git a/app/src/main/java/com/hippo/ehviewer/EhDB.java b/app/src/main/java/com/hippo/ehviewer/EhDB.java index b7a217464..0cb02b8dd 100644 --- a/app/src/main/java/com/hippo/ehviewer/EhDB.java +++ b/app/src/main/java/com/hippo/ehviewer/EhDB.java @@ -51,6 +51,10 @@ import com.hippo.yorozuya.IOUtils; import com.hippo.yorozuya.ObjectUtils; import com.hippo.yorozuya.collect.SparseJLArray; +import org.greenrobot.greendao.AbstractDao; +import org.greenrobot.greendao.query.CloseableListIterator; +import org.greenrobot.greendao.query.LazyList; + import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; @@ -60,10 +64,6 @@ import java.io.OutputStream; import java.util.ArrayList; import java.util.List; -import de.greenrobot.dao.AbstractDao; -import de.greenrobot.dao.query.CloseableListIterator; -import de.greenrobot.dao.query.LazyList; - public class EhDB { private static final String TAG = EhDB.class.getSimpleName(); @@ -78,7 +78,11 @@ public class EhDB { private static void upgradeDB(SQLiteDatabase db, int oldVersion) { switch (oldVersion) { case 1: // 1 to 2, add FILTER - FilterDao.createTable(db, true); + db.execSQL("CREATE TABLE IF NOT EXISTS \"FILTER\" (" + // + "\"_id\" INTEGER PRIMARY KEY ," + // 0: id + "\"MODE\" INTEGER NOT NULL ," + // 1: mode + "\"TEXT\" TEXT," + // 2: text + "\"ENABLE\" INTEGER);"); // 3: enable case 2: // 2 to 3, add ENABLE column to table FILTER db.execSQL("CREATE TABLE " + "\"FILTER2\" (" + "\"_id\" INTEGER PRIMARY KEY ," + @@ -656,7 +660,7 @@ public class EhDB { return false; if (!copyDao(sDaoSession.getLocalFavoritesDao(), exportSession.getLocalFavoritesDao())) return false; - if (!copyDao(sDaoSession.getBookmarksBao(), exportSession.getBookmarksBao())) + if (!copyDao(sDaoSession.getBookmarksDao(), exportSession.getBookmarksDao())) return false; if (!copyDao(sDaoSession.getFilterDao(), exportSession.getFilterDao())) return false; @@ -688,7 +692,6 @@ public class EhDB { } /** - * @param file The db file * @return error string, null for no error */ public static synchronized String importDB(Context context, Uri uri) { diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.java b/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.java index 1852633a7..9994db458 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.java +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.java @@ -79,12 +79,12 @@ import com.hippo.widget.recyclerview.AutoStaggeredGridLayoutManager; import com.hippo.yorozuya.AssertUtils; import com.hippo.yorozuya.ViewUtils; +import org.greenrobot.greendao.query.LazyList; + import java.util.ArrayList; import java.util.Collections; import java.util.List; -import de.greenrobot.dao.query.LazyList; - public class HistoryScene extends ToolbarScene { /*--------------- diff --git a/daogenerator/build.gradle b/daogenerator/build.gradle index 7f7a627e8..2df812e1b 100644 --- a/daogenerator/build.gradle +++ b/daogenerator/build.gradle @@ -23,7 +23,7 @@ task executeDaoGenerator(type:JavaExec) { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'org.greenrobot:greendao-generator:2.2.0' + implementation 'org.greenrobot:greendao-generator:3.3.0' implementation 'org.jboss.forge.roaster:roaster-api:2.20.1.Final' implementation 'org.jboss.forge.roaster:roaster-jdt:2.20.1.Final' } diff --git a/daogenerator/src/main/java/com/hippo/ehviewer/daogenerator/EhDaoGenerator.java b/daogenerator/src/main/java/com/hippo/ehviewer/daogenerator/EhDaoGenerator.java index bbee9db8b..da08061f1 100644 --- a/daogenerator/src/main/java/com/hippo/ehviewer/daogenerator/EhDaoGenerator.java +++ b/daogenerator/src/main/java/com/hippo/ehviewer/daogenerator/EhDaoGenerator.java @@ -22,9 +22,9 @@ import org.jboss.forge.roaster.model.source.JavaClassSource; import java.io.File; import java.io.FileWriter; -import de.greenrobot.daogenerator.DaoGenerator; -import de.greenrobot.daogenerator.Entity; -import de.greenrobot.daogenerator.Schema; +import org.greenrobot.greendao.generator.DaoGenerator; +import org.greenrobot.greendao.generator.Entity; +import org.greenrobot.greendao.generator.Schema; public class EhDaoGenerator { @@ -68,7 +68,7 @@ public class EhDaoGenerator { private static void addDownloads(Schema schema) { Entity entity = schema.addEntity("DownloadInfo"); - entity.setTableName("DOWNLOADS"); + entity.setDbName("DOWNLOADS"); entity.setClassNameDao("DownloadsDao"); entity.setSuperclass("GalleryInfo"); // GalleryInfo data @@ -91,7 +91,7 @@ public class EhDaoGenerator { private static void addDownloadLabel(Schema schema) { Entity entity = schema.addEntity("DownloadLabel"); - entity.setTableName("DOWNLOAD_LABELS"); + entity.setDbName("DOWNLOAD_LABELS"); entity.setClassNameDao("DownloadLabelDao"); entity.addIdProperty(); entity.addStringProperty("label"); @@ -100,7 +100,7 @@ public class EhDaoGenerator { private static void addDownloadDirname(Schema schema) { Entity entity = schema.addEntity("DownloadDirname"); - entity.setTableName("DOWNLOAD_DIRNAME"); + entity.setDbName("DOWNLOAD_DIRNAME"); entity.setClassNameDao("DownloadDirnameDao"); entity.addLongProperty("gid").primaryKey().notNull(); entity.addStringProperty("dirname"); @@ -108,7 +108,7 @@ public class EhDaoGenerator { private static void addHistoryInfo(Schema schema) { Entity entity = schema.addEntity("HistoryInfo"); - entity.setTableName("HISTORY"); + entity.setDbName("HISTORY"); entity.setClassNameDao("HistoryDao"); entity.setSuperclass("GalleryInfo"); // GalleryInfo data @@ -129,7 +129,7 @@ public class EhDaoGenerator { private static void addQuickSearch(Schema schema) { Entity entity = schema.addEntity("QuickSearch"); - entity.setTableName("QUICK_SEARCH"); + entity.setDbName("QUICK_SEARCH"); entity.setClassNameDao("QuickSearchDao"); entity.addIdProperty(); entity.addStringProperty("name"); @@ -147,7 +147,7 @@ public class EhDaoGenerator { private static void addLocalFavorites(Schema schema) { Entity entity = schema.addEntity("LocalFavoriteInfo"); - entity.setTableName("LOCAL_FAVORITES"); + entity.setDbName("LOCAL_FAVORITES"); entity.setClassNameDao("LocalFavoritesDao"); entity.setSuperclass("GalleryInfo"); // GalleryInfo data @@ -167,8 +167,8 @@ public class EhDaoGenerator { private static void addBookmarks(Schema schema) { Entity entity = schema.addEntity("BookmarkInfo"); - entity.setTableName("BOOKMARKS"); - entity.setClassNameDao("BookmarksBao"); + entity.setDbName("BOOKMARKS"); + entity.setClassNameDao("BookmarksDao"); entity.setSuperclass("GalleryInfo"); // GalleryInfo data entity.addLongProperty("gid").primaryKey().notNull(); @@ -189,7 +189,7 @@ public class EhDaoGenerator { // Since 2 private static void addFilter(Schema schema) { Entity entity = schema.addEntity("Filter"); - entity.setTableName("FILTER"); + entity.setDbName("FILTER"); entity.setClassNameDao("FilterDao"); entity.addIdProperty(); entity.addIntProperty("mode").notNull();