/* AirConditionerProfile.java Copyright (c) 2015 NTT DOCOMO,INC. Released under the MIT license http://opensource.org/licenses/mit-license.php */ package org.deviceconnect.android.deviceplugin.kadecot.profile.original; /* AirConditionerProfile.java Copyright (c) 2015 NTT DOCOMO,INC. Released under the MIT license http://opensource.org/licenses/mit-license.php */ import android.content.Intent; import org.deviceconnect.android.profile.DConnectProfile; /** * AirConditioner Profile. * * <p> * API that provides a air conditioner operation function. * </p> * * @author NTT DOCOMO, INC. */ public class AirConditionerProfile extends DConnectProfile implements AirConditionerProfileConstants { @Override public final String getProfileName() { return PROFILE_NAME; } // ------------------------------------ // Message setter method group // ------------------------------------ /** * Set powerstatus information to airconditioner object. * * @param response response message. * @param powerstatus power status information. */ public static void setPowerStatus(final Intent response, final String powerstatus) { response.putExtra(PARAM_POWERSTATUS, powerstatus); } /** * Set operationpowersaving information to response message. * * @param response response message. * @param operationpowersaving operation power saving information. */ public static void setPowerSaving(final Intent response, final String operationpowersaving) { response.putExtra(PARAM_POWERSAVING, operationpowersaving); } /** * Set operationmodesetting information to response message. * * @param response response message. * @param operationmodesetting operation mode setting information. */ public static void setModeSetting(final Intent response, final String operationmodesetting) { response.putExtra(PARAM_MODESETTING, operationmodesetting); } /** * Set roomtemperature information to response message. * * @param response response message. * @param roomtemperature room temperature. */ public static void setRoomTemperature(final Intent response, final String roomtemperature) { response.putExtra(PARAM_ROOMTEMPERATURE, roomtemperature); } /** * Set temperaturevalue information to response message. * * @param response response message. * @param temperaturevalue temperature value. */ public static void setTemperature(final Intent response, final String temperaturevalue) { response.putExtra(PARAM_TEMPERATURE, temperaturevalue); } /** * Set airflowvalue information to response message. * * @param response response message. * @param airflowvalue air flow value. */ public static void setAirFlow(final Intent response, final String airflowvalue) { response.putExtra(PARAM_AIRFLOW, airflowvalue); } /** * Set airflowauto information to response message. * * @param response response message. * @param airflowauto air flow auto value. */ public static void setAirFlowAuto(final Intent response, final String airflowauto) { response.putExtra(PARAM_AIRFLOWAUTO, airflowauto); } /** * Set properties information to response message. * * @param response response message. * @param properties properties. */ public static void setProperties(final Intent response, final String properties) { response.putExtra(PARAM_PROPERTIES, properties); } /** * Set epc information to response message. * * @param response response message. * @param epc epc. */ public static void setEpc(final Intent response, final String epc) { response.putExtra(PARAM_EPC, epc); } /** * Set value information to response message. * * @param response response message. * @param value value. */ public static void setValue(final Intent response, final String value) { response.putExtra(PARAM_VALUE, value); } // ------------------------------------ // Message getter method group // ------------------------------------ /** * Get power saving parameter. * * @param request Request. * @return Power saving parameter. */ public static String getPowerSaving(final Intent request) { return request.getStringExtra(PARAM_POWERSAVING); } /** * Get operation mode setting parameter. * * @param request Request. * @return Operation mode setting parameter. */ public static String getModeSetting(final Intent request) { return request.getStringExtra(PARAM_MODESETTING); } /** * Get temperature value parameter. * * @param request Request. * @return Temperature value parameter. */ public static int getTemperature(final Intent request) { String strValue = request.getStringExtra(PARAM_TEMPERATURE); try { return Integer.parseInt(strValue); } catch (NumberFormatException e) { return -1; } } /** * Check Air Flow Value parameter. * * @param request Request. * @return true : Not found. / false : Found parameter. */ public static boolean isNullAirFlow(final Intent request) { return request.getStringExtra(PARAM_AIRFLOW) == null; } /** * Get air flow value parameter. * * @param request Request. * @return Air flow value parameter. */ public static float getAirFlow(final Intent request) { String strValue = request.getStringExtra(PARAM_AIRFLOW); if (strValue == null) { return -1; } try { return Float.parseFloat(strValue); } catch (NumberFormatException e) { return -1; } } /** * Check Air Flow Auto parameter. * * @param request Request. * @return true : Not found. / false : Found parameter. */ public static boolean isNullAirFlowAuto(final Intent request) { return request.getStringExtra(PARAM_AIRFLOWAUTO) == null; } /** * Get Air Flow Auto parameter. * * @param request Request. * @return Air flow auto parameter. */ public static boolean getAirFlowAuto(final Intent request) { String auto = request.getStringExtra(PARAM_AIRFLOWAUTO); if (auto == null) { return false; } switch (auto) { case "true": case "True": case "TRUE": return true; default: return false; } } /** * Get epc parameter. * * @param request Request. * @return Epc parameter. */ public static String getEpc(final Intent request) { return request.getStringExtra(PARAM_EPC); } /** * Get epc value parameter. * * @param request Request. * @return Epc value parameter. */ public static String getEpcValue(final Intent request) { return request.getStringExtra(PARAM_VALUE); } }