Quel est le modèle / logique pour générer des UID pour les messages lorsque vous utilisez le serveur POP3?
Question
Cette question est par curiosité, API JavaMail fournit fournisseur de protocole POP3 aux messages POP3 d'accès. Il existe une méthode POP3Folder.getUID (message) disponible cette chaîne retour d'identification unique pour un message. Il revient, par exemple, dans le format suivant:
Exemple UID: 1322488254.15180.1.dummy1,S=703
Mes questions sont les suivantes:
- Y at-il logique / modèle / algorithme derrière pour générer cette
UID
unique pour chaque message? - Y a-t-il des probabilités / chances d'avoir le même UID pour plusieurs messages? En d'autres termes, est-ce vraiment unique?
- Est-ce UID est généré par le fournisseur POP3 (API JavaMail) ou renvoyée par le serveur POP3?
API JavaMail doc dit:
Return the unique ID string for this message, or null if not available. Uses the POP3 UIDL command.
La solution
Il est généré par le serveur POP3. Chaque serveur fait différemment. Comment parfaitement ce fait cela dépend du serveur, mais en général je ne se soucier d'obtenir le même UID pour deux messages différents. Selon quoi que ce soit sur le contenu ou la structure de l'UID serait une erreur. En particulier, ne présumez pas qu'ils sont classés.