[prev] [thread] [next] [lurker] [Date index for 2005/02/22]
Author: richardc Date: 2005-02-22 10:04:22 +0000 (Tue, 22 Feb 2005) New Revision: 1940 Modified: trunk/Email-Store/lib/Email/Store/Entity.pm Log: make the syntax a little less illegal Modified: trunk/Email-Store/lib/Email/Store/Entity.pm =================================================================== --- trunk/Email-Store/lib/Email/Store/Entity.pm 2005-02-22 09:55:01 UTC (rev 1939) +++ trunk/Email-Store/lib/Email/Store/Entity.pm 2005-02-22 10:04:22 UTC (rev 1940) @@ -3,20 +3,20 @@ Email::Store::Entity->table("entity"); Email::Store::Entity->columns(Primary => qw/id/); Email::Store::Entity->columns(All => qw/id notes/); # notes is a hack. -use Email::Address; +use Email::Address; use Email::MIME; -use Module::Pluggable::Ordered +use Module::Pluggable::Ordered search_path => ["Email::Store::Entity::Correlator"]; Email::Store::Entity->set_sql(distinct_entity => q{ - SELECT DISTINCT entity id + SELECT DISTINCT entity, id FROM addressing WHERE name = ? AND address = ?}); Email::Store::Entity->set_sql(distinct_entity_for_name => q{ - SELECT DISTINCT entity id + SELECT DISTINCT entity, id FROM addressing WHERE name = ?}); Email::Store::Entity->set_sql(distinct_entity_for_address => q{ - SELECT DISTINCT entity id + SELECT DISTINCT entity, id FROM addressing WHERE address = ?}); sub on_store_order { 1 } @@ -26,7 +26,7 @@ my $mime = Email::MIME->new($mail->message); for my $role (qw(To From Cc Bcc)) { my @addrs = Email::Address->parse($mime->header($role)); - for my $addr (@addrs) { + for my $addr (@addrs) { my $name = Email::Store::Entity::Name->find_or_create({ name => ($addr->name || " ") }); @@ -93,7 +93,7 @@ =head1 DESCRIPTION This file defines a number of concepts related to the people who send -and receive mail. +and receive mail. An "entity" is a distinct "person", who may have multiple friendly names and/or multiple email addresses. @@ -114,7 +114,7 @@ a good one: it believes that a combination of email address and name represents a distinct individual. It doesn't know that C<simon-nospam@> and C<simon@> the same domain are the same person. This heuristic is -implemented by C<Email::Store::Entity::Correlator::Trivial>. +implemented by C<Email::Store::Entity::Correlator::Trivial>. However, in the same way as the rest of C<Email::Store>, you can write your own correlators to determine how an addressing should be @@ -123,7 +123,7 @@ A correlator must live in the C<Email::Store::Entity::Correlator> namespace, and implement the C<get_person_order> and C<get_person> methods. C<get_person> is called with a reference to the -currently-selected entity and also the mail object, role name, +currently-selected entity and also the mail object, role name, and name and address objects involved. By examining the mail and the current list of addressings, your method can choose to find or create a more appropriate entity, and replace the reference accordingly.
Generated at 11:00 on 22 Feb 2005 by mariachi 0.52