Fix warnings

pull/14/head
Tim Su 15 years ago
parent bb815e145a
commit b4df3c325d

@ -1,11 +1,11 @@
/** /**
* DatapointHelper.java * DatapointHelper.java
* Copyright (C) 2009 Char Software Inc., DBA Localytics * Copyright (C) 2009 Char Software Inc., DBA Localytics
* *
* This code is provided under the Localytics Modified BSD License. * This code is provided under the Localytics Modified BSD License.
* A copy of this license has been distributed in a file called LICENSE * A copy of this license has been distributed in a file called LICENSE
* with this source code. * with this source code.
* *
* Please visit www.localytics.com for more information. * Please visit www.localytics.com for more information.
*/ */
@ -21,33 +21,34 @@ import java.util.TimeZone;
import android.content.Context; import android.content.Context;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.net.wifi.WifiManager; import android.net.wifi.WifiManager;
import android.provider.Settings.System;
import android.telephony.TelephonyManager; import android.telephony.TelephonyManager;
import android.util.Log; import android.util.Log;
import android.provider.Settings.System;
/** /**
* Provides a number of static functions to aid in the collection and formatting * Provides a number of static functions to aid in the collection and formatting
* of datapoints. * of datapoints.
* @author Localytics * @author Localytics
*/ */
public final class DatapointHelper @SuppressWarnings("nls")
public final class DatapointHelper
{ {
// This class should never be instantiated // This class should never be instantiated
private DatapointHelper() { } private DatapointHelper() { /**/ }
private static final String LOG_PREFIX = "(DatapointHelper) "; private static final String LOG_PREFIX = "(DatapointHelper) ";
private static final String DROID2_ANDROID_ID = "9774d56d682e549c"; private static final String DROID2_ANDROID_ID = "9774d56d682e549c";
// Each YAML entry either goes to the session controller, the event controller // Each YAML entry either goes to the session controller, the event controller
// or the optin controller // or the optin controller
public static final String CONTROLLER_SESSION = "- c: se\n"; public static final String CONTROLLER_SESSION = "- c: se\n";
public static final String CONTROLLER_EVENT = "- c: ev\n"; public static final String CONTROLLER_EVENT = "- c: ev\n";
public static final String CONTROLLER_OPT = "- c: optin\n"; public static final String CONTROLLER_OPT = "- c: optin\n";
// Each entry is either a create action, or an update action // Each entry is either a create action, or an update action
public static final String ACTION_CREATE = " a: c\n"; public static final String ACTION_CREATE = " a: c\n";
public static final String ACTION_UPDATE = " a: u\n"; public static final String ACTION_UPDATE = " a: u\n";
public static final String ACTION_OPTIN = " a: optin\n"; public static final String ACTION_OPTIN = " a: optin\n";
// The target object for the data being set up. // The target object for the data being set up.
public static final String OBJECT_SESSION_DP = " se:\n"; public static final String OBJECT_SESSION_DP = " se:\n";
public static final String OBJECT_EVENT_DP = " ev:\n"; public static final String OBJECT_EVENT_DP = " ev:\n";
@ -60,91 +61,91 @@ public final class DatapointHelper
* WEBSERVICE PARAMENTER NAMES * * WEBSERVICE PARAMENTER NAMES *
* ***************************** * *****************************
*/ */
// Every object has a UUID // Every object has a UUID
public static final String PARAM_UUID = "u"; public static final String PARAM_UUID = "u";
// The identifier for this application, generated by the user on the webservice // The identifier for this application, generated by the user on the webservice
public static final String PARAM_APP_UUID = "au"; public static final String PARAM_APP_UUID = "au";
// The version of this application, taken from the application's manifest. // The version of this application, taken from the application's manifest.
public static final String PARAM_APP_VERSION = "av"; public static final String PARAM_APP_VERSION = "av";
// A session's UUID as previously created. // A session's UUID as previously created.
public static final String PARAM_SESSION_UUID = "su"; public static final String PARAM_SESSION_UUID = "su";
// A hashed identifier unique to this device // A hashed identifier unique to this device
public static final String PARAM_DEVICE_UUID = "du"; public static final String PARAM_DEVICE_UUID = "du";
// android, iphone, blackberry, windowsmobile // android, iphone, blackberry, windowsmobile
public static final String PARAM_DEVICE_PLATFORM = "dp"; public static final String PARAM_DEVICE_PLATFORM = "dp";
// maker of this device (currently not supported by Android) // maker of this device (currently not supported by Android)
public static final String PARAM_DEVICE_MAKE = "dma"; public static final String PARAM_DEVICE_MAKE = "dma";
// model of the device // model of the device
public static final String PARAM_DEVICE_MODEL = "dmo"; public static final String PARAM_DEVICE_MODEL = "dmo";
// version of the OS on this device // version of the OS on this device
public static final String PARAM_OS_VERSION = "dov"; public static final String PARAM_OS_VERSION = "dov";
// country device is from (obtained by querying the SIM card) // country device is from (obtained by querying the SIM card)
public static final String PARAM_DEVICE_COUNTRY = "dc"; public static final String PARAM_DEVICE_COUNTRY = "dc";
// country the current locale is set to // country the current locale is set to
public static final String PARAM_LOCALE_COUNTRY = "dlc"; public static final String PARAM_LOCALE_COUNTRY = "dlc";
// country the language is set to // country the language is set to
public static final String PARAM_LOCALE_LANGUAGE = "dll"; public static final String PARAM_LOCALE_LANGUAGE = "dll";
// Locale as a language_country string. (Not collected because this info // Locale as a language_country string. (Not collected because this info
// is already provided by LOCALE_LANGUAGE and LOCALE_COUNTRY. // is already provided by LOCALE_LANGUAGE and LOCALE_COUNTRY.
public static final String PARAM_LOCALE = "dl"; public static final String PARAM_LOCALE = "dl";
// Country the user is currently in (comes from Sim card) // Country the user is currently in (comes from Sim card)
public static final String PARAM_NETWORK_COUNTRY = "nc"; public static final String PARAM_NETWORK_COUNTRY = "nc";
// Current carrier (comes from sim card) // Current carrier (comes from sim card)
public static final String PARAM_NETWORK_CARRIER = "nca"; public static final String PARAM_NETWORK_CARRIER = "nca";
// Current mobile network code (comes from sim card) // Current mobile network code (comes from sim card)
public static final String PARAM_NETWORK_MNC = "mnc"; public static final String PARAM_NETWORK_MNC = "mnc";
// current mobile country code (comes from sim card) // current mobile country code (comes from sim card)
public static final String PARAM_NETWORK_MCC = "mcc"; public static final String PARAM_NETWORK_MCC = "mcc";
// type of data connection (wifi, umts, gprs, evdo, ...) // type of data connection (wifi, umts, gprs, evdo, ...)
public static final String PARAM_DATA_CONNECTION = "dac"; public static final String PARAM_DATA_CONNECTION = "dac";
// the version of this Localytics client library // the version of this Localytics client library
public static final String PARAM_LIBRARY_VERSION = "lv"; public static final String PARAM_LIBRARY_VERSION = "lv";
// The source where the location came from // The source where the location came from
public static final String PARAM_LOCATION_SOURCE = "ls"; public static final String PARAM_LOCATION_SOURCE = "ls";
// the latitude returned by the location provider // the latitude returned by the location provider
public static final String PARAM_LOCATION_LAT = "lat"; public static final String PARAM_LOCATION_LAT = "lat";
// the longitude from the location provider // the longitude from the location provider
public static final String PARAM_LOCATION_LNG = "lng"; public static final String PARAM_LOCATION_LNG = "lng";
// the current time on the user's device // the current time on the user's device
public static final String PARAM_CLIENT_TIME = "ct"; public static final String PARAM_CLIENT_TIME = "ct";
// sent at closing time, the current time on the users's device // sent at closing time, the current time on the users's device
public static final String PARAM_CLIENT_CLOSED_TIME = "ctc"; public static final String PARAM_CLIENT_CLOSED_TIME = "ctc";
// The name an event that occured // The name an event that occured
public static final String PARAM_EVENT_NAME = "n"; public static final String PARAM_EVENT_NAME = "n";
// the optin value sent in if a user opts in or out. // the optin value sent in if a user opts in or out.
public static final String PARAM_OPT_VALUE = "optin"; public static final String PARAM_OPT_VALUE = "optin";
/** /**
* Returns the given key/value pair as a YAML string. This string is intended to be * Returns the given key/value pair as a YAML string. This string is intended to be
* used to define values for the first level of data in the YAML file. This is * used to define values for the first level of data in the YAML file. This is
* different from the datapoints which belong another level in. * different from the datapoints which belong another level in.
* @param paramName The name of the parameter * @param paramName The name of the parameter
* @param paramValue The value of the parameter * @param paramValue The value of the parameter
* @param paramIndent The indent level of the parameter * @param paramIndent The indent level of the parameter
* @return a YAML string which can be dumped to the YAML file * @return a YAML string which can be dumped to the YAML file
@ -153,13 +154,13 @@ public final class DatapointHelper
{ {
if (paramName.length() > LocalyticsSession.MAX_NAME_LENGTH) if (paramName.length() > LocalyticsSession.MAX_NAME_LENGTH)
{ {
Log.v(DatapointHelper.LOG_PREFIX, "Parameter name exceeds " Log.v(DatapointHelper.LOG_PREFIX, "Parameter name exceeds "
+ LocalyticsSession.MAX_NAME_LENGTH + " character limit. Truncating."); + LocalyticsSession.MAX_NAME_LENGTH + " character limit. Truncating.");
paramName = paramName.substring(0, LocalyticsSession.MAX_NAME_LENGTH); paramName = paramName.substring(0, LocalyticsSession.MAX_NAME_LENGTH);
} }
if (paramValue.length() > LocalyticsSession.MAX_NAME_LENGTH) if (paramValue.length() > LocalyticsSession.MAX_NAME_LENGTH)
{ {
Log.v(DatapointHelper.LOG_PREFIX, "Parameter value exceeds " Log.v(DatapointHelper.LOG_PREFIX, "Parameter value exceeds "
+ LocalyticsSession.MAX_NAME_LENGTH + " character limit. Truncating."); + LocalyticsSession.MAX_NAME_LENGTH + " character limit. Truncating.");
paramValue = paramValue.substring(0, LocalyticsSession.MAX_NAME_LENGTH); paramValue = paramValue.substring(0, LocalyticsSession.MAX_NAME_LENGTH);
} }
@ -178,7 +179,7 @@ public final class DatapointHelper
formattedString.append(escapeString(paramValue)); formattedString.append(escapeString(paramValue));
formattedString.append("\n"); formattedString.append("\n");
return formattedString.toString(); return formattedString.toString();
} }
@ -187,30 +188,30 @@ public final class DatapointHelper
* one way hash and cannot be used to determine what device this data came from. * one way hash and cannot be used to determine what device this data came from.
* @param appContext The context used to access the settings resolver * @param appContext The context used to access the settings resolver
* @return An 1-way hashed identifier unique to this device or null if an ID, or the hashing * @return An 1-way hashed identifier unique to this device or null if an ID, or the hashing
* algorithm is not available. * algorithm is not available.
*/ */
public static String getGlobalDeviceId(final Context appContext) public static String getGlobalDeviceId(final Context appContext)
{ {
String systemId = System.getString(appContext.getContentResolver(), System.ANDROID_ID); String systemId = System.getString(appContext.getContentResolver(), System.ANDROID_ID);
if(systemId == null || systemId.toLowerCase().equals(DROID2_ANDROID_ID)) if(systemId == null || systemId.toLowerCase().equals(DROID2_ANDROID_ID))
{ {
return null; return null;
} }
try try
{ {
MessageDigest md = MessageDigest.getInstance("SHA-256"); MessageDigest md = MessageDigest.getInstance("SHA-256");
byte[] digest = md.digest(systemId.getBytes()); byte[] digest = md.digest(systemId.getBytes());
BigInteger hashedNumber = new BigInteger(1, digest); BigInteger hashedNumber = new BigInteger(1, digest);
return new String(hashedNumber.toString(16)); return new String(hashedNumber.toString(16));
} }
catch(NoSuchAlgorithmException e) catch(NoSuchAlgorithmException e)
{ {
return null; return null;
} }
} }
/** /**
* Determines the type of network this device is connected to. * Determines the type of network this device is connected to.
* @param appContext the context used to access the device's WIFI * @param appContext the context used to access the device's WIFI
@ -219,10 +220,10 @@ public final class DatapointHelper
*/ */
public static String getNetworkType( public static String getNetworkType(
final Context appContext, final Context appContext,
TelephonyManager telephonyManager) TelephonyManager telephonyManager)
{ {
WifiManager wifiManager = (WifiManager)appContext.getSystemService(Context.WIFI_SERVICE); WifiManager wifiManager = (WifiManager)appContext.getSystemService(Context.WIFI_SERVICE);
// this will only work for apps which already have wifi permissions. // this will only work for apps which already have wifi permissions.
try try
{ {
@ -230,29 +231,29 @@ public final class DatapointHelper
{ {
return "wifi"; return "wifi";
} }
} }
catch (Exception e) { } catch (Exception e) { /**/ }
switch (telephonyManager.getNetworkType()) switch (telephonyManager.getNetworkType())
{ {
case TelephonyManager.NETWORK_TYPE_EDGE : return "edge"; case TelephonyManager.NETWORK_TYPE_EDGE : return "edge";
case TelephonyManager.NETWORK_TYPE_GPRS : return "GPRS"; case TelephonyManager.NETWORK_TYPE_GPRS : return "GPRS";
case TelephonyManager.NETWORK_TYPE_UMTS : return "UMTS"; case TelephonyManager.NETWORK_TYPE_UMTS : return "UMTS";
case TelephonyManager.NETWORK_TYPE_UNKNOWN : return "unknown"; case TelephonyManager.NETWORK_TYPE_UNKNOWN : return "unknown";
} }
return "none"; return "none";
} }
/** /**
* Gets the pretty string for this application's version. * Gets the pretty string for this application's version.
* @param appContext The context used to examine packages * @param appContext The context used to examine packages
* @return The application's version as a pretty string * @return The application's version as a pretty string
*/ */
public static String getAppVersion(final Context appContext) public static String getAppVersion(final Context appContext)
{ {
PackageManager pm = appContext.getPackageManager(); PackageManager pm = appContext.getPackageManager();
try try
{ {
return pm.getPackageInfo(appContext.getPackageName(), 0).versionName; return pm.getPackageInfo(appContext.getPackageName(), 0).versionName;
@ -262,9 +263,9 @@ public final class DatapointHelper
return "unknown"; return "unknown";
} }
} }
/** /**
* Gets the current time, along with local timezone, formatted as a DateTime for the webservice. * Gets the current time, along with local timezone, formatted as a DateTime for the webservice.
* @return a DateTime of the current local time and timezone. * @return a DateTime of the current local time and timezone.
*/ */
public static String getTimeAsDatetime() public static String getTimeAsDatetime()
@ -289,7 +290,7 @@ public final class DatapointHelper
int startRead = 0; // Index to start reading at int startRead = 0; // Index to start reading at
int stopRead = 0; // Index characters get read from and where the substring ends int stopRead = 0; // Index characters get read from and where the substring ends
int bufferLength = rawString.length(); int bufferLength = rawString == null ? 0 : rawString.length();
if (rawString == null) if (rawString == null)
{ {

@ -11,26 +11,25 @@
package com.localytics.android; package com.localytics.android;
import android.content.Context;
import android.telephony.TelephonyManager;
import android.util.Log;
import android.os.Build;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.File; import java.io.File;
import java.io.FileOutputStream;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader; import java.io.FileReader;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.FilenameFilter; import java.io.FilenameFilter;
import java.io.IOException; import java.io.IOException;
import java.io.OutputStream; import java.io.OutputStream;
import java.util.Arrays;
import java.util.Iterator; import java.util.Iterator;
import java.util.Locale; import java.util.Locale;
import java.util.Map; import java.util.Map;
import java.util.UUID; import java.util.UUID;
import java.util.Arrays;
import android.content.Context;
import android.os.Build;
import android.telephony.TelephonyManager;
import android.util.Log;
/** /**
* The class which manages creating, collecting, & uploading a Localytics session. * The class which manages creating, collecting, & uploading a Localytics session.
@ -70,6 +69,7 @@ import java.util.Arrays;
* @author Localytics * @author Localytics
* @version 1.5 * @version 1.5
*/ */
@SuppressWarnings("nls")
public final class LocalyticsSession public final class LocalyticsSession
{ {
//////////////////////////////////////// ////////////////////////////////////////
@ -217,7 +217,7 @@ public final class LocalyticsSession
{ {
fp.createNewFile(); fp.createNewFile();
} }
catch (IOException e) { } catch (IOException e) { /**/ }
createOptEvent(false); createOptEvent(false);
} }
@ -473,7 +473,7 @@ public final class LocalyticsSession
DatapointHelper.PARAM_SESSION_UUID, this._sessionUUID, 3)); DatapointHelper.PARAM_SESSION_UUID, this._sessionUUID, 3));
eventString.append(DatapointHelper.formatYAMLLine( eventString.append(DatapointHelper.formatYAMLLine(
DatapointHelper.PARAM_CLIENT_TIME, DatapointHelper.getTimeAsDatetime(), 3)); DatapointHelper.PARAM_CLIENT_TIME, DatapointHelper.getTimeAsDatetime(), 3));
eventString.append(DatapointHelper.formatYAMLLine( eventString.append(DatapointHelper.formatYAMLLine(
DatapointHelper.PARAM_EVENT_NAME, event, 3)); DatapointHelper.PARAM_EVENT_NAME, event, 3));
@ -508,7 +508,7 @@ public final class LocalyticsSession
* divisible by step size, the method guarantees only the minimum and the * divisible by step size, the method guarantees only the minimum and the
* step size to be accurate to specification, with the new maximum will be * step size to be accurate to specification, with the new maximum will be
* moved to the next regular step. * moved to the next regular step.
* *
* @param actualValue The int value to be sorted. * @param actualValue The int value to be sorted.
* @param minValue The int value representing the inclusive minimum interval. * @param minValue The int value representing the inclusive minimum interval.
* @param maxValue The int value representing the inclusive maximum interval. * @param maxValue The int value representing the inclusive maximum interval.
@ -534,16 +534,16 @@ public final class LocalyticsSession
for (int currentStep = 0; currentStep <= stepQuantity; currentStep++) for (int currentStep = 0; currentStep <= stepQuantity; currentStep++)
{ {
steps[currentStep] = minValue + (currentStep) * step; steps[currentStep] = minValue + (currentStep) * step;
} }
return createRangedAttribute(actualValue, steps); return createRangedAttribute(actualValue, steps);
} }
/** /**
* Sorts an int value into a predefined, pre-sorted set of intervals, returning a string representing the * Sorts an int value into a predefined, pre-sorted set of intervals, returning a string representing the
* new expected value. The array must be sorted in ascending order, with the first element representing * new expected value. The array must be sorted in ascending order, with the first element representing
* the inclusive lower bound and the last element representing the exclusive upper bound. For instance, * the inclusive lower bound and the last element representing the exclusive upper bound. For instance,
* the array [0,1,3,10] will provide the following buckets: less than 0, 0, 1-2, 3-9, 10 or greater. * the array [0,1,3,10] will provide the following buckets: less than 0, 0, 1-2, 3-9, 10 or greater.
* *
* @param actualValue The int value to be bucketed. * @param actualValue The int value to be bucketed.
* @param steps The sorted int array representing the bucketing intervals. * @param steps The sorted int array representing the bucketing intervals.
*/ */
@ -559,7 +559,7 @@ public final class LocalyticsSession
// if greater than largest value // if greater than largest value
else if (actualValue >= steps[steps.length - 1]) else if (actualValue >= steps[steps.length - 1])
{ {
bucket = steps[steps.length - 1] + " and above"; bucket = steps[steps.length - 1] + " and above";
} }
else else
{ {
@ -567,7 +567,7 @@ public final class LocalyticsSession
int bucketIndex = Arrays.binarySearch(steps, actualValue); int bucketIndex = Arrays.binarySearch(steps, actualValue);
if (bucketIndex < 0) if (bucketIndex < 0)
{ {
// if the index wasn't found, then we want the value before the insertion point as the lower end // if the index wasn't found, then we want the value before the insertion point as the lower end
// the special case where the insertion point is 0 is covered above, so we don't have to worry about it here // the special case where the insertion point is 0 is covered above, so we don't have to worry about it here
bucketIndex = (- bucketIndex) - 2; bucketIndex = (- bucketIndex) - 2;
} }
@ -932,7 +932,7 @@ public final class LocalyticsSession
* Runnable which gets passed to the uploader thread so it can * Runnable which gets passed to the uploader thread so it can
* notify the library when uploads are complete. * notify the library when uploads are complete.
*/ */
private Runnable uploadComplete = new Runnable() private final Runnable uploadComplete = new Runnable()
{ {
public void run() public void run()
{ {

@ -16,7 +16,6 @@ import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FilenameFilter; import java.io.FilenameFilter;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@ -37,16 +36,17 @@ import android.util.Log;
* The thread which handles uploading Localytics data. * The thread which handles uploading Localytics data.
* @author Localytics * @author Localytics
*/ */
@SuppressWarnings("nls")
public class UploaderThread extends Thread public class UploaderThread extends Thread
{ {
private Runnable _completeCallback; private final Runnable _completeCallback;
private File _localyticsDir; private final File _localyticsDir;
private String _sessionFilePrefix; private final String _sessionFilePrefix;
private String _uploaderFilePrefix; private final String _uploaderFilePrefix;
private String _closeFilePrefix; private final String _closeFilePrefix;
// The Tag used in logging. // The Tag used in logging.
private final static String LOG_TAG = "Localytics_uploader"; private final static String LOG_TAG = "Localytics_uploader";
// The URL to send Localytics session data to // The URL to send Localytics session data to
private final static String ANALYTICS_URL = "http://analytics.localytics.com/api/datapoints/bulk"; private final static String ANALYTICS_URL = "http://analytics.localytics.com/api/datapoints/bulk";
@ -85,7 +85,8 @@ public class UploaderThread extends Thread
* Renames all the session files (so that other threads can keep writing * Renames all the session files (so that other threads can keep writing
* datapoints without affecting the upload. And then uploads them. * datapoints without affecting the upload. And then uploads them.
*/ */
public void run() @Override
public void run()
{ {
int numFilesToUpload = 0; int numFilesToUpload = 0;
@ -278,7 +279,7 @@ public class UploaderThread extends Thread
{ {
BufferedReader reader = new BufferedReader( BufferedReader reader = new BufferedReader(
new InputStreamReader( new InputStreamReader(
new FileInputStream(inputFile), new FileInputStream(inputFile),
"UTF-8"), "UTF-8"),
UploaderThread.BUFFER_SIZE); UploaderThread.BUFFER_SIZE);
char[] buf = new char[1024]; char[] buf = new char[1024];

@ -819,7 +819,7 @@ public final class ActFmSyncService {
model.setValue(Task.TITLE, json.getString("title")); model.setValue(Task.TITLE, json.getString("title"));
model.setValue(Task.IMPORTANCE, json.getInt("importance")); model.setValue(Task.IMPORTANCE, json.getInt("importance"));
model.setValue(Task.DUE_DATE, model.setValue(Task.DUE_DATE,
model.createDueDate(Task.URGENCY_SPECIFIC_DAY, readDate(json, "due"))); Task.createDueDate(Task.URGENCY_SPECIFIC_DAY, readDate(json, "due")));
model.setValue(Task.COMPLETION_DATE, readDate(json, "completed_at")); model.setValue(Task.COMPLETION_DATE, readDate(json, "completed_at"));
model.setValue(Task.CREATION_DATE, readDate(json, "created_at")); model.setValue(Task.CREATION_DATE, readDate(json, "created_at"));
model.setValue(Task.DELETION_DATE, readDate(json, "deleted_at")); model.setValue(Task.DELETION_DATE, readDate(json, "deleted_at"));

@ -365,9 +365,9 @@ public class ProducteevSyncProvider extends SyncProvider<ProducteevTaskContainer
long dueDate = ApiUtilities.producteevToUnixTime(remoteTask.getString("deadline"), 0); long dueDate = ApiUtilities.producteevToUnixTime(remoteTask.getString("deadline"), 0);
if(remoteTask.optInt("all_day", 0) == 1) if(remoteTask.optInt("all_day", 0) == 1)
task.setValue(Task.DUE_DATE, task.createDueDate(Task.URGENCY_SPECIFIC_DAY, dueDate)); task.setValue(Task.DUE_DATE, Task.createDueDate(Task.URGENCY_SPECIFIC_DAY, dueDate));
else else
task.setValue(Task.DUE_DATE, task.createDueDate(Task.URGENCY_SPECIFIC_DAY_TIME, dueDate)); task.setValue(Task.DUE_DATE, Task.createDueDate(Task.URGENCY_SPECIFIC_DAY_TIME, dueDate));
task.setValue(Task.IMPORTANCE, 5 - remoteTask.getInt("star")); task.setValue(Task.IMPORTANCE, 5 - remoteTask.getInt("star"));
JSONArray labels = remoteTask.getJSONArray("labels"); JSONArray labels = remoteTask.getJSONArray("labels");

@ -191,7 +191,7 @@ public class TaskDao extends DatabaseDao<Task> {
if(!item.containsValue(Task.DUE_DATE)) { if(!item.containsValue(Task.DUE_DATE)) {
int setting = Preferences.getIntegerFromString(R.string.p_default_urgency_key, int setting = Preferences.getIntegerFromString(R.string.p_default_urgency_key,
Task.URGENCY_NONE); Task.URGENCY_NONE);
item.setValue(Task.DUE_DATE, item.createDueDate(setting, 0)); item.setValue(Task.DUE_DATE, Task.createDueDate(setting, 0));
} }
if(!item.containsValue(Task.HIDE_UNTIL)) { if(!item.containsValue(Task.HIDE_UNTIL)) {
int setting = Preferences.getIntegerFromString(R.string.p_default_hideUntil_key, int setting = Preferences.getIntegerFromString(R.string.p_default_hideUntil_key,

Loading…
Cancel
Save