// Path: app/src/main/java/io/petros/posts/model/User.java
// public class User extends RealmObject {
// 
//     public static final String ID = "id";
//     public static final String NAME = "name";
//     public static final String USERNAME = "username";
//     public static final String EMAIL = "email";
// 
//     @SerializedName(ID)
//     @Expose
//     @PrimaryKey
//     private Integer id;
// 
//     @SerializedName(NAME)
//     @Expose
//     private String name;
// 
//     @SerializedName(USERNAME)
//     @Expose
//     private String username;
// 
//     @SerializedName(EMAIL)
//     @Expose
//     private String email;
// 
//     public Integer getId() {
//         return id;
//     }
// 
//     public void setId(final Integer id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public String getUsername() {
//         return username;
//     }
// 
//     public void setUsername(String username) {
//         this.username = username;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public void setEmail(final String email) {
//         this.email = email;
//     }
// 
// }


import io.petros.posts.model.User;
import io.realm.Realm;
package io.petros.posts.datastore;


public class DatastoreUpdateActions implements UpdateActions {

    private final Realm realm;

    public DatastoreUpdateActions(final Realm realm) {
        this.realm = realm;
    }

    @Override
    public boolean user(final User existingRealUser, final User user) {
        realm.beginTransaction();
// Path: app/src/main/java/io/petros/posts/model/User.java
// public class User extends RealmObject {
// 
//     public static final String ID = "id";
//     public static final String NAME = "name";
//     public static final String USERNAME = "username";
//     public static final String EMAIL = "email";
// 
//     @SerializedName(ID)
//     @Expose
//     @PrimaryKey
//     private Integer id;
// 
//     @SerializedName(NAME)
//     @Expose
//     private String name;
// 
//     @SerializedName(USERNAME)
//     @Expose
//     private String username;
// 
//     @SerializedName(EMAIL)
//     @Expose
//     private String email;
// 
//     public Integer getId() {
//         return id;
//     }
// 
//     public void setId(final Integer id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public String getUsername() {
//         return username;
//     }
// 
//     public void setUsername(String username) {
//         this.username = username;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public void setEmail(final String email) {
//         this.email = email;
//     }
// 
// }


// Path: app/src/main/java/io/petros/posts/datastore/DatastoreUpdateActions.java
import io.petros.posts.model.User;
import io.realm.Realm;

package io.petros.posts.datastore;


public class DatastoreUpdateActions implements UpdateActions {

    private final Realm realm;

    public DatastoreUpdateActions(final Realm realm) {
        this.realm = realm;
    }

    @Override
    public boolean user(final User existingRealUser, final User user) {
        realm.beginTransaction();
        existingRealUser.setName(user.getName());