don't throw exception when auth session is not found. just return undef. updated...
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 2 Jul 2009 20:30:56 +0000 (20:30 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 2 Jul 2009 20:30:56 +0000 (20:30 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@13493 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/perlmods/OpenILS/Application/AppUtils.pm
Open-ILS/src/perlmods/OpenILS/Application/Cat.pm
Open-ILS/src/perlmods/OpenILS/Application/Circ/StatCat.pm
Open-ILS/src/perlmods/OpenILS/Application/Circ/Survey.pm

index 701c856..6b68e51 100644 (file)
@@ -134,20 +134,13 @@ sub event_code {
 # throws an exception on error.
 # ---------------------------------------------------------------------------
 sub check_user_session {
-
        my( $self, $user_session ) = @_;
 
        my $content = $self->simplereq( 
                'open-ils.auth', 
-               'open-ils.auth.session.retrieve', $user_session );
-
-       if(! $content or $self->event_code($content)) {
-               throw OpenSRF::EX::ERROR 
-                       ("Session [$user_session] cannot be authenticated" );
-       }
-
-       $logger->debug("Fetch user session $user_session found user " . $content->id );
+               'open-ils.auth.session.retrieve', $user_session);
 
+    return undef if (!$content) or $self->event_code($content);
        return $content;
 }
 
@@ -331,18 +324,9 @@ sub fetch_user {
 
 sub checkses {
        my( $self, $session ) = @_;
-       my $user; my $evt; my $e; 
-
-       $logger->debug("Checking user session $session");
-
-       try {
-               $user = $self->check_user_session($session);
-       } catch Error with { $e = 1; };
-
-       $logger->debug("Done checking user session $session " . (($e) ? "error = $e" : "") );
-
-       if( $e or !$user ) { $evt = OpenILS::Event->new('NO_SESSION'); }
-       return ( $user, $evt );
+       my $user = $self->check_user_session($session) or 
+        return (undef, OpenILS::Event->new('NO_SESSION'));
+    return ($user);
 }
 
 
index 99f289d..d0e466a 100644 (file)
@@ -366,9 +366,9 @@ sub retrieve_copies {
 
        # grabbing copy trees should be available for everyone..
        if(!@org_ids and $user_session) {
-               my $user_obj = 
-                       OpenILS::Application::AppUtils->check_user_session( $user_session ); #throws EX on error
-                       @org_ids = ($user_obj->home_ou);
+        my($user_obj, $evt) = OpenILS::Application::AppUtils->checkses($user_session); 
+        return $evt if $evt;
+        @org_ids = ($user_obj->home_ou);
        }
 
        if( $self->api_name =~ /global/ ) {
index 57e20dd..8ca8325 100644 (file)
@@ -50,7 +50,8 @@ sub retrieve_stat_cat_list {
                $method = "open-ils.storage.fleshed.asset.stat_cat.retrieve.batch.atomic"; 
        }
 
-       my $user_obj = $apputils->check_user_session($user_session); 
+       my($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
 
        my $cats = $apputils->simple_scalar_request(
                                "open-ils.storage", $method, @sc);
@@ -77,7 +78,9 @@ sub retrieve_stat_cats {
                $method = "open-ils.storage.ranged.fleshed.asset.stat_cat.all.atomic"; 
        }
 
-       my $user_obj = $apputils->check_user_session($user_session); 
+       my($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
+
        if(!$orgid) { $orgid = $user_obj->home_ou; }
        my $cats = $apputils->simple_scalar_request(
                                "open-ils.storage", $method, $orgid );
@@ -93,7 +96,9 @@ __PACKAGE__->register_method(
 sub retrieve_ranged_intersect_stat_cats {
        my( $self, $client, $user_session, $orglist ) = @_;
 
-       my $user_obj = $apputils->check_user_session($user_session); 
+       my($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
+
        if(!$orglist) { $orglist = [ $user_obj->home_ou ]; }
 
        # uniquify, yay!
@@ -119,7 +124,9 @@ sub retrieve_ranged_union_stat_cats {
        use Data::Dumper;
        warn "Retrieving stat_cats with method $method and orgs " . Dumper($orglist) . "\n";
 
-       my $user_obj = $apputils->check_user_session($user_session); 
+       my($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
+
        if(!$orglist) { $orglist = [ $user_obj->home_ou ]; }
 
        # uniquify, yay!
index 01c5e9e..9f75be3 100644 (file)
@@ -34,7 +34,9 @@ __PACKAGE__->register_method(
 sub add_survey {
        my( $self, $client, $user_session, $survey ) = @_;
 
-       my $user_obj = $apputils->check_user_session($user_session); 
+       my($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
+
        my $session = $apputils->start_db_session();
        my $err = undef; my $id;
 
@@ -138,7 +140,9 @@ sub get_required_surveys {
        my( $self, $client, $user_session ) = @_;
        
 
-       my $user_obj = $apputils->check_user_session($user_session); 
+       my ($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
+
        my $orgid = $user_obj->ws_ou() ? $user_obj->ws_ou() : $user_obj->home_ou();
        my $surveys = $apputils->simple_scalar_request(
                "open-ils.storage",
@@ -161,7 +165,8 @@ sub get_survey_responses {
        my( $self, $client, $user_session, $survey_id, $user_id ) = @_;
        
        if(!$user_id) {
-               my $user_obj = $apputils->check_user_session($user_session); 
+           my ($user_obj, $evt) = $apputils->checkses($user_session); 
+        return $evt if $evt;
                $user_id = $user_obj->id;
        }
 
@@ -184,7 +189,9 @@ __PACKAGE__->register_method(
 sub get_all_surveys {
        my( $self, $client, $user_session ) = @_;
        
-       my $user_obj = $apputils->check_user_session($user_session); 
+    my ($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
+
        my $orgid = $user_obj->ws_ou() ? $user_obj->ws_ou() : $user_obj->home_ou();
        my $surveys = $apputils->simple_scalar_request(
                "open-ils.storage",
@@ -295,7 +302,8 @@ sub submit_survey {
 
                if($self->api_name =~ /session/) {
                        if( ! ($id = $already_seen{$res->usr}) ) {
-                               my $user_obj = $apputils->check_user_session($res->usr); 
+                my ($user_obj, $evt) = $apputils->checkses($res->usr);
+                return $evt if $evt;
                                $id = $user_obj->id;
                                $already_seen{$res->usr} = $id;
                        }
@@ -329,7 +337,9 @@ __PACKAGE__->register_method(
 sub get_random_survey {
        my( $self, $client, $user_session ) = @_;
        
-       my $user_obj = $apputils->check_user_session($user_session); 
+    my ($user_obj, $evt) = $apputils->checkses($user_session); 
+    return $evt if $evt;
+
        my $surveys = $apputils->simple_scalar_request(
                "open-ils.storage",
                "open-ils.storage.action.survey.opac.atomic",