// Path: app/src/main/java/flying/grub/tamtime/data/map/StopZone.java
// public class StopZone {
//     private int _id;
//     private int cityway_id;
//     private int tam_id;
//     private String name;
//     private String search_name;
//     private ArrayList<Line> lines;
//     private ArrayList<Stop> stops;
// 
//     private Location location;
//     private ArrayList<Report> reportList;
//     private float distanceFromUser;
// 
//     public StopZone(String name, int _id, int tam_id, int cityway_id, String search_name, double lat, double lon){
//         this.lines = new ArrayList<>();
//         this.reportList = new ArrayList<>();
//         this.name = name;
//         this.cityway_id = cityway_id;
//         this._id = _id;
//         this.tam_id = tam_id;
//         this.search_name = search_name;
//         this.location = new Location(name);
//         this.location.setLongitude(lon);
//         this.location.setLatitude(lat);
//         this.stops = new ArrayList<>();
//     }
// 
//     public void addLine(Line line) {
//         if (!this.lines.contains(line)) {
//             this.lines.add(line);
//         }
//     }
// 
//     public void addStop(Stop stop) {
//         this.stops.add(stop);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public ArrayList<Line> getLines() {
//         return this.lines;
//     }
// 
//     public int getID() {
//         return this._id;
//     }
// 
//     public void addReport(Report report) {
//         this.reportList.add(report);
//     }
// 
//     public ArrayList<Report> getReports() {
//         ArrayList<Report> res = new ArrayList<>();
//         Calendar date = Calendar.getInstance();
//         for (Report r : this.reportList) {
//             if (r.isValid(date)) res.add(r);
//         }
//         Collections.reverse(res); // the last is the oldest now.
//         return res;
//     }
// 
//     public void removeReport(Report rep) {
//         this.reportList.remove(rep);
//     }
// 
//     public void calcDistanceFromUser(Location user) {
//         distanceFromUser = user.distanceTo(this.location);
//     }
// 
//     public String getNormalisedName() {
//         return search_name;
//     }
// 
//     public float getDistanceFromUser() {
//         return distanceFromUser;
//     }
// 
//     public ArrayList<Stop> getStops(Line line) {
//         ArrayList<Stop> res = new ArrayList<>();
//         for (Stop stop : stops) {
//             if (stop.getDirection().getLine().getCityway_id() == line.getCityway_id()) {
//                 res.add(stop);
//             }
//         }
//         return res;
//     }
// 
//     public ArrayList<Stop> getStops() {
//         return stops;
//     }
// 
//     @Override
//     public String toString() {
//         return "StopZone{" +
//                 "name='" + name + '\'' +
//                 ", lines=" + lines +
//                 ", stops=" + stops +
//                 '}';
//     }
// }


import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;
import java.util.ArrayList;
import flying.grub.tamtime.R;
import flying.grub.tamtime.data.map.StopZone;
    }

    @Override
    public int getItemCount() {
        return stops.size();
    }

    public interface OnItemClickListener {
        void onItemClick(View view , int position);
    }

    public void SetOnItemClickListener(final OnItemClickListener mItemClickListener) {
        this.mItemClickListener = mItemClickListener;
    }

    public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{

        public TextView textView;
        public LinearLayout linearLayout;


        public ViewHolder(View v) {
            super(v);
            textView = (TextView) itemView.findViewById(R.id.title);
            linearLayout = (LinearLayout) itemView.findViewById(R.id.element);
            v.setOnClickListener(this);
        }

        @Override
        public void onClick(View v) {
// Path: app/src/main/java/flying/grub/tamtime/data/map/StopZone.java
// public class StopZone {
//     private int _id;
//     private int cityway_id;
//     private int tam_id;
//     private String name;
//     private String search_name;
//     private ArrayList<Line> lines;
//     private ArrayList<Stop> stops;
// 
//     private Location location;
//     private ArrayList<Report> reportList;
//     private float distanceFromUser;
// 
//     public StopZone(String name, int _id, int tam_id, int cityway_id, String search_name, double lat, double lon){
//         this.lines = new ArrayList<>();
//         this.reportList = new ArrayList<>();
//         this.name = name;
//         this.cityway_id = cityway_id;
//         this._id = _id;
//         this.tam_id = tam_id;
//         this.search_name = search_name;
//         this.location = new Location(name);
//         this.location.setLongitude(lon);
//         this.location.setLatitude(lat);
//         this.stops = new ArrayList<>();
//     }
// 
//     public void addLine(Line line) {
//         if (!this.lines.contains(line)) {
//             this.lines.add(line);
//         }
//     }
// 
//     public void addStop(Stop stop) {
//         this.stops.add(stop);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public ArrayList<Line> getLines() {
//         return this.lines;
//     }
// 
//     public int getID() {
//         return this._id;
//     }
// 
//     public void addReport(Report report) {
//         this.reportList.add(report);
//     }
// 
//     public ArrayList<Report> getReports() {
//         ArrayList<Report> res = new ArrayList<>();
//         Calendar date = Calendar.getInstance();
//         for (Report r : this.reportList) {
//             if (r.isValid(date)) res.add(r);
//         }
//         Collections.reverse(res); // the last is the oldest now.
//         return res;
//     }
// 
//     public void removeReport(Report rep) {
//         this.reportList.remove(rep);
//     }
// 
//     public void calcDistanceFromUser(Location user) {
//         distanceFromUser = user.distanceTo(this.location);
//     }
// 
//     public String getNormalisedName() {
//         return search_name;
//     }
// 
//     public float getDistanceFromUser() {
//         return distanceFromUser;
//     }
// 
//     public ArrayList<Stop> getStops(Line line) {
//         ArrayList<Stop> res = new ArrayList<>();
//         for (Stop stop : stops) {
//             if (stop.getDirection().getLine().getCityway_id() == line.getCityway_id()) {
//                 res.add(stop);
//             }
//         }
//         return res;
//     }
// 
//     public ArrayList<Stop> getStops() {
//         return stops;
//     }
// 
//     @Override
//     public String toString() {
//         return "StopZone{" +
//                 "name='" + name + '\'' +
//                 ", lines=" + lines +
//                 ", stops=" + stops +
//                 '}';
//     }
// }


// Path: app/src/main/java/flying/grub/tamtime/adapter/SeachResultAdapter.java
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;
import java.util.ArrayList;
import flying.grub.tamtime.R;
import flying.grub.tamtime.data.map.StopZone;

    }

    @Override
    public int getItemCount() {
        return stops.size();
    }

    public interface OnItemClickListener {
        void onItemClick(View view , int position);
    }

    public void SetOnItemClickListener(final OnItemClickListener mItemClickListener) {
        this.mItemClickListener = mItemClickListener;
    }

    public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{

        public TextView textView;
        public LinearLayout linearLayout;


        public ViewHolder(View v) {
            super(v);
            textView = (TextView) itemView.findViewById(R.id.title);
            linearLayout = (LinearLayout) itemView.findViewById(R.id.element);
            v.setOnClickListener(this);
        }

        @Override
        public void onClick(View v) {
            if (mItemClickListener != null) {