sub set_client_side_cookie { my $self = shift; debug( "CGI is " . ref( $self->cgi ) ); if ( $self->cgi->isa('CGI::Apache2::Wrapper') ) { debug("Using mod_perl Cookie"); $self->{cookie} = CGI::Apache2::Wrapper::Cookie->new( $self->r, -name => $self->cookie_name, -value => $self->cookie_value, -expires => $self->cookie_expiry, -domain => $self->config->sys_opt('Cookie Domain') || $self->server_name, ); } else { debug("Using CGI cookie"); $self->{cookie} = $self->cgi->cookie( -name => $self->cookie_name, -value => $self->cookie_value, -expires => $self->cookie_expiry, -domain => $self->config->sys_opt('Cookie Domain') || $self->server_name, ); } } sub header { my $self = shift; my %args = @_; if ( $self->cgi->isa('CGI::Apache2::Wrapper') ) { $self->cookie->bake; $self->cgi->send_http_header( $args{type} || '' ); } else { return $self->cgi->header( -type => ( $args{type} || 'text/xml' ), -cookie => $self->cookie, ); } }