// Path: app/src/main/java/com/jonathanpetitfrere/mvvm/repository/persistence/entity/User.java
// @Entity
// public class User {
// 
//     @PrimaryKey
//     private String email;
// 
//     @ColumnInfo(name = "first_name")
//     private String firstName;
// 
//     @ColumnInfo(name = "last_name")
//     private String lastName;
// 
//     public User(String email, String firstName, String lastName) {
//         this.email = email;
//         this.firstName = firstName;
//         this.lastName = lastName;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public String getFirstName() {
//         return firstName;
//     }
// 
//     public String getLastName() {
//         return lastName;
//     }
// 
//     @Override
//     public boolean equals(Object object) {
//         if (this == object) return true;
//         if (object == null || getClass() != object.getClass()) return false;
// 
//         User user = (User) object;
// 
//         if (email != null ? !email.equals(user.email) : user.email != null) return false;
//         if (firstName != null ? !firstName.equals(user.firstName) : user.firstName != null)
//             return false;
//         return lastName != null ? lastName.equals(user.lastName) : user.lastName == null;
// 
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = email != null ? email.hashCode() : 0;
//         result = 31 * result + (firstName != null ? firstName.hashCode() : 0);
//         result = 31 * result + (lastName != null ? lastName.hashCode() : 0);
//         return result;
//     }
// }


import android.content.Context;
import android.support.constraint.ConstraintLayout;
import android.util.AttributeSet;
import android.widget.TextView;
import com.jonathanpetitfrere.mvvm.R;
import com.jonathanpetitfrere.mvvm.repository.persistence.entity.User;
import butterknife.BindView;
import butterknife.ButterKnife;
package com.jonathanpetitfrere.mvvm.ui.main;




/**
 * @author jpetit
 */

public class UserListItemView extends ConstraintLayout {

    @BindView(R.id.user_email_text)
    TextView emailText;

    @BindView(R.id.user_first_name_text)
    TextView firstNameText;

    @BindView(R.id.user_last_name_text)
    TextView lastNameText;

    public UserListItemView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
        ButterKnife.bind(this);
    }

    public void bind(User user) {
// Path: app/src/main/java/com/jonathanpetitfrere/mvvm/repository/persistence/entity/User.java
// @Entity
// public class User {
// 
//     @PrimaryKey
//     private String email;
// 
//     @ColumnInfo(name = "first_name")
//     private String firstName;
// 
//     @ColumnInfo(name = "last_name")
//     private String lastName;
// 
//     public User(String email, String firstName, String lastName) {
//         this.email = email;
//         this.firstName = firstName;
//         this.lastName = lastName;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public String getFirstName() {
//         return firstName;
//     }
// 
//     public String getLastName() {
//         return lastName;
//     }
// 
//     @Override
//     public boolean equals(Object object) {
//         if (this == object) return true;
//         if (object == null || getClass() != object.getClass()) return false;
// 
//         User user = (User) object;
// 
//         if (email != null ? !email.equals(user.email) : user.email != null) return false;
//         if (firstName != null ? !firstName.equals(user.firstName) : user.firstName != null)
//             return false;
//         return lastName != null ? lastName.equals(user.lastName) : user.lastName == null;
// 
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = email != null ? email.hashCode() : 0;
//         result = 31 * result + (firstName != null ? firstName.hashCode() : 0);
//         result = 31 * result + (lastName != null ? lastName.hashCode() : 0);
//         return result;
//     }
// }


// Path: app/src/main/java/com/jonathanpetitfrere/mvvm/ui/main/UserListItemView.java
import android.content.Context;
import android.support.constraint.ConstraintLayout;
import android.util.AttributeSet;
import android.widget.TextView;
import com.jonathanpetitfrere.mvvm.R;
import com.jonathanpetitfrere.mvvm.repository.persistence.entity.User;
import butterknife.BindView;
import butterknife.ButterKnife;

package com.jonathanpetitfrere.mvvm.ui.main;




/**
 * @author jpetit
 */

public class UserListItemView extends ConstraintLayout {

    @BindView(R.id.user_email_text)
    TextView emailText;

    @BindView(R.id.user_first_name_text)
    TextView firstNameText;

    @BindView(R.id.user_last_name_text)
    TextView lastNameText;

    public UserListItemView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
        ButterKnife.bind(this);
    }

    public void bind(User user) {
        emailText.setText(user.getEmail());