Skip to content

Commit

Permalink
small optimizations
Browse files Browse the repository at this point in the history
  • Loading branch information
kraih committed Oct 22, 2013
1 parent 81e12da commit 0725198
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 8 deletions.
2 changes: 1 addition & 1 deletion Changes
Expand Up @@ -16,7 +16,7 @@
Mojo::UserAgent::Proxy::is_needed.
- Deprecated Mojo::UserAgent::name in favor of
Mojo::UserAgent::Transactor::name.
- Added modules Mojo::UserAgent::Server and Mojo::UserAgent::Proxy.
- Added modules Mojo::UserAgent::Proxy and Mojo::UserAgent::Server.
- Added proxy and server attributes to Mojo::UserAgent.
- Removed deprecated attrs method from Mojo::DOM.
- Improved Mojo::Message to allow max_message_size check to be disabled.
Expand Down
11 changes: 4 additions & 7 deletions lib/Mojo/UserAgent/Server.pm
Expand Up @@ -19,27 +19,24 @@ sub app {
return $self;
}

sub restart {
my $self = shift;
delete $self->{port};
$self->_restart;
}
sub restart { shift->_restart(1) }

sub url {
my $self = shift;
$self->_restart(@_)
$self->_restart(0, @_)
if !$self->{server} || $self->{server}->ioloop ne $self->ioloop || @_;
return Mojo::URL->new("$self->{proto}://localhost:$self->{port}/");
}

sub _restart {
my ($self, $proto) = @_;
my ($self, $full, $proto) = @_;

my $server = $self->{server} = Mojo::Server::Daemon->new(
app => $self->app,
ioloop => $self->ioloop,
silent => 1
);
delete $self->{port} if $full;
die "Couldn't find a free TCP port for application.\n"
unless my $port = $self->{port} ||= Mojo::IOLoop->generate_port;
$self->{proto} = $proto ||= 'http';
Expand Down

0 comments on commit 0725198

Please sign in to comment.