Android Open Source - YourWiFi Raw Network List Adapter






From Project

Back to project page YourWiFi.

License

The source code is released under:

MIT License

If you think the Android project YourWiFi listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.akisute.yourwifi.app.model;
/*  w ww  .j a  v a  2s.c  o  m*/
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

import com.akisute.yourwifi.app.R;
import com.akisute.yourwifi.app.util.GlobalEventBus;
import com.akisute.yourwifi.app.util.GlobalResources;
import com.squareup.otto.Subscribe;

import java.util.ArrayList;
import java.util.List;

import javax.inject.Inject;

import butterknife.ButterKnife;
import butterknife.InjectView;

public class RawNetworkListAdapter extends BaseAdapter {

    class ViewHolder {

        @InjectView(R.id.ssid)
        TextView ssid;
        @InjectView(R.id.bssid)
        TextView bssid;
        @InjectView(R.id.crypto)
        TextView crypto;
        @InjectView(R.id.level)
        TextView level;
        @InjectView(R.id.frequency)
        TextView frequency;
        @InjectView(R.id.capabilities)
        TextView capabilities;

        ViewHolder(View view) {
            ButterKnife.inject(this, view);
        }
    }

    @Inject
    LayoutInflater mLayoutInflater;
    @Inject
    GlobalResources mGlobalResources;
    @Inject
    GlobalEventBus mGlobalEventBus;
    @Inject
    NetworkCache mNetworkCache;

    private final List<Network> mNetworkList = new ArrayList<Network>();

    @Inject
    public RawNetworkListAdapter(LayoutInflater layoutInflater, GlobalResources globalResources, GlobalEventBus globalEventBus, NetworkCache networkCache) {
        mLayoutInflater = layoutInflater;
        mGlobalResources = globalResources;
        mGlobalEventBus = globalEventBus;
        mNetworkCache = networkCache;
    }

    public void registerToEventBus() {
        mGlobalEventBus.register(this);
    }

    public void unregisterFromEventBus() {
        mGlobalEventBus.unregister(this);
    }

    public void update() {
        mNetworkList.clear();
        mNetworkList.addAll(mNetworkCache.getAllNetworkList());
        notifyDataSetChanged();
    }

    @Override
    public int getCount() {
        return mNetworkList.size();
    }

    @Override
    public Network getItem(int position) {
        return mNetworkList.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder viewHolder;
        if (convertView == null) {
            convertView = mLayoutInflater.inflate(R.layout.list_raw_network_item, null, false);
            viewHolder = new ViewHolder(convertView);
            convertView.setTag(viewHolder);
        } else {
            viewHolder = (ViewHolder) convertView.getTag();
        }

        Network network = getItem(position);
        viewHolder.ssid.setText(network.getSsid());
        viewHolder.bssid.setText(network.getBssid());
        viewHolder.crypto.setText(mGlobalResources.getCryptoTypeName(network.getCryptoType()));
        viewHolder.crypto.setTextColor(mGlobalResources.getCryptoTypeFontColor(network.getCryptoType()));
        viewHolder.level.setText(mGlobalResources.getResources().getString(R.string.list_network_item_level, network.getLevel()));
        viewHolder.capabilities.setText(network.getCapabilities());

        int channel = network.getChannel();
        if (channel == Network.CHANNEL_UNKNOWN) {
            viewHolder.frequency.setText(mGlobalResources.getResources().getString(R.string.list_network_item_frequency, network.getFrequency()));
        } else {
            viewHolder.frequency.setText(mGlobalResources.getResources().getString(R.string.list_network_item_frequency_channel, network.getFrequency(), channel));
        }

        return convertView;
    }

    @Subscribe
    public void onNewScanResultsEvent(NetworkScanManager.OnNewScanResultsEvent event) {
        update();
    }
}




Java Source Code List

com.akisute.yourwifi.app.Application.java
com.akisute.yourwifi.app.CloudLoginDialogFragment.java
com.akisute.yourwifi.app.EssidDetailActivity.java
com.akisute.yourwifi.app.EssidDetailFragment.java
com.akisute.yourwifi.app.EssidListFragment.java
com.akisute.yourwifi.app.MainActivity.java
com.akisute.yourwifi.app.NetworkMapFragment.java
com.akisute.yourwifi.app.NetworkRecordingService.java
com.akisute.yourwifi.app.RawNetworkListFragment.java
com.akisute.yourwifi.app.SettingsActivity.java
com.akisute.yourwifi.app.SettingsFragment.java
com.akisute.yourwifi.app.cloud.CloudManager.java
com.akisute.yourwifi.app.dagger.AndroidSystemModule.java
com.akisute.yourwifi.app.dagger.ApplicationModule.java
com.akisute.yourwifi.app.intent.Intents.java
com.akisute.yourwifi.app.model.BssidListAdapter.java
com.akisute.yourwifi.app.model.EssidComparators.java
com.akisute.yourwifi.app.model.EssidListAdapter.java
com.akisute.yourwifi.app.model.Essid.java
com.akisute.yourwifi.app.model.LocationScanManager.java
com.akisute.yourwifi.app.model.NetworkCache.java
com.akisute.yourwifi.app.model.NetworkComparators.java
com.akisute.yourwifi.app.model.NetworkScanManager.java
com.akisute.yourwifi.app.model.Network.java
com.akisute.yourwifi.app.model.RawNetworkListAdapter.java
com.akisute.yourwifi.app.util.GlobalEventBus.java
com.akisute.yourwifi.app.util.GlobalResources.java
com.akisute.yourwifi.app.util.GlobalSharedPreferences.java