mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-11-01 07:13:56 +01:00
Consolidate shared prefs to a single store (#2613)
* Consolidate shared prefs to a single store * Fix achievements activity * Fix store usage
This commit is contained in:
parent
51f58b7118
commit
7cb87f3cab
41 changed files with 207 additions and 279 deletions
|
|
@ -18,7 +18,7 @@ import javax.inject.Named;
|
|||
import javax.inject.Singleton;
|
||||
|
||||
import fr.free.nrw.commons.caching.CacheController;
|
||||
import fr.free.nrw.commons.kvstore.BasicKvStore;
|
||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||
import fr.free.nrw.commons.mwapi.CategoryApi;
|
||||
import io.reactivex.schedulers.Schedulers;
|
||||
import timber.log.Timber;
|
||||
|
|
@ -37,7 +37,7 @@ public class FileProcessor implements SimilarImageDialogFragment.onResponse {
|
|||
CategoryApi apiCall;
|
||||
@Inject
|
||||
@Named("default_preferences")
|
||||
BasicKvStore defaultKvStore;
|
||||
JsonKvStore defaultKvStore;
|
||||
private String filePath;
|
||||
private ContentResolver contentResolver;
|
||||
private GPSExtractor imageObj;
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ public class UploadActivity extends BaseActivity implements UploadView, SimilarI
|
|||
@Inject MediaWikiApi mwApi;
|
||||
@Inject
|
||||
ContributionController contributionController;
|
||||
@Inject @Named("direct_nearby_upload_prefs") JsonKvStore directKvStore;
|
||||
@Inject @Named("default_preferences") JsonKvStore directKvStore;
|
||||
@Inject UploadPresenter presenter;
|
||||
@Inject CategoriesModel categoriesModel;
|
||||
@Inject SessionManager sessionManager;
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ import fr.free.nrw.commons.HandlerService;
|
|||
import fr.free.nrw.commons.R;
|
||||
import fr.free.nrw.commons.auth.SessionManager;
|
||||
import fr.free.nrw.commons.contributions.Contribution;
|
||||
import fr.free.nrw.commons.kvstore.BasicKvStore;
|
||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||
import fr.free.nrw.commons.settings.Prefs;
|
||||
import fr.free.nrw.commons.utils.ViewUtil;
|
||||
import timber.log.Timber;
|
||||
|
|
@ -39,7 +39,7 @@ public class UploadController {
|
|||
private UploadService uploadService;
|
||||
private SessionManager sessionManager;
|
||||
private Context context;
|
||||
private BasicKvStore defaultKvStore;
|
||||
private JsonKvStore store;
|
||||
|
||||
public interface ContributionUploadProgress {
|
||||
void onUploadStarted(Contribution contribution);
|
||||
|
|
@ -49,10 +49,10 @@ public class UploadController {
|
|||
@Inject
|
||||
public UploadController(SessionManager sessionManager,
|
||||
Context context,
|
||||
BasicKvStore store) {
|
||||
JsonKvStore store) {
|
||||
this.sessionManager = sessionManager;
|
||||
this.context = context;
|
||||
this.defaultKvStore = store;
|
||||
this.store = store;
|
||||
}
|
||||
|
||||
private boolean isUploadServiceConnected;
|
||||
|
|
@ -110,8 +110,8 @@ public class UploadController {
|
|||
//Set creator, desc, and license
|
||||
|
||||
// If author name is enabled and set, use it
|
||||
if (defaultKvStore.getBoolean("useAuthorName", false)) {
|
||||
String authorName = defaultKvStore.getString("authorName", "");
|
||||
if (store.getBoolean("useAuthorName", false)) {
|
||||
String authorName = store.getString("authorName", "");
|
||||
contribution.setCreator(authorName);
|
||||
}
|
||||
|
||||
|
|
@ -130,7 +130,7 @@ public class UploadController {
|
|||
contribution.setDescription("");
|
||||
}
|
||||
|
||||
String license = defaultKvStore.getString(Prefs.DEFAULT_LICENSE, Prefs.Licenses.CC_BY_SA_3);
|
||||
String license = store.getString(Prefs.DEFAULT_LICENSE, Prefs.Licenses.CC_BY_SA_3);
|
||||
contribution.setLicense(license);
|
||||
|
||||
//FIXME: Add permission request here. Only executeAsyncTask if permission has been granted
|
||||
|
|
|
|||
|
|
@ -4,9 +4,6 @@ import android.annotation.SuppressLint;
|
|||
import android.content.Context;
|
||||
import android.net.Uri;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
|
@ -22,7 +19,7 @@ import fr.free.nrw.commons.auth.SessionManager;
|
|||
import fr.free.nrw.commons.contributions.Contribution;
|
||||
import fr.free.nrw.commons.filepicker.MimeTypeMapWrapper;
|
||||
import fr.free.nrw.commons.filepicker.UploadableFile;
|
||||
import fr.free.nrw.commons.kvstore.BasicKvStore;
|
||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||
import fr.free.nrw.commons.nearby.Place;
|
||||
import fr.free.nrw.commons.settings.Prefs;
|
||||
import fr.free.nrw.commons.utils.ImageUtils;
|
||||
|
|
@ -46,7 +43,7 @@ public class UploadModel {
|
|||
null,
|
||||
-1L, "") {
|
||||
};
|
||||
private final BasicKvStore basicKvStore;
|
||||
private final JsonKvStore store;
|
||||
private final List<String> licenses;
|
||||
private String license;
|
||||
private final Map<String, String> licensesByName;
|
||||
|
|
@ -64,15 +61,15 @@ public class UploadModel {
|
|||
|
||||
@Inject
|
||||
UploadModel(@Named("licenses") List<String> licenses,
|
||||
@Named("default_preferences") BasicKvStore basicKvStore,
|
||||
@Named("default_preferences") JsonKvStore store,
|
||||
@Named("licenses_by_name") Map<String, String> licensesByName,
|
||||
Context context,
|
||||
SessionManager sessionManager,
|
||||
FileProcessor fileProcessor,
|
||||
ImageProcessingService imageProcessingService) {
|
||||
this.licenses = licenses;
|
||||
this.basicKvStore = basicKvStore;
|
||||
this.license = basicKvStore.getString(Prefs.DEFAULT_LICENSE, Prefs.Licenses.CC_BY_SA_3);
|
||||
this.store = store;
|
||||
this.license = store.getString(Prefs.DEFAULT_LICENSE, Prefs.Licenses.CC_BY_SA_3);
|
||||
this.licensesByName = licensesByName;
|
||||
this.context = context;
|
||||
this.sessionManager = sessionManager;
|
||||
|
|
@ -94,7 +91,6 @@ public class UploadModel {
|
|||
return imageProcessingService.validateImage(uploadItem, checkTitle);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
private UploadItem getUploadItem(UploadableFile uploadableFile,
|
||||
Place place,
|
||||
String source,
|
||||
|
|
@ -273,7 +269,7 @@ public class UploadModel {
|
|||
|
||||
void setSelectedLicense(String licenseName) {
|
||||
this.license = licensesByName.get(licenseName);
|
||||
basicKvStore.putString(Prefs.DEFAULT_LICENSE, license);
|
||||
store.putString(Prefs.DEFAULT_LICENSE, license);
|
||||
}
|
||||
|
||||
Observable<Contribution> buildContributions(List<String> categoryStringList) {
|
||||
|
|
@ -348,7 +344,7 @@ public class UploadModel {
|
|||
@SuppressLint("CheckResult")
|
||||
UploadItem(Uri originalContentUri,
|
||||
Uri mediaUri, String mimeType, String source, GPSExtractor gpsCoords,
|
||||
@Nullable Place place,
|
||||
Place place,
|
||||
long createdTimestamp,
|
||||
String createdTimestampSource) {
|
||||
this.originalContentUri = originalContentUri;
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@ import fr.free.nrw.commons.R;
|
|||
import fr.free.nrw.commons.category.CategoriesModel;
|
||||
import fr.free.nrw.commons.contributions.Contribution;
|
||||
import fr.free.nrw.commons.filepicker.UploadableFile;
|
||||
import fr.free.nrw.commons.kvstore.BasicKvStore;
|
||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||
import fr.free.nrw.commons.nearby.Place;
|
||||
import fr.free.nrw.commons.settings.Prefs;
|
||||
|
|
@ -52,19 +51,16 @@ public class UploadPresenter {
|
|||
private final UploadModel uploadModel;
|
||||
private final UploadController uploadController;
|
||||
private final Context context;
|
||||
private final BasicKvStore defaultKvStore;
|
||||
private final JsonKvStore directKvStore;
|
||||
|
||||
@Inject
|
||||
UploadPresenter(UploadModel uploadModel,
|
||||
UploadController uploadController,
|
||||
Context context,
|
||||
@Named("default_preferences") BasicKvStore defaultKvStore,
|
||||
@Named("direct_nearby_upload_prefs") JsonKvStore directKvStore) {
|
||||
@Named("default_preferences") JsonKvStore directKvStore) {
|
||||
this.uploadModel = uploadModel;
|
||||
this.uploadController = uploadController;
|
||||
this.context = context;
|
||||
this.defaultKvStore = defaultKvStore;
|
||||
this.directKvStore = directKvStore;
|
||||
}
|
||||
|
||||
|
|
@ -331,7 +327,7 @@ public class UploadPresenter {
|
|||
* Sets the list of licences and the default license.
|
||||
*/
|
||||
private void updateLicenses() {
|
||||
String selectedLicense = defaultKvStore.getString(Prefs.DEFAULT_LICENSE, Prefs.Licenses.CC_BY_SA_3);
|
||||
String selectedLicense = directKvStore.getString(Prefs.DEFAULT_LICENSE, Prefs.Licenses.CC_BY_SA_3);
|
||||
view.updateLicenses(uploadModel.getLicenses(), selectedLicense);
|
||||
view.updateLicenseSummary(selectedLicense, uploadModel.getCount());
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue