From: Manni H. <man...@us...> - 2007-11-18 11:09:32
|
Update of /cvsroot/popfile/engine/Services In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32260/Services Modified Files: Tag: b0_22_2 IMAP.pm Log Message: Provide a api_session() method that returns the session key and makes sure that we have one in the first place. Index: IMAP.pm =================================================================== RCS file: /cvsroot/popfile/engine/Services/IMAP.pm,v retrieving revision 1.9.4.7 retrieving revision 1.9.4.8 diff -C2 -d -r1.9.4.7 -r1.9.4.8 *** IMAP.pm 13 Nov 2007 10:38:33 -0000 1.9.4.7 --- IMAP.pm 18 Nov 2007 11:09:35 -0000 1.9.4.8 *************** *** 213,218 **** $self->disconnect_folders__(); ! if ( $self->{api_session__} ne '' ) { ! $self->{classifier__}->release_session_key( $self->{api_session__} ); } } --- 213,218 ---- $self->disconnect_folders__(); ! if ( $self->api_session() ne '' ) { ! $self->classifier()->release_session_key( $self->api_session() ); } } *************** *** 235,243 **** if ( time - $self->{last_update__} >= $self->config_( 'update_interval' ) ) { - # Check to see if we have obtained a session key yet - if ( $self->{api_session__} eq '' ) { - $self->{api_session__} = $self->{classifier__}->get_session_key( 'admin', '' ); - } - # Should we use a single or multiple connections? # And did this configuration options change? --- 235,238 ---- *************** *** 355,359 **** # output folders ! foreach my $bucket ( $self->{classifier__}->get_all_buckets( $self->{api_session__} ) ) { my $folder = $self->folder_for_bucket__( $bucket ); --- 350,354 ---- # output folders ! foreach my $bucket ( $self->classifier()->get_all_buckets( $self->api_session() ) ) { my $folder = $self->folder_for_bucket__( $bucket ); *************** *** 414,418 **** ! exists $self->{folders__}{$folder}{watched} && ! $self->{classifier__}->is_pseudo_bucket( $self->{api_session__}, $self->{folders__}{$folder}{output} ) ) { next; --- 409,413 ---- ! exists $self->{folders__}{$folder}{watched} && ! $self->classifier()->is_pseudo_bucket( $self->api_session(), $self->{folders__}{$folder}{output} ) ) { next; *************** *** 507,511 **** ! exists $self->{folders__}{$folder}{watched} && ! $self->{classifier__}->is_pseudo_bucket( $self->{api_session__}, $self->{folders__}{$folder}{output} ) ) { next; --- 502,506 ---- ! exists $self->{folders__}{$folder}{watched} && ! $self->classifier()->is_pseudo_bucket( $self->api_session(), $self->{folders__}{$folder}{output} ) ) { next; *************** *** 790,794 **** if ( $part eq 'HEADER' ) { seek $pseudo_mailer, 0, 0; ! ( $class, $slot, $magnet_used ) = $self->{classifier__}->classify_and_modify( $self->{api_session__}, $pseudo_mailer, undef, 1, '', undef, 0, undef ); if ( $magnet_used ) { --- 785,789 ---- if ( $part eq 'HEADER' ) { seek $pseudo_mailer, 0, 0; ! ( $class, $slot, $magnet_used ) = $self->classifier()->classify_and_modify( $self->api_session(), $pseudo_mailer, undef, 1, '', undef, 0, undef ); if ( $magnet_used ) { *************** *** 806,810 **** seek $pseudo_mailer, 0, 0; ! ( $class, $slot, $magnet_used ) = $self->{classifier__}->classify_and_modify( $self->{api_session__}, $pseudo_mailer, undef, 0, '', undef, 0, undef ); close $pseudo_mailer; --- 801,805 ---- seek $pseudo_mailer, 0, 0; ! ( $class, $slot, $magnet_used ) = $self->classifier()->classify_and_modify( $self->api_session(), $pseudo_mailer, undef, 0, '', undef, 0, undef ); close $pseudo_mailer; *************** *** 891,897 **** my $slot = $self->history()->get_slot_from_hash( $hash ); ! $self->{classifier__}->add_message_to_bucket( $self->{api_session__}, $new_bucket, $file ); ! $self->{classifier__}->reclassified( $self->{api_session__}, $old_bucket, $new_bucket, 0 ); ! $self->history()->change_slot_classification( $slot, $new_bucket, $self->{api_session__}, 0); $self->log_( 0, "Reclassified the message with UID $msg from bucket $old_bucket to bucket $new_bucket." ); --- 886,892 ---- my $slot = $self->history()->get_slot_from_hash( $hash ); ! $self->classifier()->add_message_to_bucket( $self->api_session(), $new_bucket, $file ); ! $self->classifier()->reclassified( $self->api_session(), $old_bucket, $new_bucket, 0 ); ! $self->history()->change_slot_classification( $slot, $new_bucket, $self->api_session(), 0); $self->log_( 0, "Reclassified the message with UID $msg from bucket $old_bucket to bucket $new_bucket." ); *************** *** 1019,1022 **** --- 1014,1035 ---- + # ---------------------------------------------------------------------------- + # + # api_session - Return the API session key and get one if we haven't done so + # already. + # + # ---------------------------------------------------------------------------- + + sub api_session { + my $self = shift; + + if ( ! $self->{api_session__} ) { + $self->{api_session__} = $self->classifier()->get_session_key( 'admin', '' ); + } + + return $self->{api_session__}; + } + + #---------------------------------------------------------------------------- # get hash *************** *** 1283,1287 **** $templ->param( IMAP_if_mailboxes => 1 ); ! my @buckets = $self->{classifier__}->get_all_buckets( $self->{api_session__} ); my @outer_loop = (); --- 1296,1300 ---- $templ->param( IMAP_if_mailboxes => 1 ); ! my @buckets = $self->classifier()->get_all_buckets( $self->api_session() ); my @outer_loop = (); *************** *** 1413,1417 **** # pseudo buckets are free to map wherever they like since # we will never reclassify to them anyway ! unless ( $self->{classifier__}->is_pseudo_bucket( $self->{api_session__}, $bucket ) ) { $folders{ $folder }++; } --- 1426,1430 ---- # pseudo buckets are free to map wherever they like since # we will never reclassify to them anyway ! unless ( $self->classifier()->is_pseudo_bucket( $self->api_session(), $bucket ) ) { $folders{ $folder }++; } *************** *** 1619,1623 **** # Skip pseudobuckets and the INBOX ! next if $self->{classifier__}->is_pseudo_bucket( $self->{api_session__}, $bucket ); next if $folder eq 'INBOX'; --- 1632,1636 ---- # Skip pseudobuckets and the INBOX ! next if $self->classifier()->is_pseudo_bucket( $self->api_session(), $bucket ); next if $folder eq 'INBOX'; *************** *** 1646,1650 **** close $TMP; ! $self->classifier()->add_message_to_bucket( $self->{api_session__}, $bucket, $file ); $self->log_( 0, "Training on the message with UID $msg to bucket $bucket." ); --- 1659,1663 ---- close $TMP; ! $self->classifier()->add_message_to_bucket( $self->api_session(), $bucket, $file ); $self->log_( 0, "Training on the message with UID $msg to bucket $bucket." ); |