Android Open Source - Icinga-Mobile Service Details Fragment






From Project

Back to project page Icinga-Mobile.

License

The source code is released under:

GNU General Public License

If you think the Android project Icinga-Mobile 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 mhst.dreamteam.UI;
/*from   ww w.j av  a  2 s .c o  m*/
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Fragment;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.Switch;
import android.widget.TextView;

import java.util.ArrayList;
import java.util.Map;

import mhst.dreamteam.IcingaClient.Icinga.IcingaApi;
import mhst.dreamteam.IcingaClient.Icinga.IcingaApiConst;
import mhst.dreamteam.IcingaClient.Icinga.IcingaConst;
import mhst.dreamteam.IcingaClient.Icinga.IcingaUdt;
import mhst.dreamteam.IcingaClient.Interface.OnCompleteListener;
import mhst.dreamteam.IcingaClient.SessionMng.Session;
import mhst.dreamteam.R;

/**
 * Created by ltmp on 9/27/2014.
 */
public class ServiceDetailsFragment extends Fragment implements OnCompleteListener {
    private Context mContext;
    private Session currentSs;
    private ProgressDialog mProgress;
    private int numberOfProgress;

    private ArrayList<Map<String, Object>> mService;
    private ServicelistAdapter mListServiceAdapter;
    private String mRequest;
    private AlertDialog mDialog;

    private TextView tvTenService;
    private TextView tvServiceNextCheck;
    private TextView tvServiceStatus ;
    private TextView tvServiceStatusInformation ;
    private TextView tvServicePerformData ;
    private TextView tvServiceCurrentAttempt ;
    private TextView tvServiceLatency ;
    private TextView tvServiceNextActive ;
    private TextView tvServiceLastState ;
    private TextView tvServiceFlapping ;
    private TextView tvServiceDownTime ;
    private TextView tvServiceLastUpDate ;
    private Switch swServiceActiveCheck;
    private Switch swServicePassiveCheck ;
    private Switch swServiceNotification ;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_service_details, container, false);
        // doan khai bao cu
        mContext = inflater.getContext();
        currentSs = Session.getInstance();
        numberOfProgress = 0;
        mProgress = new ProgressDialog(mContext);
        mProgress.setCancelable(false);
        mProgress.setMessage(mContext.getResources().getString(R.string.message_loading_data) + "...");

//        mService = new ArrayList<Map<String, Object>>();
//        ListView listService = (ListView) view.findViewById(R.id.lvListService);
//        mListServiceAdapter = new ServicelistAdapter(inflater, mService);
//        listService.setAdapter(mListServiceAdapter);

        ((Activity) mContext).setTitle("Service Details");
        // doan khai bao cu
        tvTenService = (TextView) view.findViewById(R.id.tvTenService);
        tvServiceNextCheck = (TextView) view.findViewById(R.id.tvServiceNextCheck);
        //tvStatus = (TextView) view.findViewById(R.id.tvStatus);
        tvServiceStatusInformation = (TextView) view.findViewById(R.id.tvServiceStatusInformation);
        tvServicePerformData = (TextView) view.findViewById(R.id.tvServicePerformData);
        tvServiceCurrentAttempt = (TextView) view.findViewById(R.id.tvServiceCurrentAttempt);
        tvServiceLatency = (TextView) view.findViewById(R.id.tvServiceLatency);
        tvServiceNextActive = (TextView) view.findViewById(R.id.tvServiceNextActive);
        tvServiceLastState = (TextView) view.findViewById(R.id.tvServiceLastState);
        tvServiceFlapping = (TextView) view.findViewById(R.id.tvServiceFlapping);
        tvServiceDownTime = (TextView) view.findViewById(R.id.tvServiceDownTime);
        tvServiceLastUpDate = (TextView) view.findViewById(R.id.tvServiceLastUpDate);
        swServiceActiveCheck= (Switch) view.findViewById(R.id.swServiceActiveCheck);
        swServicePassiveCheck = (Switch) view.findViewById(R.id.swServicePassiveCheck);
        swServiceNotification = (Switch) view.findViewById(R.id.swServiceNotification);
        // khai bao xong
        // Get argument
        Bundle arg = getArguments();
        String request;
        if (arg != null) {
            if ((request = arg.getString("ServiceId", null)) != null) {
                mRequest = IcingaUdt.getTemplate(IcingaUdt.ICINGA_TEMPLATE_MAINACTIVITY_SERVICE, 0, -1, request);
            }
        }

        updateList();
        return view;
    }

    @Override
    public void onResume() {
        super.onResume();
        if (mDialog != null && mDialog.isShowing()) {
            mDialog.dismiss();
        }
        updateList();
    }

    public void updateList() {
        if (!currentSs.isInProgress() && !mProgress.isShowing()) {
            currentSs.isInProgress(true);
            mProgress.show();
        }
        numberOfProgress = 1;
        IcingaApi.get(this, mRequest);
    }

    @Override
    @SuppressWarnings("unchecked")
    public void onComplete(Object obj, String sender) {
        if (obj != null) {
            if (!((ArrayList<Map<String, Object>>) obj).isEmpty()) {
                Map<String, Object> result = ((ArrayList<Map<String, Object>>) obj).get(0);
                String sStatus = "";
                int nColor = Color.WHITE;
//            tvStatus.setText(stt);
                tvTenService.setText((String) result.get(IcingaConst.SERVICE_NAME));
                switch (Integer.parseInt((String) result.get(IcingaConst.SERVICE_CURRENT_STATE))) {
                    case IcingaApiConst.SERVICE_STATE_OK:
                        nColor = Color.GREEN;
                        sStatus = "OK";
                        break;
                    case IcingaApiConst.SERVICE_STATE_WARNING:
                        nColor = Color.GRAY;
                        sStatus = "WARNING";
                        break;
                    case IcingaApiConst.SERVICE_STATE_CRITICAL:
                        nColor = Color.RED;
                        sStatus = "CRITICAL";
                        break;
                }
                tvServiceStatusInformation.setTextColor(nColor);
                tvServiceStatusInformation.setText(sStatus);
                tvServiceCurrentAttempt.setText((String) result.get(IcingaConst.SERVICE_CURRENT_CHECK_ATTEMPT));
                tvServiceLatency.setText((String) result.get(IcingaConst.SERVICE_LATENCY));
                tvServiceNextActive.setText((String) result.get(IcingaConst.SERVICE_NEXT_CHECK));
                tvServiceLastState.setText((String) result.get(IcingaConst.SERVICE_LAST_STATE_CHANGE));
                tvServiceFlapping.setText((String) result.get(IcingaConst.SERVICE_IS_FLAPPING));
                tvServiceDownTime.setText((String) result.get(IcingaConst.SERVICE_SCHEDULED_DOWNTIME_DEPTH));
                tvServiceLastUpDate.setText((String) result.get(IcingaConst.SERVICE_STATUS_UPDATE_TIME));
                tvServicePerformData.setText((String) result.get(IcingaConst.SERVICE_PERFDATA));
            }
        }
        if (mProgress != null && mProgress.isShowing() && --numberOfProgress == 0) {
            mProgress.dismiss();
            currentSs.isInProgress(false);
        }
    }


}




Java Source Code List

mhst.dreamteam.ApplicationContext.java
mhst.dreamteam.ApplicationTest.java
mhst.dreamteam.ApplicationTest.java
mhst.dreamteam.MainActivity.java
mhst.dreamteam.IcingaClient.GlobalConfig.java
mhst.dreamteam.IcingaClient.GlobalConst.java
mhst.dreamteam.IcingaClient.Controller.NetControllerTest.java
mhst.dreamteam.IcingaClient.Controller.NetController.java
mhst.dreamteam.IcingaClient.Icinga.IcingaApiConst.java
mhst.dreamteam.IcingaClient.Icinga.IcingaApi.java
mhst.dreamteam.IcingaClient.Icinga.IcingaConst.java
mhst.dreamteam.IcingaClient.Icinga.IcingaExecutor.java
mhst.dreamteam.IcingaClient.Icinga.IcingaParam.java
mhst.dreamteam.IcingaClient.Icinga.IcingaUdt.java
mhst.dreamteam.IcingaClient.Icinga.package-info.java
mhst.dreamteam.IcingaClient.Interface.OnCompleteListener.java
mhst.dreamteam.IcingaClient.Interface.OnPieChartClickListener.java
mhst.dreamteam.IcingaClient.Json.JsonHelperTest.java
mhst.dreamteam.IcingaClient.Json.JsonHelper.java
mhst.dreamteam.IcingaClient.Misc.CookieMng.java
mhst.dreamteam.IcingaClient.Misc.CookieTest.java
mhst.dreamteam.IcingaClient.SessionMng.LogInTest.java
mhst.dreamteam.IcingaClient.SessionMng.Login.java
mhst.dreamteam.IcingaClient.SessionMng.Logout.java
mhst.dreamteam.IcingaClient.SessionMng.Session.java
mhst.dreamteam.IcingaService.ApplicationContext.java
mhst.dreamteam.IcingaService.DataUpdater.java
mhst.dreamteam.IcingaService.MessageReveicer.java
mhst.dreamteam.IcingaService.NotiBuilder.java
mhst.dreamteam.IcingaService.SQLHelper.java
mhst.dreamteam.IcingaService.SessionProvider.java
mhst.dreamteam.UI.Color.java
mhst.dreamteam.UI.GradientLine.java
mhst.dreamteam.UI.HostDetailsFragment.java
mhst.dreamteam.UI.HostlistAdapter.java
mhst.dreamteam.UI.HostlistFragment.java
mhst.dreamteam.UI.LoginActivity.java
mhst.dreamteam.UI.OverviewFragment.java
mhst.dreamteam.UI.PieGraph.java
mhst.dreamteam.UI.ProgressDialog.java
mhst.dreamteam.UI.ServiceDetailsFragment.java
mhst.dreamteam.UI.ServicelistAdapter.java
mhst.dreamteam.UI.ServicelistFragment.java
org.json.CDL.java
org.json.CookieList.java
org.json.Cookie.java
org.json.HTTPTokener.java
org.json.HTTP.java
org.json.JSONArray.java
org.json.JSONException.java
org.json.JSONML.java
org.json.JSONObject.java
org.json.JSONString.java
org.json.JSONStringer.java
org.json.JSONTokener.java
org.json.JSONWriter.java
org.json.Kim.java
org.json.Property.java
org.json.XMLTokener.java
org.json.XML.java
org.json.zip.BitInputStream.java
org.json.zip.BitOutputStream.java
org.json.zip.BitReader.java
org.json.zip.BitWriter.java
org.json.zip.Huff.java
org.json.zip.JSONzip.java
org.json.zip.Keep.java
org.json.zip.None.java
org.json.zip.PostMortem.java
org.json.zip.Unzipper.java
org.json.zip.Zipper.java