@ -53,12 +53,6 @@ public class NameMaps {
// --------------------------------
// --------------------------------
// ---- Column name mappings -------
// ---- Column name mappings -------
// --------------------------------
// --------------------------------
private static final Map < Property < ? > , String > TASK_PROPERTIES_LOCAL_TO_SERVER ;
private static final Map < String , Property < ? > > TASK_COLUMN_NAMES_TO_PROPERTIES ;
private static final Map < String , String > TASK_COLUMNS_LOCAL_TO_SERVER ;
private static final Map < String , Property < ? > > TASK_PROPERTIES_SERVER_TO_LOCAL ;
private static final Set < String > TASK_PROPERTIES_EXCLUDED ;
private static void putPropertyToServerName ( Property < ? > property , String serverName ,
private static void putPropertyToServerName ( Property < ? > property , String serverName ,
Map < Property < ? > , String > propertyMap , Map < String , Property < ? > > localNameMap , Map < String , String > serverNameMap ,
Map < Property < ? > , String > propertyMap , Map < String , Property < ? > > localNameMap , Map < String , String > serverNameMap ,
Set < String > excludedFromOutstandingSet , boolean excludedFromOustanding ) {
Set < String > excludedFromOutstandingSet , boolean excludedFromOustanding ) {
@ -69,6 +63,18 @@ public class NameMaps {
excludedFromOutstandingSet . add ( property . name ) ;
excludedFromOutstandingSet . add ( property . name ) ;
}
}
private static final Map < Property < ? > , String > TASK_PROPERTIES_LOCAL_TO_SERVER ;
private static final Map < String , Property < ? > > TASK_COLUMN_NAMES_TO_PROPERTIES ;
private static final Map < String , String > TASK_COLUMNS_LOCAL_TO_SERVER ;
private static final Map < String , Property < ? > > TASK_PROPERTIES_SERVER_TO_LOCAL ;
private static final Set < String > TASK_PROPERTIES_EXCLUDED ;
private static void putTaskPropertyToServerName ( Property < ? > property , String serverName , boolean excludedFromOutstanding ) {
putPropertyToServerName ( property , serverName , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES ,
TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , excludedFromOutstanding ) ;
}
static {
static {
// Hardcoded local columns mapped to corresponding server names
// Hardcoded local columns mapped to corresponding server names
TASK_PROPERTIES_LOCAL_TO_SERVER = new HashMap < Property < ? > , String > ( ) ;
TASK_PROPERTIES_LOCAL_TO_SERVER = new HashMap < Property < ? > , String > ( ) ;
@ -76,23 +82,23 @@ public class NameMaps {
TASK_COLUMN_NAMES_TO_PROPERTIES = new HashMap < String , Property < ? > > ( ) ;
TASK_COLUMN_NAMES_TO_PROPERTIES = new HashMap < String , Property < ? > > ( ) ;
TASK_PROPERTIES_EXCLUDED = new HashSet < String > ( ) ;
TASK_PROPERTIES_EXCLUDED = new HashSet < String > ( ) ;
put PropertyToServerName( Task . TITLE , "title" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . TITLE , "title" , false ) ;
put PropertyToServerName( Task . IMPORTANCE , "importance" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . IMPORTANCE , "importance" , false ) ;
put PropertyToServerName( Task . DUE_DATE , "due" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . DUE_DATE , "due" , false ) ;
put PropertyToServerName( Task . HIDE_UNTIL , "hide_until" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , true ) ;
put Task PropertyToServerName( Task . HIDE_UNTIL , "hide_until" , true ) ;
put PropertyToServerName( Task . CREATION_DATE , "created_at" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . CREATION_DATE , "created_at" , false ) ;
put PropertyToServerName( Task . COMPLETION_DATE , "completed_at" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . COMPLETION_DATE , "completed_at" , false ) ;
put PropertyToServerName( Task . RECURRENCE , "repeat" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . RECURRENCE , "repeat" , false ) ;
put PropertyToServerName( Task . DELETION_DATE , "deleted_at" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . DELETION_DATE , "deleted_at" , false ) ;
put PropertyToServerName( Task . NOTES , "notes" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . NOTES , "notes" , false ) ;
put PropertyToServerName( Task . RECURRENCE , "repeat" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . RECURRENCE , "repeat" , false ) ;
put PropertyToServerName( Task . USER_ID , "user_id" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . USER_ID , "user_id" , false ) ;
put PropertyToServerName( Task . USER , "user" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , true ) ;
put Task PropertyToServerName( Task . USER , "user" , true ) ;
put PropertyToServerName( Task . CREATOR_ID , "creator_id" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , true ) ;
put Task PropertyToServerName( Task . CREATOR_ID , "creator_id" , true ) ;
put PropertyToServerName( Task . UUID , "uuid" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , true ) ;
put Task PropertyToServerName( Task . UUID , "uuid" , true ) ;
put PropertyToServerName( Task . PUSHED_AT , "pushed_at" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , true ) ;
put Task PropertyToServerName( Task . PUSHED_AT , "pushed_at" , true ) ;
put PropertyToServerName( Task . IS_PUBLIC , "public" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , false ) ;
put Task PropertyToServerName( Task . IS_PUBLIC , "public" , false ) ;
put PropertyToServerName( Task . IS_READONLY , "read_only" , TASK_PROPERTIES_LOCAL_TO_SERVER , TASK_COLUMN_NAMES_TO_PROPERTIES , TASK_COLUMNS_LOCAL_TO_SERVER , TASK_PROPERTIES_EXCLUDED , true ) ;
put Task PropertyToServerName( Task . IS_READONLY , "read_only" , true ) ;
TASK_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities . reverseMap ( TASK_PROPERTIES_LOCAL_TO_SERVER ) ;
TASK_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities . reverseMap ( TASK_PROPERTIES_LOCAL_TO_SERVER ) ;
}
}
@ -104,6 +110,10 @@ public class NameMaps {
private static final Map < String , Property < ? > > TAG_DATA_PROPERTIES_SERVER_TO_LOCAL ;
private static final Map < String , Property < ? > > TAG_DATA_PROPERTIES_SERVER_TO_LOCAL ;
private static final Set < String > TAG_PROPERTIES_EXCLUDED ;
private static final Set < String > TAG_PROPERTIES_EXCLUDED ;
private static void putTagPropertyToServerName ( Property < ? > property , String serverName , boolean excludedFromOutstanding ) {
putPropertyToServerName ( property , serverName , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES ,
TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , excludedFromOutstanding ) ;
}
static {
static {
// Hardcoded local columns mapped to corresponding server names
// Hardcoded local columns mapped to corresponding server names
TAG_DATA_PROPERTIES_LOCAL_TO_SERVER = new HashMap < Property < ? > , String > ( ) ;
TAG_DATA_PROPERTIES_LOCAL_TO_SERVER = new HashMap < Property < ? > , String > ( ) ;
@ -111,17 +121,17 @@ public class NameMaps {
TAG_DATA_COLUMN_NAMES_TO_PROPERTIES = new HashMap < String , Property < ? > > ( ) ;
TAG_DATA_COLUMN_NAMES_TO_PROPERTIES = new HashMap < String , Property < ? > > ( ) ;
TAG_PROPERTIES_EXCLUDED = new HashSet < String > ( ) ;
TAG_PROPERTIES_EXCLUDED = new HashSet < String > ( ) ;
put PropertyToServerName( TagData . USER_ID , "user_id" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ;
put Tag PropertyToServerName( TagData . USER_ID , "user_id" , false ) ;
put PropertyToServerName( TagData . NAME , "name" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ;
put Tag PropertyToServerName( TagData . NAME , "name" , false ) ;
put PropertyToServerName( TagData . PICTURE , "picture_id" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ; //TODO: NOT CORRECT
put Tag PropertyToServerName( TagData . PICTURE , "picture_id" , false ) ; //TODO: NOT CORRECT
put PropertyToServerName( TagData . MEMBERS , "members" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ; //TODO: NOT CORRECT
put Tag PropertyToServerName( TagData . MEMBERS , "members" , false ) ; //TODO: NOT CORRECT
put PropertyToServerName( TagData . CREATION_DATE , "created_at" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ;
put Tag PropertyToServerName( TagData . CREATION_DATE , "created_at" , false ) ;
put PropertyToServerName( TagData . DELETION_DATE , "deleted_at" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ;
put Tag PropertyToServerName( TagData . DELETION_DATE , "deleted_at" , false ) ;
put PropertyToServerName( TagData . UUID , "uuid" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , true ) ;
put Tag PropertyToServerName( TagData . UUID , "uuid" , true ) ;
put PropertyToServerName( TagData . TAG_ORDERING , "tag_ordering" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ; //TODO: NOT CORRECT
put Tag PropertyToServerName( TagData . TAG_ORDERING , "tag_ordering" , false ) ; //TODO: NOT CORRECT
put PropertyToServerName( TagData . PUSHED_AT , "pushed_at" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , true ) ;
put Tag PropertyToServerName( TagData . PUSHED_AT , "pushed_at" , true ) ;
put PropertyToServerName( TagData . TASK_COUNT , "task_count" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , true ) ;
put Tag PropertyToServerName( TagData . TASK_COUNT , "task_count" , true ) ;
put PropertyToServerName( TagData . TAG_DESCRIPTION , "description" , TAG_DATA_PROPERTIES_LOCAL_TO_SERVER , TAG_DATA_COLUMN_NAMES_TO_PROPERTIES , TAG_DATA_COLUMNS_LOCAL_TO_SERVER , TAG_PROPERTIES_EXCLUDED , false ) ;
put Tag PropertyToServerName( TagData . TAG_DESCRIPTION , "description" , false ) ;
// Reverse the mapping to construct the server to local map
// Reverse the mapping to construct the server to local map
TAG_DATA_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities . reverseMap ( TAG_DATA_PROPERTIES_LOCAL_TO_SERVER ) ;
TAG_DATA_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities . reverseMap ( TAG_DATA_PROPERTIES_LOCAL_TO_SERVER ) ;
@ -132,23 +142,29 @@ public class NameMaps {
private static final Map < String , String > USER_COLUMNS_LOCAL_TO_SERVER ;
private static final Map < String , String > USER_COLUMNS_LOCAL_TO_SERVER ;
private static final Map < String , Property < ? > > USER_PROPERTIES_SERVER_TO_LOCAL ;
private static final Map < String , Property < ? > > USER_PROPERTIES_SERVER_TO_LOCAL ;
private static void putUserPropertyToServerName ( Property < ? > property , String serverName , boolean excludedFromOutstanding ) {
putPropertyToServerName ( property , serverName , USER_PROPERTIES_LOCAL_TO_SERVER , USER_COLUMN_NAMES_TO_PROPERTIES ,
USER_COLUMNS_LOCAL_TO_SERVER , null , excludedFromOutstanding ) ;
}
static {
static {
USER_PROPERTIES_LOCAL_TO_SERVER = new HashMap < Property < ? > , String > ( ) ;
USER_PROPERTIES_LOCAL_TO_SERVER = new HashMap < Property < ? > , String > ( ) ;
USER_COLUMN_NAMES_TO_PROPERTIES = new HashMap < String , Property < ? > > ( ) ;
USER_COLUMN_NAMES_TO_PROPERTIES = new HashMap < String , Property < ? > > ( ) ;
USER_COLUMNS_LOCAL_TO_SERVER = new HashMap < String , String > ( ) ;
USER_COLUMNS_LOCAL_TO_SERVER = new HashMap < String , String > ( ) ;
put PropertyToServerName( User . UUID , "uuid" , USER_PROPERTIES_LOCAL_TO_SERVER , USER_COLUMN_NAMES_TO_PROPERTIES , USER_COLUMNS_LOCAL_TO_SERVER , null , true ) ;
put User PropertyToServerName( User . UUID , "uuid" , true ) ;
put PropertyToServerName( User . EMAIL , "email" , USER_PROPERTIES_LOCAL_TO_SERVER , USER_COLUMN_NAMES_TO_PROPERTIES , USER_COLUMNS_LOCAL_TO_SERVER , null , true ) ;
put User PropertyToServerName( User . EMAIL , "email" , true ) ;
put PropertyToServerName( User . PICTURE , "picture" , USER_PROPERTIES_LOCAL_TO_SERVER , USER_COLUMN_NAMES_TO_PROPERTIES , USER_COLUMNS_LOCAL_TO_SERVER , null , true ) ;
put User PropertyToServerName( User . PICTURE , "picture" , true ) ;
put PropertyToServerName( User . PUSHED_AT , "pushed_at" , USER_PROPERTIES_LOCAL_TO_SERVER , USER_COLUMN_NAMES_TO_PROPERTIES , USER_COLUMNS_LOCAL_TO_SERVER , null , true ) ;
put User PropertyToServerName( User . PUSHED_AT , "pushed_at" , true ) ;
put PropertyToServerName( User . FIRST_NAME , "first_name" , USER_PROPERTIES_LOCAL_TO_SERVER , USER_COLUMN_NAMES_TO_PROPERTIES , USER_COLUMNS_LOCAL_TO_SERVER , null , true ) ;
put User PropertyToServerName( User . FIRST_NAME , "first_name" , true ) ;
put PropertyToServerName( User . LAST_NAME , "last_name" , USER_PROPERTIES_LOCAL_TO_SERVER , USER_COLUMN_NAMES_TO_PROPERTIES , USER_COLUMNS_LOCAL_TO_SERVER , null , true ) ;
put User PropertyToServerName( User . LAST_NAME , "last_name" , true ) ;
// Reverse the mapping to construct the server to local map
// Reverse the mapping to construct the server to local map
USER_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities . reverseMap ( USER_PROPERTIES_LOCAL_TO_SERVER ) ;
USER_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities . reverseMap ( USER_PROPERTIES_LOCAL_TO_SERVER ) ;
}
}
private static < A , B > B mapColumnName ( String table , String col , Map < A , B > taskMap , Map < A , B > tagMap , Map < A , B > userMap ) {
private static < A , B > B mapColumnName ( String table , String col , Map < A , B > taskMap , Map < A , B > tagMap , Map < A , B > userMap ) {
Map < A , B > map = null ;
Map < A , B > map = null ;
if ( TABLE_ID_TASKS . equals ( table ) )
if ( TABLE_ID_TASKS . equals ( table ) )