Search in sources :

Example 1 with CRDTCounter

use of io.realm.examples.objectserver.model.CRDTCounter in project realm-java by realm.

the class CounterActivity method onStart.

@Override
protected void onStart() {
    super.onStart();
    user = SyncUser.currentUser();
    if (user != null) {
        // Create a RealmConfiguration for our user
        SyncConfiguration config = new SyncConfiguration.Builder(user, REALM_URL).initialData(new Realm.Transaction() {

            @Override
            public void execute(Realm realm) {
                realm.createObject(CRDTCounter.class, 1);
            }
        }).build();
        // This will automatically sync all changes in the background for as long as the Realm is open
        realm = Realm.getInstance(config);
        counter = realm.where(CRDTCounter.class).findFirstAsync();
        counter.addChangeListener(new RealmChangeListener<CRDTCounter>() {

            @Override
            public void onChange(CRDTCounter counter) {
                if (counter.isValid()) {
                    counterView.setText(String.format(Locale.US, "%d", counter.getCount()));
                } else {
                    counterView.setText("-");
                }
            }
        });
        counterView.setText("0");
    }
}
Also used : CRDTCounter(io.realm.examples.objectserver.model.CRDTCounter) Realm(io.realm.Realm) SyncConfiguration(io.realm.SyncConfiguration)

Aggregations

Realm (io.realm.Realm)1 SyncConfiguration (io.realm.SyncConfiguration)1 CRDTCounter (io.realm.examples.objectserver.model.CRDTCounter)1