// Path: MyApplication/app/src/main/java/com/example/mikhail_sianko/myapplication/adapter/ListViewAdapter.java
// public class ListViewAdapter extends ArrayAdapter<TwitterSearchStatuses> {
// 
// 
//     public ListViewAdapter(Context context, int resource) {
//         super(context, resource);
//     }
// 
//     public ListViewAdapter(Context context, int resource, List<TwitterSearchStatuses> objects) {
//         super(context, resource, objects);
//     }
// 
//     @NonNull
//     @Override
//     public View getView(int position, View convertView, ViewGroup parent) {
//         View view;
//         if (convertView == null) {
//             view = LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false);
//         } else {
//             view = convertView;
//         }
//         bindView(position, view);
//         return view;
//     }
// 
//     private void bindView(int position, View view) {
//         TwitterSearchStatuses status = getItem(position);
//         ((TextView) view.findViewById(R.id.user)).setText(status.getTwitterUser().getName());
//         ((TextView) view.findViewById(R.id.value)).setText(status.getText());
//     }
// 
//     @Override
//     public int getCount() {
//         return super.getCount();
//     }
// 
//     @Override
//     public int getItemViewType(int position) {
//         return super.getItemViewType(position);
//     }
// 
// }
// 
// Path: MyApplication/app/src/main/java/com/example/mikhail_sianko/myapplication/adapter/RecyclerViewAdapter.java
// public class RecyclerViewAdapter extends AbstractAdapter<TwitterSearchStatuses> {
// 
//     public static final int TYPE_CHANGED = 0;
//     public static final int TYPE_DEFAULT = 1;
//     List<TwitterSearchStatuses> data = new ArrayList<>();
// 
//     public void setOnItemListener(RecyclerViewAdapter.onItemListener onItemListener) {
//         this.onItemListener = onItemListener;
//     }
// 
//     private onItemListener onItemListener;
// 
// 
//     public interface onItemListener {
//         void onClick(TwitterSearchStatuses item, int position);
//     }
// 
//     public void setData(List<TwitterSearchStatuses> data) {
//         this.data = data;
//         notifyDataSetChanged();
//     }
// 
//     @Override
//     public void onBind(AbstractViewHolder holder, final TwitterSearchStatuses data, final int position, int viewType) {
//         holder.<TextView>get(R.id.user).setText(data.getTwitterUser().getName());
//         holder.<TextView>get(R.id.value).setText(data.getText());
//         if (viewType == TYPE_CHANGED) {
//             holder.itemView.setBackgroundColor(ContextCompat.getColor(holder.itemView.getContext(), R.color.colorAccent));
//         }
//         holder.itemView.setOnClickListener(new View.OnClickListener() {
//             @Override
//             public void onClick(View v) {
//                 if (onItemListener != null) {
//                     onItemListener.onClick(data, position);
//                 }
//             }
//         });
// 
//     }
// 
//     @Override
//     public TwitterSearchStatuses getItem(int positoin) {
//         return data.get(positoin);
//     }
// 
//     @Override
//     public AbstractViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//         View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item, parent, false);
//         return new AbstractViewHolder(view);
//     }
// 
//     @Override
//     public int getItemCount() {
//         return data.size();
//     }
// 
//     public void addItem(TwitterSearchStatuses item, int position) {
//         data.add(position, item);
//         notifyItemInserted(position);
//         int itemCount = data.size() - position;
//         notifyItemRangeChanged(position, itemCount);
//     }
// 
//     public void removeItem(int position) {
//         data.remove(position);
//         notifyItemRemoved(position);
//     }
// 
//     @Override
//     public int getItemViewType(int position) {
//         TwitterSearchStatuses item = getItem(position);
//         return item.changeMe ? TYPE_CHANGED : TYPE_DEFAULT;
//     }
// 
// }
// 
// Path: MyApplication/app/src/main/java/com/example/mikhail_sianko/myapplication/model/gson/TwitterSearchStatuses.java
// public class TwitterSearchStatuses {
// 
//     @SerializedName("created_at")
//     private Date createdAt;
// 
//     @SerializedName("text")
//     private String text;
// 
//     @SerializedName("user")
//     private TwitterUser twitterUser;
// 
//     public boolean changeMe;
// 
//     public Date getCreatedAt() {
//         return createdAt;
//     }
// 
//     public String getText() {
//         return text;
//     }
// 
//     public TwitterUser getTwitterUser() {
//         return twitterUser;
//     }
// 
//     public static TwitterSearchStatuses dummy(String user, String text) {
//         TwitterSearchStatuses statuses = new TwitterSearchStatuses();
//         statuses.text = text;
//         statuses.twitterUser = new TwitterUser();
//         statuses.twitterUser.setName(user);
//         return statuses;
//     }
// 
//     public static List<TwitterSearchStatuses> listDummy() {
//         List<TwitterSearchStatuses> results = new ArrayList<>();
//         for (int i = 0; i < 1000; i++) {
//             results.add(TwitterSearchStatuses.dummy("Text " + i, "User " + i));
//         }
//         return results;
//     }
// }


import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.ListView;
import android.widget.Toast;
import com.example.mikhail_sianko.myapplication.R;
import com.example.mikhail_sianko.myapplication.adapter.ListViewAdapter;
import com.example.mikhail_sianko.myapplication.adapter.RecyclerViewAdapter;
import com.example.mikhail_sianko.myapplication.model.gson.TwitterSearchStatuses;
import java.util.ArrayList;
import java.util.List;
package com.example.mikhail_sianko.myapplication.ui;





public class ListViewActivity extends AppCompatActivity {

    private static final String TAG = "ListViewActivity";

    private ListView listView;
// Path: MyApplication/app/src/main/java/com/example/mikhail_sianko/myapplication/adapter/ListViewAdapter.java
// public class ListViewAdapter extends ArrayAdapter<TwitterSearchStatuses> {
// 
// 
//     public ListViewAdapter(Context context, int resource) {
//         super(context, resource);
//     }
// 
//     public ListViewAdapter(Context context, int resource, List<TwitterSearchStatuses> objects) {
//         super(context, resource, objects);
//     }
// 
//     @NonNull
//     @Override
//     public View getView(int position, View convertView, ViewGroup parent) {
//         View view;
//         if (convertView == null) {
//             view = LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false);
//         } else {
//             view = convertView;
//         }
//         bindView(position, view);
//         return view;
//     }
// 
//     private void bindView(int position, View view) {
//         TwitterSearchStatuses status = getItem(position);
//         ((TextView) view.findViewById(R.id.user)).setText(status.getTwitterUser().getName());
//         ((TextView) view.findViewById(R.id.value)).setText(status.getText());
//     }
// 
//     @Override
//     public int getCount() {
//         return super.getCount();
//     }
// 
//     @Override
//     public int getItemViewType(int position) {
//         return super.getItemViewType(position);
//     }
// 
// }
// 
// Path: MyApplication/app/src/main/java/com/example/mikhail_sianko/myapplication/adapter/RecyclerViewAdapter.java
// public class RecyclerViewAdapter extends AbstractAdapter<TwitterSearchStatuses> {
// 
//     public static final int TYPE_CHANGED = 0;
//     public static final int TYPE_DEFAULT = 1;
//     List<TwitterSearchStatuses> data = new ArrayList<>();
// 
//     public void setOnItemListener(RecyclerViewAdapter.onItemListener onItemListener) {
//         this.onItemListener = onItemListener;
//     }
// 
//     private onItemListener onItemListener;
// 
// 
//     public interface onItemListener {
//         void onClick(TwitterSearchStatuses item, int position);
//     }
// 
//     public void setData(List<TwitterSearchStatuses> data) {
//         this.data = data;
//         notifyDataSetChanged();
//     }
// 
//     @Override
//     public void onBind(AbstractViewHolder holder, final TwitterSearchStatuses data, final int position, int viewType) {
//         holder.<TextView>get(R.id.user).setText(data.getTwitterUser().getName());
//         holder.<TextView>get(R.id.value).setText(data.getText());
//         if (viewType == TYPE_CHANGED) {
//             holder.itemView.setBackgroundColor(ContextCompat.getColor(holder.itemView.getContext(), R.color.colorAccent));
//         }
//         holder.itemView.setOnClickListener(new View.OnClickListener() {
//             @Override
//             public void onClick(View v) {
//                 if (onItemListener != null) {
//                     onItemListener.onClick(data, position);
//                 }
//             }
//         });
// 
//     }
// 
//     @Override
//     public TwitterSearchStatuses getItem(int positoin) {
//         return data.get(positoin);
//     }
// 
//     @Override
//     public AbstractViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//         View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item, parent, false);
//         return new AbstractViewHolder(view);
//     }
// 
//     @Override
//     public int getItemCount() {
//         return data.size();
//     }
// 
//     public void addItem(TwitterSearchStatuses item, int position) {
//         data.add(position, item);
//         notifyItemInserted(position);
//         int itemCount = data.size() - position;
//         notifyItemRangeChanged(position, itemCount);
//     }
// 
//     public void removeItem(int position) {
//         data.remove(position);
//         notifyItemRemoved(position);
//     }
// 
//     @Override
//     public int getItemViewType(int position) {
//         TwitterSearchStatuses item = getItem(position);
//         return item.changeMe ? TYPE_CHANGED : TYPE_DEFAULT;
//     }
// 
// }
// 
// Path: MyApplication/app/src/main/java/com/example/mikhail_sianko/myapplication/model/gson/TwitterSearchStatuses.java
// public class TwitterSearchStatuses {
// 
//     @SerializedName("created_at")
//     private Date createdAt;
// 
//     @SerializedName("text")
//     private String text;
// 
//     @SerializedName("user")
//     private TwitterUser twitterUser;
// 
//     public boolean changeMe;
// 
//     public Date getCreatedAt() {
//         return createdAt;
//     }
// 
//     public String getText() {
//         return text;
//     }
// 
//     public TwitterUser getTwitterUser() {
//         return twitterUser;
//     }
// 
//     public static TwitterSearchStatuses dummy(String user, String text) {
//         TwitterSearchStatuses statuses = new TwitterSearchStatuses();
//         statuses.text = text;
//         statuses.twitterUser = new TwitterUser();
//         statuses.twitterUser.setName(user);
//         return statuses;
//     }
// 
//     public static List<TwitterSearchStatuses> listDummy() {
//         List<TwitterSearchStatuses> results = new ArrayList<>();
//         for (int i = 0; i < 1000; i++) {
//             results.add(TwitterSearchStatuses.dummy("Text " + i, "User " + i));
//         }
//         return results;
//     }
// }


// Path: MyApplication/app/src/main/java/com/example/mikhail_sianko/myapplication/ui/ListViewActivity.java
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.ListView;
import android.widget.Toast;
import com.example.mikhail_sianko.myapplication.R;
import com.example.mikhail_sianko.myapplication.adapter.ListViewAdapter;
import com.example.mikhail_sianko.myapplication.adapter.RecyclerViewAdapter;
import com.example.mikhail_sianko.myapplication.model.gson.TwitterSearchStatuses;
import java.util.ArrayList;
import java.util.List;

package com.example.mikhail_sianko.myapplication.ui;





public class ListViewActivity extends AppCompatActivity {

    private static final String TAG = "ListViewActivity";

    private ListView listView;
    private List<TwitterSearchStatuses> statusesList = new ArrayList<>();