// Path: AccBeacons/app/src/main/java/com/accengage/samples/beacons/Beacon.java
// public class Beacon {
// 
//     private String mId;
//     private String mUuid;
//     private int mMajor;
//     private int mMinor;
//     private int mTransition;
//     private int mPower;
//     private double mDistance;
//     private String mAccuracy;
//     private int mRssi;
//     private Date mDate;
// 
//     public String getInternalId() {
//         return mUuid + String.valueOf(mMajor) + String.valueOf(mMinor);
//     }
// 
//     public String getId() {
//         return mId;
//     }
// 
//     public void setId(String id) {
//         mId = id;
//     }
// 
//     public String getUuid() {
//         return mUuid;
//     }
// 
//     public void setUuid(String uuid) {
//         mUuid = uuid;
//     }
// 
//     public int getMajor() {
//         return mMajor;
//     }
// 
//     public void setMajor(int major) {
//         mMajor = major;
//     }
// 
//     public int getMinor() {
//         return mMinor;
//     }
// 
//     public void setMinor(int minor) {
//         mMinor = minor;
//     }
// 
//     public int getTransition() {
//         return mTransition;
//     }
// 
//     public void setTransition(int transition) {
//         mTransition = transition;
//     }
// 
//     public int getPower() {
//         return mPower;
//     }
// 
//     public void setPower(int power) {
//         mPower = power;
//     }
// 
//     public double getDistance() {
//         return mDistance;
//     }
// 
//     public void setDistance(double distance) {
//         mDistance = distance;
//     }
// 
//     public String getAccuracy() {
//         return mAccuracy;
//     }
// 
//     public void setAccuracy(String accuracy) {
//         mAccuracy = accuracy;
//     }
// 
//     public int getRssi() {
//         return mRssi;
//     }
// 
//     public void setRssi(int rssi) {
//         mRssi = rssi;
//     }
// 
//     public Date getDate() {
//         return mDate;
//     }
// 
//     public void setDate(Date date) {
//         mDate = date;
//     }
// 
//     public static Beacon fromBundle(Bundle bundle) {
//         Beacon beacon = new Beacon();
//         beacon.setId(bundle.getString("id"));
//         beacon.setUuid(bundle.getString("uuid"));
//         beacon.setMajor(bundle.getInt("maj"));
//         beacon.setMinor(bundle.getInt("min"));
//         beacon.setTransition(bundle.getInt("transition"));
//         beacon.setPower(bundle.getInt("power"));
//         beacon.setDistance(bundle.getDouble("dist"));
//         beacon.setAccuracy(bundle.getString("acc"));
//         beacon.setRssi(bundle.getInt("rssi"));
//         beacon.setDate(new Date(bundle.getLong("date")));
//         return beacon;
//     }
// }
// 
// Path: AccBeacons/app/src/main/java/com/accengage/samples/beacons/BeaconAdapter.java
// public class BeaconAdapter extends RecyclerView.Adapter<BeaconAdapter.ViewHolder> {
// 
//     private LinkedHashMap<String, Beacon> mDataset;
// 
//     public BeaconAdapter(LinkedHashMap<String, Beacon> dataset) {
//         mDataset = dataset;
//     }
// 
//     @Override
//     public BeaconAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//         return new ViewHolder(new BeaconView(parent.getContext()));
//     }
// 
//     @Override
//     public void onBindViewHolder(BeaconAdapter.ViewHolder holder, int position) {
//         holder.getCell().bind(getItem(position));
//     }
// 
//     private Beacon getItem(int position) {
//         return mDataset.get(getItemKey(position));
//     }
// 
//     private String getItemKey(int position) {
//         Set<String> keys = mDataset.keySet();
//         int i = 0;
//         for (String key : keys) {
//             if (i == position) {
//                 return key;
//             }
//             i++;
//         }
//         return null;
//     }
// 
//     @Override
//     public int getItemCount() {
//         return mDataset.size();
//     }
// 
//     public static class ViewHolder extends RecyclerView.ViewHolder {
//         private BeaconView mCell;
// 
//         public ViewHolder(BeaconView v) {
//             super(v);
//             mCell = v;
//         }
// 
//         public BeaconView getCell() {
//             return mCell;
//         }
//     }
// 
// 
// }


import android.Manifest;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.os.Bundle;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import com.accengage.samples.beacons.Beacon;
import com.accengage.samples.beacons.BeaconAdapter;
import com.accengage.samples.beacons.R;
import com.ad4screen.sdk.A4S;
import com.ad4screen.sdk.Constants;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Set;
package com.accengage.samples.beacons.activities;




public class MainActivity extends Activity {

    private static final int LOCATION_REQUEST = 1;

    private RecyclerView mBeaconList;
    private BeaconAdapter mBeaconAdapter;
// Path: AccBeacons/app/src/main/java/com/accengage/samples/beacons/Beacon.java
// public class Beacon {
// 
//     private String mId;
//     private String mUuid;
//     private int mMajor;
//     private int mMinor;
//     private int mTransition;
//     private int mPower;
//     private double mDistance;
//     private String mAccuracy;
//     private int mRssi;
//     private Date mDate;
// 
//     public String getInternalId() {
//         return mUuid + String.valueOf(mMajor) + String.valueOf(mMinor);
//     }
// 
//     public String getId() {
//         return mId;
//     }
// 
//     public void setId(String id) {
//         mId = id;
//     }
// 
//     public String getUuid() {
//         return mUuid;
//     }
// 
//     public void setUuid(String uuid) {
//         mUuid = uuid;
//     }
// 
//     public int getMajor() {
//         return mMajor;
//     }
// 
//     public void setMajor(int major) {
//         mMajor = major;
//     }
// 
//     public int getMinor() {
//         return mMinor;
//     }
// 
//     public void setMinor(int minor) {
//         mMinor = minor;
//     }
// 
//     public int getTransition() {
//         return mTransition;
//     }
// 
//     public void setTransition(int transition) {
//         mTransition = transition;
//     }
// 
//     public int getPower() {
//         return mPower;
//     }
// 
//     public void setPower(int power) {
//         mPower = power;
//     }
// 
//     public double getDistance() {
//         return mDistance;
//     }
// 
//     public void setDistance(double distance) {
//         mDistance = distance;
//     }
// 
//     public String getAccuracy() {
//         return mAccuracy;
//     }
// 
//     public void setAccuracy(String accuracy) {
//         mAccuracy = accuracy;
//     }
// 
//     public int getRssi() {
//         return mRssi;
//     }
// 
//     public void setRssi(int rssi) {
//         mRssi = rssi;
//     }
// 
//     public Date getDate() {
//         return mDate;
//     }
// 
//     public void setDate(Date date) {
//         mDate = date;
//     }
// 
//     public static Beacon fromBundle(Bundle bundle) {
//         Beacon beacon = new Beacon();
//         beacon.setId(bundle.getString("id"));
//         beacon.setUuid(bundle.getString("uuid"));
//         beacon.setMajor(bundle.getInt("maj"));
//         beacon.setMinor(bundle.getInt("min"));
//         beacon.setTransition(bundle.getInt("transition"));
//         beacon.setPower(bundle.getInt("power"));
//         beacon.setDistance(bundle.getDouble("dist"));
//         beacon.setAccuracy(bundle.getString("acc"));
//         beacon.setRssi(bundle.getInt("rssi"));
//         beacon.setDate(new Date(bundle.getLong("date")));
//         return beacon;
//     }
// }
// 
// Path: AccBeacons/app/src/main/java/com/accengage/samples/beacons/BeaconAdapter.java
// public class BeaconAdapter extends RecyclerView.Adapter<BeaconAdapter.ViewHolder> {
// 
//     private LinkedHashMap<String, Beacon> mDataset;
// 
//     public BeaconAdapter(LinkedHashMap<String, Beacon> dataset) {
//         mDataset = dataset;
//     }
// 
//     @Override
//     public BeaconAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//         return new ViewHolder(new BeaconView(parent.getContext()));
//     }
// 
//     @Override
//     public void onBindViewHolder(BeaconAdapter.ViewHolder holder, int position) {
//         holder.getCell().bind(getItem(position));
//     }
// 
//     private Beacon getItem(int position) {
//         return mDataset.get(getItemKey(position));
//     }
// 
//     private String getItemKey(int position) {
//         Set<String> keys = mDataset.keySet();
//         int i = 0;
//         for (String key : keys) {
//             if (i == position) {
//                 return key;
//             }
//             i++;
//         }
//         return null;
//     }
// 
//     @Override
//     public int getItemCount() {
//         return mDataset.size();
//     }
// 
//     public static class ViewHolder extends RecyclerView.ViewHolder {
//         private BeaconView mCell;
// 
//         public ViewHolder(BeaconView v) {
//             super(v);
//             mCell = v;
//         }
// 
//         public BeaconView getCell() {
//             return mCell;
//         }
//     }
// 
// 
// }


// Path: AccBeacons/app/src/main/java/com/accengage/samples/beacons/activities/MainActivity.java
import android.Manifest;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.os.Bundle;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import com.accengage.samples.beacons.Beacon;
import com.accengage.samples.beacons.BeaconAdapter;
import com.accengage.samples.beacons.R;
import com.ad4screen.sdk.A4S;
import com.ad4screen.sdk.Constants;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Set;

package com.accengage.samples.beacons.activities;




public class MainActivity extends Activity {

    private static final int LOCATION_REQUEST = 1;

    private RecyclerView mBeaconList;
    private BeaconAdapter mBeaconAdapter;
    private LinkedHashMap<String, Beacon> mBeacons = new LinkedHashMap<>();