// Path: app/src/main/java/pt/passarola/model/ClosestPlace.java
// public class ClosestPlace {
// 
//     private final Place place;
//     private final int distance;
// 
//     public ClosestPlace(Place place, int distance) {
//         this.place = place;
//         this.distance = distance;
//     }
// 
//     public Place getPlace() {
//         return place;
//     }
// 
//     public int getDistance() {
//         return distance;
//     }
// }
// 
// Path: app/src/main/java/pt/passarola/model/Place.java
// public class Place {
// 
//     private String id;
//     private String name;
//     @SerializedName("full_address")
//     private String fullAddress;
//     private String location;
//     private String council;
//     private String country;
//     private String lat;
//     private String lng;
//     private String type;
//     private String facebook;
//     private String zomato;
//     private String gmaps;
//     private String tripadvisor;
//     private String website;
//     private String email;
//     private String telephone;
//     private String active;
//     private String updated;
// 
//     public String getId() {
//         return id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public String getFullAddress() {
//         return fullAddress;
//     }
// 
//     public String getLocation() {
//         return location;
//     }
// 
//     public String getCouncil() {
//         return council;
//     }
// 
//     public String getCountry() {
//         return country;
//     }
// 
//     public String getLat() {
//         return lat;
//     }
// 
//     public String getLng() {
//         return lng;
//     }
// 
//     public String getType() {
//         return type;
//     }
// 
//     public String getFacebook() {
//         return facebook;
//     }
// 
//     public String getGmaps() {
//         return gmaps;
//     }
// 
//     public String getTripadvisor() {
//         return tripadvisor;
//     }
// 
//     public String getWebsite() {
//         return website;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public String getTelephone() {
//         return telephone;
//     }
// 
//     public String getActive() {
//         return active;
//     }
// 
//     public String getUpdated() {
//         return updated;
//     }
// 
//     public String getZomato() {
//         return zomato;
//     }
// 
//     public LatLng getLatLng(){
//         Double dLat = Double.valueOf(lat);
//         Double dLng = Double.valueOf(lng);
//         return new LatLng(dLat, dLng);
//     }
// 
//     public boolean isValid(){
//         return name != null && !name.isEmpty() &&
//                 lat != null && !lat.isEmpty() &&
//                 lng != null && !lng.isEmpty();
//     }
// }


import android.support.annotation.Nullable;
import com.google.android.gms.maps.model.LatLng;
import java.util.ArrayList;
import java.util.List;
import pt.passarola.model.ClosestPlace;
import pt.passarola.model.Place;
        public Builder latLng(LatLng latLng){
            this.latLng = latLng;
            return this;
        }

        public Builder distance(int distance){
            this.distance = distance;
            return this;
        }

        public Builder facebook(String facebook){
            this.facebook = facebook;
            return this;
        }

        public Builder zomato(String zomato){
            this.zomato = zomato;
            return this;
        }

        public Builder tripadvisor(String tripadvisor){
            this.tripadvisor = tripadvisor;
            return this;
        }

        public PlaceViewModel build(){
            return new PlaceViewModel(this);
        }
    }

// Path: app/src/main/java/pt/passarola/model/ClosestPlace.java
// public class ClosestPlace {
// 
//     private final Place place;
//     private final int distance;
// 
//     public ClosestPlace(Place place, int distance) {
//         this.place = place;
//         this.distance = distance;
//     }
// 
//     public Place getPlace() {
//         return place;
//     }
// 
//     public int getDistance() {
//         return distance;
//     }
// }
// 
// Path: app/src/main/java/pt/passarola/model/Place.java
// public class Place {
// 
//     private String id;
//     private String name;
//     @SerializedName("full_address")
//     private String fullAddress;
//     private String location;
//     private String council;
//     private String country;
//     private String lat;
//     private String lng;
//     private String type;
//     private String facebook;
//     private String zomato;
//     private String gmaps;
//     private String tripadvisor;
//     private String website;
//     private String email;
//     private String telephone;
//     private String active;
//     private String updated;
// 
//     public String getId() {
//         return id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public String getFullAddress() {
//         return fullAddress;
//     }
// 
//     public String getLocation() {
//         return location;
//     }
// 
//     public String getCouncil() {
//         return council;
//     }
// 
//     public String getCountry() {
//         return country;
//     }
// 
//     public String getLat() {
//         return lat;
//     }
// 
//     public String getLng() {
//         return lng;
//     }
// 
//     public String getType() {
//         return type;
//     }
// 
//     public String getFacebook() {
//         return facebook;
//     }
// 
//     public String getGmaps() {
//         return gmaps;
//     }
// 
//     public String getTripadvisor() {
//         return tripadvisor;
//     }
// 
//     public String getWebsite() {
//         return website;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public String getTelephone() {
//         return telephone;
//     }
// 
//     public String getActive() {
//         return active;
//     }
// 
//     public String getUpdated() {
//         return updated;
//     }
// 
//     public String getZomato() {
//         return zomato;
//     }
// 
//     public LatLng getLatLng(){
//         Double dLat = Double.valueOf(lat);
//         Double dLng = Double.valueOf(lng);
//         return new LatLng(dLat, dLng);
//     }
// 
//     public boolean isValid(){
//         return name != null && !name.isEmpty() &&
//                 lat != null && !lat.isEmpty() &&
//                 lng != null && !lng.isEmpty();
//     }
// }


// Path: app/src/main/java/pt/passarola/model/viewmodel/PlaceViewModel.java
import android.support.annotation.Nullable;
import com.google.android.gms.maps.model.LatLng;
import java.util.ArrayList;
import java.util.List;
import pt.passarola.model.ClosestPlace;
import pt.passarola.model.Place;

        public Builder latLng(LatLng latLng){
            this.latLng = latLng;
            return this;
        }

        public Builder distance(int distance){
            this.distance = distance;
            return this;
        }

        public Builder facebook(String facebook){
            this.facebook = facebook;
            return this;
        }

        public Builder zomato(String zomato){
            this.zomato = zomato;
            return this;
        }

        public Builder tripadvisor(String tripadvisor){
            this.tripadvisor = tripadvisor;
            return this;
        }

        public PlaceViewModel build(){
            return new PlaceViewModel(this);
        }
    }

    public static List<PlaceViewModel> createViewModelList(List<Place> places){