/[Frey]/trunk/lib/Frey/Server.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/Frey/Server.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 19 by dpavlin, Sun Jun 29 12:55:39 2008 UTC revision 23 by dpavlin, Sun Jun 29 16:24:41 2008 UTC
# Line 7  use Continuity; Line 7  use Continuity;
7  use Continuity::REPL;  use Continuity::REPL;
8  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
9    
10  use HTML;  use base 'Frey';
11    
12    use Frey::HTML;
13    
14  my @messages;    # Global (shared) list of messages  my @messages;    # Global (shared) list of messages
15  my $got_message; # Flag to indicate that there is a new message to display  my $got_message; # Flag to indicate that there is a new message to display
# Line 91  sub send_message { Line 93  sub send_message {
93  # This isn't a pushstream, nor a new message. It is just the main page. We loop  # This isn't a pushstream, nor a new message. It is just the main page. We loop
94  # in case they ask for it multiple times :)  # in case they ask for it multiple times :)
95  sub send_page {  sub send_page {
96    my ($req) = @_;          my ($req) = @_;
97    while(1) {          my $templates = Template::Declare->templates;
98          warn "param = ",dump($req->param);          while(1) {
99          $req->print( HTML->view( 'status' ) );                  warn "param = ",dump($req->param);
100      $req->next;                  my $path = $req->request->url->path;
101          Module::Refresh->refresh;  
102    }                  if ( $path =~ m/::/ ) {
103                            my ( undef, $module, $method ) = split(m!/!, $path, 3);
104    
105                            if ( ! defined( $templates->{$module} ) ) {
106                                    $req->conn->send_status_line( 404, "$module" );
107                                    $req->print("Package $module not found");
108                            } elsif ( grep(/^\Q$method\E$/, @{ $templates->{$module} }) ) {
109                                    $req->print( Frey::HTML->page( $method, $req ) );
110                            } else {
111                                    $req->conn->send_status_line( 404, "$module $method" );
112                                    $req->print("Package $module doesn't have $method");
113                            }
114                    } else {
115                            my $html = Frey::HTML->page( 'status' );
116                            $req->print( $html );
117                            warn ">> ",length( $html ), " bytes\n";
118                    }
119                    $req->next;
120                    Module::Refresh->refresh;
121            }
122  }  }
123    

Legend:
Removed from v.19  
changed lines
  Added in v.23

  ViewVC Help
Powered by ViewVC 1.1.26