Dav: switch back to DAV:uid, used mainly in POP service (case sensitive)

git-svn-id: http://svn.code.sf.net/p/davmail/code/trunk@1133 3d1905a2-6b24-0410-a738-b14d5a86fcbd
This commit is contained in:
mguessan 2010-07-06 09:45:25 +00:00
parent 7379cdbb40
commit 6e6326ac70
2 changed files with 20 additions and 5 deletions

View File

@ -112,8 +112,8 @@ public class Field {
createField(DAV, "isfolder");
// item id, do not use DAV:uid, see http://support.microsoft.com/kb/320749
createField("uid", 0x300b, PropertyType.Binary); // PR_SEARCH_KEY
// item uid, do not use as search parameter, see http://support.microsoft.com/kb/320749
createField(DAV, "uid"); // based on PR_RECORD_KEY
// POP and IMAP message
createField("messageSize", 0x0e08, PropertyType.Long);//PR_MESSAGE_SIZE
@ -212,7 +212,7 @@ public class Field {
createField(URN_SCHEMAS_CONTACTS, "mobile"); // PR_MOBILE_TELEPHONE_NUMBER 0x3A1C String
createField(URN_SCHEMAS_CONTACTS, "namesuffix"); // PR_GENERATION 0x3A05 String
createField(URN_SCHEMAS_CONTACTS, "nickname"); // PR_NICKNAME 0x3A4F String
createField(URN_SCHEMAS_CONTACTS, "o"); // PR_OTHER_ADDRESS_CITY 0x3A5F String
createField(URN_SCHEMAS_CONTACTS, "o"); // PR_COMPANY_NAME 0x3A16 String
createField(URN_SCHEMAS_CONTACTS, "pager"); // PR_PAGER_TELEPHONE_NUMBER 0x3A21 String
createField(URN_SCHEMAS_CONTACTS, "personaltitle"); // PR_DISPLAY_NAME_PREFIX 0x3A45 String
createField(URN_SCHEMAS_CONTACTS, "postalcode"); // workAddressPostalCode DistinguishedPropertySetType.Address/0x00008048/String
@ -226,7 +226,7 @@ public class Field {
createField(URN_SCHEMAS_CONTACTS, "street"); // workAddressStreet DistinguishedPropertySetType.Address/0x00008045/String
createField(URN_SCHEMAS_CONTACTS, "telephoneNumber"); // PR_BUSINESS_TELEPHONE_NUMBER 0x3A08 String
createField(URN_SCHEMAS_CONTACTS, "title"); // PR_TITLE 0x3A17 String
createField(URN_SCHEMAS_HTTPMAIL, "textdescription"); // PR_BODY 0x1000 String
createField("description", URN_SCHEMAS_HTTPMAIL, "textdescription"); // PR_BODY 0x1000 String
createField("im", DistinguishedPropertySetType.Address, 0x8062, "im"); // InstantMessagingAddress DistinguishedPropertySetType.Address/0x00008062/String
// contact private flags
@ -257,6 +257,9 @@ public class Field {
} else {
field = new Field(alias, SCHEMAS_MAPI_PROPTAG, name);
}
if (propertyType == PropertyType.Integer || propertyType == PropertyType.Long) {
field.isIntValue = true;
}
fieldMap.put(field.alias, field);
}
@ -298,6 +301,7 @@ public class Field {
protected final String requestPropertyString;
protected final DavPropertyName responsePropertyName;
protected final String cast;
protected boolean isIntValue;
public Field(Namespace namespace, String name) {
@ -330,6 +334,10 @@ public class Field {
return alias;
}
public boolean isIntValue() {
return isIntValue;
}
/**
* Get Field by alias.
*

View File

@ -30,7 +30,8 @@ public class Field {
static {
FIELD_MAP.put("permanenturl", new ExtendedFieldURI(0x670E, ExtendedFieldURI.PropertyType.String)); //PR_FLAT_URL_NAME
FIELD_MAP.put("uid", new ExtendedFieldURI(0x300b, ExtendedFieldURI.PropertyType.Binary));
// use PR_RECORD_KEY as unique key
FIELD_MAP.put("uid", new ExtendedFieldURI(0x0FF9, ExtendedFieldURI.PropertyType.Binary));
FIELD_MAP.put("messageFlags", new ExtendedFieldURI(0x0e07, ExtendedFieldURI.PropertyType.Integer));//PR_MESSAGE_FLAGS
FIELD_MAP.put("imapUid", new ExtendedFieldURI(0x0e23, ExtendedFieldURI.PropertyType.Integer));
FIELD_MAP.put("flagStatus", new ExtendedFieldURI(0x1090, ExtendedFieldURI.PropertyType.Integer));
@ -45,7 +46,13 @@ public class Field {
FIELD_MAP.put("datereceived", new ExtendedFieldURI(0x0e06, ExtendedFieldURI.PropertyType.SystemTime));// PR_MESSAGE_DELIVERY_TIME
FIELD_MAP.put("bcc", new ExtendedFieldURI(ExtendedFieldURI.DistinguishedPropertySetType.InternetHeaders, "bcc"));
// folder
FIELD_MAP.put("folderclass", new ExtendedFieldURI(0x3613, ExtendedFieldURI.PropertyType.String));
// contact
FIELD_MAP.put("description", new ExtendedFieldURI(0x1000, ExtendedFieldURI.PropertyType.String));
}
/**