主权项 |
1. A method implemented on an electronic computing device for creating a data structure that represents a person, the method comprising:
on the electronic computing device, receiving a first identifier, the first identifier identifying a first person; storing the first identifier in a data structure in a first memory cache on the electronic computing device, the data structure comprising a person object, the person object comprising one or more contact objects; determining whether the first identifier indicates that the first person is a global address list contact; when it is determined that the first identifier indicates that the first person is a global address list contact:
obtaining first properties for the first person from a global address list store, the first properties comprising first contact information for the first person; andstoring the first properties in a first contact object in the data structure; when it is determined that the first identifier does not indicate that the first person is a global address list contact, determining from the first identifier whether the first person is an email contact, the email contact being a contact in a contact store for an email application running on the electronic computing device; when it is determined that the first identifier indicates that the first person is an email contact:
obtaining second properties for the first person from the contact store, the second properties comprising second contact information for the first person;storing the second properties in the data structure in the first memory cache on the electronic computing device, the second properties being stored in a second contact object in the data structure;determining whether the second properties include a global address identifier, the global address identifier identifying contact information comprising at least an address for the first person in the global address list store; andwhen it is determined that the second properties includes the global address identifier, storing the global address identifier in the second contact object; creating a second identifier for the first person, the second identifier being a person identifier that identifies the first person; storing the second identifier in the first contact object; and storing the second identifier in the second contact object. |