Search in sources :

Example 1 with RSAPIClient

use of de.bahnhoefe.deutschlands.bahnhofsfotos.rsapi.RSAPIClient in project RSAndroidApp by RailwayStations.

the class BaseApplication method onCreate.

@Override
public void onCreate() {
    super.onCreate();
    dbAdapter = new DbAdapter(this);
    dbAdapter.open();
    preferences = getSharedPreferences(PREF_FILE, MODE_PRIVATE);
    // migrate photo owner preference to boolean
    final Object photoOwner = preferences.getAll().get(getString(R.string.PHOTO_OWNER));
    if (photoOwner instanceof String && "YES".equals(photoOwner)) {
        setPhotoOwner(true);
    }
    rsapiClient = new RSAPIClient(getApiUrl(), getEmail(), getPassword());
}
Also used : DbAdapter(de.bahnhoefe.deutschlands.bahnhofsfotos.db.DbAdapter) RSAPIClient(de.bahnhoefe.deutschlands.bahnhofsfotos.rsapi.RSAPIClient)

Example 2 with RSAPIClient

use of de.bahnhoefe.deutschlands.bahnhofsfotos.rsapi.RSAPIClient in project RSAndroidApp by RailwayStations.

the class HighScoreActivity method loadHighScore.

private void loadHighScore(final BaseApplication baseApplication, final Country selectedCountry) {
    final RSAPIClient rsapi = baseApplication.getRsapiClient();
    final Call<HighScore> highScoreCall = selectedCountry.getCode().isEmpty() ? rsapi.getHighScore() : rsapi.getHighScore(selectedCountry.getCode());
    highScoreCall.enqueue(new Callback<>() {

        @Override
        public void onResponse(@NonNull final Call<HighScore> call, @NonNull final Response<HighScore> response) {
            if (response.isSuccessful()) {
                adapter = new HighScoreAdapter(HighScoreActivity.this, response.body().getItems());
                binding.highscoreList.setAdapter(adapter);
                binding.highscoreList.setOnItemClickListener((adapter, v, position, arg3) -> {
                    final HighScoreItem highScoreItem = (HighScoreItem) adapter.getItemAtPosition(position);
                    final StationFilter stationFilter = baseApplication.getStationFilter();
                    stationFilter.setNickname(highScoreItem.getName());
                    baseApplication.setStationFilter(stationFilter);
                    final Intent intent = new Intent(HighScoreActivity.this, MapsActivity.class);
                    startActivity(intent);
                });
            }
        }

        @Override
        public void onFailure(@NonNull final Call<HighScore> call, @NonNull final Throwable t) {
            Log.e(TAG, "Error loading highscore", t);
            Toast.makeText(getBaseContext(), getString(R.string.error_loading_highscore) + t.getMessage(), Toast.LENGTH_LONG).show();
        }
    });
}
Also used : Context(android.content.Context) Bundle(android.os.Bundle) NonNull(androidx.annotation.NonNull) StationFilter(de.bahnhoefe.deutschlands.bahnhofsfotos.util.StationFilter) Intent(android.content.Intent) Response(retrofit2.Response) AppCompatActivity(androidx.appcompat.app.AppCompatActivity) Country(de.bahnhoefe.deutschlands.bahnhofsfotos.model.Country) HighScoreAdapter(de.bahnhoefe.deutschlands.bahnhofsfotos.db.HighScoreAdapter) Toast(android.widget.Toast) Menu(android.view.Menu) View(android.view.View) HighScoreItem(de.bahnhoefe.deutschlands.bahnhofsfotos.model.HighScoreItem) AdapterView(android.widget.AdapterView) Build(android.os.Build) TargetApi(android.annotation.TargetApi) Log(android.util.Log) HighScore(de.bahnhoefe.deutschlands.bahnhofsfotos.model.HighScore) SearchView(androidx.appcompat.widget.SearchView) ArrayAdapter(android.widget.ArrayAdapter) List(java.util.List) Callback(retrofit2.Callback) ActivityHighScoreBinding(de.bahnhoefe.deutschlands.bahnhofsfotos.databinding.ActivityHighScoreBinding) RSAPIClient(de.bahnhoefe.deutschlands.bahnhofsfotos.rsapi.RSAPIClient) SearchManager(android.app.SearchManager) Call(retrofit2.Call) HighScoreItem(de.bahnhoefe.deutschlands.bahnhofsfotos.model.HighScoreItem) HighScore(de.bahnhoefe.deutschlands.bahnhofsfotos.model.HighScore) RSAPIClient(de.bahnhoefe.deutschlands.bahnhofsfotos.rsapi.RSAPIClient) Intent(android.content.Intent) HighScoreAdapter(de.bahnhoefe.deutschlands.bahnhofsfotos.db.HighScoreAdapter) StationFilter(de.bahnhoefe.deutschlands.bahnhofsfotos.util.StationFilter)

Aggregations

RSAPIClient (de.bahnhoefe.deutschlands.bahnhofsfotos.rsapi.RSAPIClient)2 TargetApi (android.annotation.TargetApi)1 SearchManager (android.app.SearchManager)1 Context (android.content.Context)1 Intent (android.content.Intent)1 Build (android.os.Build)1 Bundle (android.os.Bundle)1 Log (android.util.Log)1 Menu (android.view.Menu)1 View (android.view.View)1 AdapterView (android.widget.AdapterView)1 ArrayAdapter (android.widget.ArrayAdapter)1 Toast (android.widget.Toast)1 NonNull (androidx.annotation.NonNull)1 AppCompatActivity (androidx.appcompat.app.AppCompatActivity)1 SearchView (androidx.appcompat.widget.SearchView)1 ActivityHighScoreBinding (de.bahnhoefe.deutschlands.bahnhofsfotos.databinding.ActivityHighScoreBinding)1 DbAdapter (de.bahnhoefe.deutschlands.bahnhofsfotos.db.DbAdapter)1 HighScoreAdapter (de.bahnhoefe.deutschlands.bahnhofsfotos.db.HighScoreAdapter)1 Country (de.bahnhoefe.deutschlands.bahnhofsfotos.model.Country)1