I have an app I wrote using CGI::Application. Several of the run modes make a call to a certain utility method I inherit from my base class. Now this utility method can occasionally throw an error, but the error is fixable.

When I first thought of this problem the solution seemed simple: I'd just check for the error condition inside the utility function, and if I detected it, I could simply change to a run mode that fixes it. But as far as I can tell, it's impossible to change run modes like this.

So whats way to hack around this stupid limitation? I've considered modifying Application.pm it self, but unless this would change the main version at cpan this would be really irritating to have to maintain my own forked version.


Update:
If anyone cares, my solution to this problem was basically thus:
sub utility { my $self = shift; my $query = CGI->new('rm=new_mode'); ref($self)->new->run(QUERY=>$query); exit; }

In reply to Changing run mode in cgi::application by BUU

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.