package com.aincc.lib.network.common;
import android.os.Handler;
import android.os.Message;
/**
*
* <h3><b>NetworkHandler</b></h3></br>
*
* @author aincc@barusoft.com
* @version 1.0.0
* @since 1.0.0
*/
public class NetworkHandler extends Handler implements INetworkListener
{
/**
* @since 1.0.0
*/
private static final int MESSAGE_ENABLED = 0;
/**
* @since 1.0.0
*/
private static final int MESSAGE_DISABLED = 1;
/**
* @since 1.0.0
*/
private static final int MESSAGE_LISTENED_ERROR = 2;
/**
* @since 1.0.0
*/
private static final int MESSAGE_LISTENED_TRANSACTION = 3;
/**
* @since 1.0.0
*/
private static final int MESSAGE_KEEPALIVE = 4;
/**
* @since 1.0.0
*/
private static final int MESSAGE_CONNECTED = 5;
/**
* @since 1.0.0
*/
private static final int MESSAGE_DISCONNECTED = 6;
/**
* @since 1.0.0
*/
private static final int MESSAGE_REJECTED_EXECUTE = 7;
/**
* @since 1.0.0
*/
private INetworkListener listener;
/**
* constructor
*
* @since 1.0.0
* @param listener
*/
public NetworkHandler(INetworkListener listener)
{
this.listener = listener;
}
/*
* (non-Javadoc)
*
* @see android.os.Handler#handleMessage(android.os.Message)
*/
@Override
public void handleMessage(Message message)
{
try
{
switch (message.what)
{
case MESSAGE_ENABLED:
this.listener.iNetEnabled();
break;
case MESSAGE_DISABLED:
this.listener.iNetDisabled();
break;
case MESSAGE_LISTENED_ERROR:
this.listener.iNetListenedError((BaseTransEx) message.obj);
break;
case MESSAGE_LISTENED_TRANSACTION:
this.listener.iNetListenedTransaction((BaseTrans) message.obj);
break;
case MESSAGE_KEEPALIVE:
if (message.obj == null)
{
this.listener.iNetKeepAlive();
}
else
{
this.listener.iNetKeepAlive((String) message.obj);
}
break;
case MESSAGE_CONNECTED:
if (message.obj == null)
{
this.listener.iNetConnected();
}
else
{
this.listener.iNetConnected((String) message.obj);
}
break;
case MESSAGE_DISCONNECTED:
if (message.obj == null)
{
this.listener.iNetDisconnected();
}
else
{
this.listener.iNetDisconnected((String) message.obj);
}
break;
case MESSAGE_REJECTED_EXECUTE:
this.listener.iNetRejectedExecution((BaseTransEx) message.obj);
break;
}
}
catch (Exception localException)
{
}
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetEnabled()
*/
@Override
public void iNetEnabled()
{
Message message = obtainMessage(MESSAGE_ENABLED);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetDisabled()
*/
@Override
public void iNetDisabled()
{
Message message = obtainMessage(MESSAGE_DISABLED);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetListenedTransaction(com.baru.core.network.BaseTrans)
*/
@Override
public boolean iNetListenedTransaction(BaseTrans tr)
{
Message message = obtainMessage(MESSAGE_LISTENED_TRANSACTION, tr);
sendMessage(message);
return true;
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetListenedError(com.baru.core.network.BaseTransEx)
*/
@Override
public boolean iNetListenedError(BaseTransEx ex)
{
Message message = obtainMessage(MESSAGE_LISTENED_ERROR, ex);
sendMessage(message);
return true;
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetKeepAlive()
*/
@Override
public void iNetKeepAlive()
{
Message message = obtainMessage(MESSAGE_KEEPALIVE);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetKeepAlive(java.lang.String)
*/
@Override
public void iNetKeepAlive(String param)
{
Message message = obtainMessage(MESSAGE_KEEPALIVE, param);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetConnected()
*/
@Override
public void iNetConnected()
{
Message message = obtainMessage(MESSAGE_CONNECTED);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetConnected(java.lang.String)
*/
@Override
public void iNetConnected(String param)
{
Message message = obtainMessage(MESSAGE_CONNECTED, param);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetDisconnected()
*/
@Override
public void iNetDisconnected()
{
Message message = obtainMessage(MESSAGE_DISCONNECTED);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetDisconnected(java.lang.String)
*/
@Override
public void iNetDisconnected(String param)
{
Message message = obtainMessage(MESSAGE_DISCONNECTED, param);
sendMessage(message);
}
/*
* (non-Javadoc)
*
* @see com.baru.core.network.INetworkListener#iNetRejectedExecution(com.baru.core.network.BaseTransEx)
*/
@Override
public void iNetRejectedExecution(BaseTransEx ex)
{
Message message = obtainMessage(MESSAGE_REJECTED_EXECUTE, ex);
sendMessage(message);
}
}