Android Open Source - android-appwidget-cirrus Wind Speed Formatter






From Project

Back to project page android-appwidget-cirrus.

License

The source code is released under:

MIT License

If you think the Android project android-appwidget-cirrus 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

/* Copyright 2014 Wayne D Grant (www.waynedgrant.com)
   Licensed under the MIT License */
/*from   w  w  w  .j  a v a  2  s .  c o  m*/
package com.waynedgrant.cirrus.presentation.formatters;

import static com.waynedgrant.cirrus.units.WindSpeedUnit.BEAUFORT_SCALE;
import static com.waynedgrant.cirrus.units.WindSpeedUnit.KILOMETRES_PER_HOUR;
import static com.waynedgrant.cirrus.units.WindSpeedUnit.KNOTS;
import static com.waynedgrant.cirrus.units.WindSpeedUnit.METRES_PER_SECOND;
import static com.waynedgrant.cirrus.units.WindSpeedUnit.MILES_PER_HOUR;

import java.math.RoundingMode;
import java.util.Locale;

import com.waynedgrant.cirrus.measures.WindSpeed;
import com.waynedgrant.cirrus.units.WindSpeedUnit;

public class WindSpeedFormatter
{
    private WindSpeed windSpeed;
    
    public WindSpeedFormatter(WindSpeed windSpeed)
    {
        this.windSpeed = windSpeed;
    }
    
    public String format(WindSpeedUnit unit)
    {
        String formatted = null;
        
        if (windSpeed != null)
        {
            String formatString = null;
            
            if (unit == BEAUFORT_SCALE)
            {
                formatted = String.format(Locale.US, "%1d Bft", windSpeed.getValue(unit).intValue());
            }
            else
            {
                if (unit == KNOTS)
                {
                    formatString = "%1.1f kts";
                }
                else if (unit == METRES_PER_SECOND)
                {
                    formatString = "%1.1f m/s";
                }
                else if (unit == KILOMETRES_PER_HOUR)
                {
                    formatString = "%1.1f km/h";
                }
                else if (unit == MILES_PER_HOUR)
                {
                    formatString = "%1.1f mph";
                }
                
                formatted = String.format(Locale.US, formatString, windSpeed.getValue(unit).setScale(1, RoundingMode.HALF_DOWN));
            }
        }
        else
        {
            if (unit == KNOTS)
            {
                formatted = "--.- kts";
            }
            else if (unit == METRES_PER_SECOND)
            {
                formatted = "--.- m/s";
            }
            else if (unit == KILOMETRES_PER_HOUR)
            {
                formatted = "--.- km/h";
            }
            else if (unit == MILES_PER_HOUR)
            {
                formatted = "--.- mph";
            }
            else if (unit == BEAUFORT_SCALE)
            {
                formatted = "-- Bft";
            }
        }
        
        return formatted;
    }
}




Java Source Code List

com.waynedgrant.cirrus.UpdateWidgetService.java
com.waynedgrant.cirrus.WidgetConfigActivity.java
com.waynedgrant.cirrus.WidgetProvider.java
com.waynedgrant.cirrus.clientraw.ClientRawCache.java
com.waynedgrant.cirrus.clientraw.ClientRawRequest.java
com.waynedgrant.cirrus.clientraw.ClientRawResponse.java
com.waynedgrant.cirrus.clientraw.ClientRawUrl.java
com.waynedgrant.cirrus.clientraw.ClientRaw.java
com.waynedgrant.cirrus.clientraw.RetrieveClientRawTask.java
com.waynedgrant.cirrus.measures.Conditions.java
com.waynedgrant.cirrus.measures.Pressure.java
com.waynedgrant.cirrus.measures.Rainfall.java
com.waynedgrant.cirrus.measures.Temperature.java
com.waynedgrant.cirrus.measures.Trend.java
com.waynedgrant.cirrus.measures.WeatherItem.java
com.waynedgrant.cirrus.measures.WindDirection.java
com.waynedgrant.cirrus.measures.WindSpeed.java
com.waynedgrant.cirrus.preferences.Preferences.java
com.waynedgrant.cirrus.presentation.colorizers.TemperatureColorizer.java
com.waynedgrant.cirrus.presentation.colorizers.UvIndexColorizer.java
com.waynedgrant.cirrus.presentation.colorizers.WeatherItemColorizer.java
com.waynedgrant.cirrus.presentation.formatters.ConditionsFormatter.java
com.waynedgrant.cirrus.presentation.formatters.DateFormat.java
com.waynedgrant.cirrus.presentation.formatters.DateFormatter.java
com.waynedgrant.cirrus.presentation.formatters.FormattedWeatherItem.java
com.waynedgrant.cirrus.presentation.formatters.HumidityFormatter.java
com.waynedgrant.cirrus.presentation.formatters.PressureFormatter.java
com.waynedgrant.cirrus.presentation.formatters.RainfallFormatter.java
com.waynedgrant.cirrus.presentation.formatters.RainfallRateFormatter.java
com.waynedgrant.cirrus.presentation.formatters.SolarPercentageFormatter.java
com.waynedgrant.cirrus.presentation.formatters.SolarRadiationFormatter.java
com.waynedgrant.cirrus.presentation.formatters.StringFormatter.java
com.waynedgrant.cirrus.presentation.formatters.TemperatureFormatter.java
com.waynedgrant.cirrus.presentation.formatters.TimeFormat.java
com.waynedgrant.cirrus.presentation.formatters.TimeFormatter.java
com.waynedgrant.cirrus.presentation.formatters.TrendFormatter.java
com.waynedgrant.cirrus.presentation.formatters.UvIndexFormatter.java
com.waynedgrant.cirrus.presentation.formatters.WeatherItemFormatter.java
com.waynedgrant.cirrus.presentation.formatters.WindDirectionFormatter.java
com.waynedgrant.cirrus.presentation.formatters.WindSpeedFormatter.java
com.waynedgrant.cirrus.units.CardinalDirection.java
com.waynedgrant.cirrus.units.PressureUnit.java
com.waynedgrant.cirrus.units.RainfallUnit.java
com.waynedgrant.cirrus.units.TemperatureUnit.java
com.waynedgrant.cirrus.units.WindDirectionUnit.java
com.waynedgrant.cirrus.units.WindSpeedUnit.java
com.waynedgrant.cirrus.update.Timeout.java