IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 5498


Ignore:
Timestamp:
Nov 10, 2005, 11:31:26 AM (21 years ago)
Author:
jhoblitt
Message:

factor class id verification check into _is_valid_class_id()

Location:
trunk
Files:
2 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Nebulous-Server/lib/Nebulous/Server.pm

    r5490 r5498  
    11# Copyright (c) 2004  Joshua Hoblitt
    22#
    3 # $Id: Server.pm,v 1.13 2005-11-09 01:31:07 jhoblitt Exp $
     3# $Id: Server.pm,v 1.14 2005-11-10 21:31:26 jhoblitt Exp $
    44
    55package Nebulous::Server;
     
    7575            callbacks   => {
    7676                'is + integer' => sub { $_[0] =~ /^\d+$/ },
     77                # check that the class requested is valid
     78                'is valid class id' => sub { _is_valid_class_id( $_[0] ) },
    7779            },
    7880            default     => 0,
     
    9698    # check that the comment isn't too long
    9799    # check that the volume requested is valid
    98 
    99     # check that the class requested is valid
    100     if ( $class ) {
    101         my $class_id;
    102         eval {
    103             my $query = $db->prepare_cached( $sql->get_class );
    104             $query->execute( $class );
    105             ( $class_id ) = $query->fetchrow_array;
    106 
    107             $query->finish;
    108         };
    109         if ( $@ ) {
    110             $db->rollback;
    111             $log->logdie( "database error: $@" );
    112         }
    113 
    114         unless ( $class_id ) {
    115             $log->logdie( "Invalid class ID: $class" );
    116         }
    117     }
    118100
    119101    my $uri;
     
    701683}
    702684
     685sub _is_valid_class_id {
     686    my $class = shift;
     687
     688    my $class_id;
     689    eval {
     690        my $query = $db->prepare_cached( $sql->get_class );
     691        $query->execute( $class );
     692        ( $class_id ) = $query->fetchrow_array;
     693
     694        $query->finish;
     695    };
     696    if ( $@ ) {
     697        $db->rollback;
     698        $log->logdie( "database error: $@" );
     699    }
     700
     701    return ( defined $class_id ) ? 1 : undef;
     702}
     703
    7037041;
    704705
  • trunk/Nebulous/lib/Nebulous/Server.pm

    r5490 r5498  
    11# Copyright (c) 2004  Joshua Hoblitt
    22#
    3 # $Id: Server.pm,v 1.13 2005-11-09 01:31:07 jhoblitt Exp $
     3# $Id: Server.pm,v 1.14 2005-11-10 21:31:26 jhoblitt Exp $
    44
    55package Nebulous::Server;
     
    7575            callbacks   => {
    7676                'is + integer' => sub { $_[0] =~ /^\d+$/ },
     77                # check that the class requested is valid
     78                'is valid class id' => sub { _is_valid_class_id( $_[0] ) },
    7779            },
    7880            default     => 0,
     
    9698    # check that the comment isn't too long
    9799    # check that the volume requested is valid
    98 
    99     # check that the class requested is valid
    100     if ( $class ) {
    101         my $class_id;
    102         eval {
    103             my $query = $db->prepare_cached( $sql->get_class );
    104             $query->execute( $class );
    105             ( $class_id ) = $query->fetchrow_array;
    106 
    107             $query->finish;
    108         };
    109         if ( $@ ) {
    110             $db->rollback;
    111             $log->logdie( "database error: $@" );
    112         }
    113 
    114         unless ( $class_id ) {
    115             $log->logdie( "Invalid class ID: $class" );
    116         }
    117     }
    118100
    119101    my $uri;
     
    701683}
    702684
     685sub _is_valid_class_id {
     686    my $class = shift;
     687
     688    my $class_id;
     689    eval {
     690        my $query = $db->prepare_cached( $sql->get_class );
     691        $query->execute( $class );
     692        ( $class_id ) = $query->fetchrow_array;
     693
     694        $query->finish;
     695    };
     696    if ( $@ ) {
     697        $db->rollback;
     698        $log->logdie( "database error: $@" );
     699    }
     700
     701    return ( defined $class_id ) ? 1 : undef;
     702}
     703
    7037041;
    704705
Note: See TracChangeset for help on using the changeset viewer.