Android Open Source - FisgoDroid Notifications Poller






From Project

Back to project page FisgoDroid.

License

The source code is released under:

The smiley icons bundled with this application belong to Meneame.NET and are licensed under the Creative Commons by-sa 3.0 license. For more information, please visit http://creativecommons.org/licens...

If you think the Android project FisgoDroid 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 net.meneame.fisgodroid.notifications;
/*w  w  w  .ja  va 2s  .c  o  m*/
import java.util.Map;
import java.util.Map.Entry;

import net.meneame.fisgodroid.FisgoService;

public class NotificationsPoller
{
    public interface Listener
    {
        public void onNotificationsUpdate(String type, int count);
    }

    private Poller mPoller;
    private Listener mListener;

    public NotificationsPoller()
    {
    }

    public void setListener(Listener listener)
    {
        mListener = listener;
    }

    public void stop()
    {
        if ( mPoller != null )
        {
            mPoller.cancel();
            mPoller = null;
        }
    }

    public void start(FisgoService.FisgoBinder service, int interval)
    {
        mPoller = new Poller(service, interval);
        new Thread(mPoller).start();
    }

    private class Poller implements Runnable
    {
        private boolean mCancelled = false;
        private FisgoService.FisgoBinder mService;
        private int mInterval;

        public Poller(FisgoService.FisgoBinder service, int interval)
        {
            mService = service;
            mInterval = interval;
        }

        @Override
        public void run()
        {
            while (!mCancelled)
            {
                try
                {
                    if ( mListener != null )
                    {
                        Map<String, Integer> notifications = mService.getNotifications();
                        for (Entry<String, Integer> entry : notifications.entrySet())
                        {
                            mListener.onNotificationsUpdate(entry.getKey(), entry.getValue());
                        }
                    }
                    Thread.sleep(mInterval);
                }
                catch (InterruptedException e)
                {
                }
            }
        }

        public void cancel()
        {
            mCancelled = true;
        }
    }
}




Java Source Code List

jp.tomorrowkey.android.GifDecoder.java
net.meneame.fisgodroid.AnimatedGifDrawable.java
net.meneame.fisgodroid.ChatActivity.java
net.meneame.fisgodroid.ChatBaseView.java
net.meneame.fisgodroid.ChatBubbleView.java
net.meneame.fisgodroid.ChatLineView.java
net.meneame.fisgodroid.ChatMessage.java
net.meneame.fisgodroid.ChatType.java
net.meneame.fisgodroid.DynamicTextView.java
net.meneame.fisgodroid.FisgoScheduler.java
net.meneame.fisgodroid.FisgoService.java
net.meneame.fisgodroid.FisgodroidApplication.java
net.meneame.fisgodroid.FriendshipStatus.java
net.meneame.fisgodroid.HttpService.java
net.meneame.fisgodroid.IHttpService.java
net.meneame.fisgodroid.ImageUpload.java
net.meneame.fisgodroid.LogSaver.java
net.meneame.fisgodroid.LoginActivity.java
net.meneame.fisgodroid.LoginStatus.java
net.meneame.fisgodroid.Notifications.java
net.meneame.fisgodroid.ProfileActivity.java
net.meneame.fisgodroid.SettingsActivity.java
net.meneame.fisgodroid.SmileyPickerView.java
net.meneame.fisgodroid.SmileySpan.java
net.meneame.fisgodroid.Smiley.java
net.meneame.fisgodroid.Smileys.java
net.meneame.fisgodroid.ThreeStateChecboxHackView.java
net.meneame.fisgodroid.UserProfileFetcher.java
net.meneame.fisgodroid.UserProfile.java
net.meneame.fisgodroid.adapters.BubblesChatAdapter.java
net.meneame.fisgodroid.adapters.ChatMessageAdapter.java
net.meneame.fisgodroid.adapters.LegacyChatAdapter.java
net.meneame.fisgodroid.notifications.ElementAdapter.java
net.meneame.fisgodroid.notifications.NotificationElement.java
net.meneame.fisgodroid.notifications.NotificationView.java
net.meneame.fisgodroid.notifications.NotificationsIndicatorDrawable.java
net.meneame.fisgodroid.notifications.NotificationsLayout.java
net.meneame.fisgodroid.notifications.NotificationsPoller.java