Android Open Source - sdl_tester_android Sdl Message Adapter






From Project

Back to project page sdl_tester_android.

License

The source code is released under:

Copyright (c) 2014, Ford Motor Company All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are m...

If you think the Android project sdl_tester_android 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.livio.sdl.adapters;
//from w  w w .  java  2  s.  co  m
import java.util.List;

import android.content.Context;
import android.graphics.Color;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

import com.livio.sdl.R;
import com.livio.sdl.SdlLogMessage;

/**
 * A custom adapter class for showing SDL log messages in a listview.  The adapter shows the message
 * name, details and a timestamp of when the message was first logged.
 *
 * @author Mike Burke
 *
 */
public class SdlMessageAdapter extends ArrayAdapter<SdlLogMessage> {
  
  private static final int REQUEST_COLOR = Color.BLUE;
  private static final int RESPONSE_SUCCESS_COLOR = 0xFF2D9C08; // dark green
  private static final int RESPONSE_FAILURE_COLOR = Color.RED;
  private static final int NOTIFICATION_COLOR = Color.BLACK;

  public SdlMessageAdapter(Context context, List<SdlLogMessage> objects) {
    super(context, R.layout.sdl_message_listview_row, objects);
  }

  public SdlMessageAdapter(Context context) {
    super(context, R.layout.sdl_message_listview_row);
  }

  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
    View view = convertView;
    
    if(convertView == null){
      LayoutInflater inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
      view = inflater.inflate(R.layout.sdl_message_listview_row, null);
    }
    
    SdlLogMessage item = getItem(position);
    
    if(item != null){
      populateView(view, item);
    }
    
    
    return view;
  }
  
  /**
   * Populate the input parent view with information from the SDL log message.
   * 
   * @param view The view to populate
   * @param item The data with which to populate the view
   */
  private void populateView(View view, SdlLogMessage item){
    TextView tv_messageName = (TextView) view.findViewById(R.id.tv_messageName);
    TextView tv_messageDetails = (TextView) view.findViewById(R.id.tv_messageDetail);
    TextView tv_timestamp = (TextView) view.findViewById(R.id.tv_timestamp);
    
    // set text values based on input message
    tv_messageName.setText(item.getFunctionName());
    tv_messageDetails.setText(item.getDetails());
    tv_timestamp.setText(item.getTimeStamp());
    
    String messageType = item.getMessageType();
    
    // set the text colors based on the inputs
    if(messageType.equals(SdlLogMessage.REQUEST)){
      tv_messageName.setTextColor(REQUEST_COLOR);
    }
    else if(messageType.equals(SdlLogMessage.RESPONSE)){
      if(item.getSuccess()){
        tv_messageName.setTextColor(RESPONSE_SUCCESS_COLOR);
        tv_messageDetails.setTextColor(RESPONSE_SUCCESS_COLOR);
      }
      else{
        tv_messageName.setTextColor(RESPONSE_FAILURE_COLOR);
        tv_messageDetails.setTextColor(RESPONSE_FAILURE_COLOR);
      }
    }
    else if(messageType.equals(SdlLogMessage.NOTIFICATION)){
      tv_messageName.setTextColor(NOTIFICATION_COLOR);
    }
  }
  
}




Java Source Code List

com.livio.sdl.IdGenerator.java
com.livio.sdl.IpAddress.java
com.livio.sdl.SdlConstants.java
com.livio.sdl.SdlImageItem.java
com.livio.sdl.SdlLogMessage.java
com.livio.sdl.SdlRequestFactory.java
com.livio.sdl.SdlResponseFactory.java
com.livio.sdl.SdlResponseTracker.java
com.livio.sdl.SdlService.java
com.livio.sdl.adapters.SdlImageAdapter.java
com.livio.sdl.adapters.SdlMessageAdapter.java
com.livio.sdl.dialogs.BaseAlertDialog.java
com.livio.sdl.dialogs.BaseImageListDialog.java
com.livio.sdl.dialogs.BaseMultipleListViewDialog.java
com.livio.sdl.dialogs.BaseOkCancelDialog.java
com.livio.sdl.dialogs.BaseSingleListViewDialog.java
com.livio.sdl.dialogs.ImageListDialog.java
com.livio.sdl.dialogs.IndeterminateProgressDialog.java
com.livio.sdl.dialogs.JsonFlipperDialog.java
com.livio.sdl.dialogs.ListViewDialog.java
com.livio.sdl.dialogs.MultipleListViewDialog.java
com.livio.sdl.dialogs.SingleJsonDialog.java
com.livio.sdl.dialogs.TextViewAlertDialog.java
com.livio.sdl.dialogs.TextViewOkCancelDialog.java
com.livio.sdl.enums.EnumClickListener.java
com.livio.sdl.enums.EnumComparator.java
com.livio.sdl.enums.SdlButton.java
com.livio.sdl.enums.SdlCommand.java
com.livio.sdl.enums.SdlImageType.java
com.livio.sdl.enums.SdlInteractionMode.java
com.livio.sdl.enums.SdlLanguage.java
com.livio.sdl.enums.SdlSpeechCapability.java
com.livio.sdl.enums.SdlSystemAction.java
com.livio.sdl.enums.SdlTextAlignment.java
com.livio.sdl.enums.SdlTransportType.java
com.livio.sdl.enums.SdlUpdateMode.java
com.livio.sdl.enums.SdlVehicleData.java
com.livio.sdl.menu.CommandButton.java
com.livio.sdl.menu.MenuItem.java
com.livio.sdl.menu.MenuManager.java
com.livio.sdl.menu.SubmenuButton.java
com.livio.sdl.utils.AndroidUtils.java
com.livio.sdl.utils.ApplicationPreferences.java
com.livio.sdl.utils.Counter.java
com.livio.sdl.utils.DownCounter.java
com.livio.sdl.utils.MathUtils.java
com.livio.sdl.utils.SdlUtils.java
com.livio.sdl.utils.StringUtils.java
com.livio.sdl.utils.Timeout.java
com.livio.sdl.utils.UpCounter.java
com.livio.sdl.utils.WifiUtils.java
com.livio.sdl.viewhelpers.MinMaxInputFilter.java
com.livio.sdl.viewhelpers.SeekBarCalculator.java
com.livio.sdltester.HelpActivity.java
com.livio.sdltester.LivioSdlTesterPreferences.java
com.livio.sdltester.MainActivity.java
com.livio.sdltester.SdlTesterImageResource.java
com.livio.sdltester.dialogs.AddCommandDialog.java
com.livio.sdltester.dialogs.AddSubMenuDialog.java
com.livio.sdltester.dialogs.ButtonSubscriptionDialog.java
com.livio.sdltester.dialogs.ButtonUnsubscriptionDialog.java
com.livio.sdltester.dialogs.ChangeRegistrationDialog.java
com.livio.sdltester.dialogs.ChoiceItemDialog.java
com.livio.sdltester.dialogs.CreateInteractionChoiceSetDialog.java
com.livio.sdltester.dialogs.DeleteCommandDialog.java
com.livio.sdltester.dialogs.DeleteFileDialog.java
com.livio.sdltester.dialogs.DeleteInteractionDialog.java
com.livio.sdltester.dialogs.DeleteSubmenuDialog.java
com.livio.sdltester.dialogs.GetDtcsDialog.java
com.livio.sdltester.dialogs.PerformInteractionDialog.java
com.livio.sdltester.dialogs.PutFileDialog.java
com.livio.sdltester.dialogs.ReadDidsDialog.java
com.livio.sdltester.dialogs.ScrollableMessageDialog.java
com.livio.sdltester.dialogs.SdlAlertDialog.java
com.livio.sdltester.dialogs.SdlConnectionDialog.java
com.livio.sdltester.dialogs.SetAppIconDialog.java
com.livio.sdltester.dialogs.SetMediaClockTimerDialog.java
com.livio.sdltester.dialogs.ShowDialog.java
com.livio.sdltester.dialogs.SliderDialog.java
com.livio.sdltester.dialogs.SoftButtonItemDialog.java
com.livio.sdltester.dialogs.SoftButtonListDialog.java
com.livio.sdltester.dialogs.SpeakDialog.java