Profile of HTTP/Body/XForms.pm

← Index
NYTProf Performance Profile «line view»
For script/ponapi
Run on Wed Feb 10 15:51:26 2016
Reported on Thu Feb 11 09:43:09 2016

Filename | /usr/local/share/perl/5.18.2/HTTP/Body/XForms.pm
Statements | Executed 12 statements in 165µs

Subroutines
Calls | P | F | Exclusive Time | Inclusive Time | Subroutine
--- | --- | --- | --- | --- | ---
1 | 1 | 1 | 11µs | 58µs | HTTP::Body::XForms::::BEGIN@10HTTP::Body::XForms::BEGIN@10
1 | 1 | 1 | 9µs | 21µs | HTTP::Body::XForms::::BEGIN@6HTTP::Body::XForms::BEGIN@6
1 | 1 | 1 | 6µs | 60µs | HTTP::Body::XForms::::BEGIN@7HTTP::Body::XForms::BEGIN@7
1 | 1 | 1 | 5µs | 6µs | HTTP::Body::XForms::::BEGIN@8HTTP::Body::XForms::BEGIN@8
0 | 0 | 0 | 0s | 0s | HTTP::Body::XForms::::spinHTTP::Body::XForms::spin

Call graph for these subroutines as a Graphviz dot language file.

Line | State ments | Time on line | Calls | Time in subs | Code
--- | --- | --- | --- | --- | ---
1 |  |  |  |  | package HTTP::Body::XForms;
2 |  |  |  |  | {
3 | 2 | 1µs |  |  | $HTTP::Body::XForms::VERSION = '1.19';
4 |  |  |  |  | }
5 |  |  |  |  |
6 | 2 | 26µs | 2 | 32µs | # spent 21µs (9+12) within HTTP::Body::XForms::BEGIN@6 which was called: # once (9µs+12µs) by Plack::Request::BEGIN@10 at line 6 use strict; # spent 21µs making 1 call to HTTP::Body::XForms::BEGIN@6 # spent 12µs making 1 call to strict::import
7 | 2 | 20µs | 2 | 113µs | # spent 60µs (6+54) within HTTP::Body::XForms::BEGIN@7 which was called: # once (6µs+54µs) by Plack::Request::BEGIN@10 at line 7 use base 'HTTP::Body'; # spent 60µs making 1 call to HTTP::Body::XForms::BEGIN@7 # spent 54µs making 1 call to base::import
8 | 2 | 21µs | 2 | 7µs | # spent 6µs (5+1000ns) within HTTP::Body::XForms::BEGIN@8 which was called: # once (5µs+1000ns) by Plack::Request::BEGIN@10 at line 8 use bytes; # spent 6µs making 1 call to HTTP::Body::XForms::BEGIN@8 # spent 1µs making 1 call to bytes::import
9 |  |  |  |  |
10 | 3 | 94µs | 3 | 105µs | # spent 58µs (11+47) within HTTP::Body::XForms::BEGIN@10 which was called: # once (11µs+47µs) by Plack::Request::BEGIN@10 at line 10 use File::Temp 0.14; # spent 58µs making 1 call to HTTP::Body::XForms::BEGIN@10 # spent 39µs making 1 call to Exporter::import # spent 8µs making 1 call to UNIVERSAL::VERSION
11 |  |  |  |  |
12 |  |  |  |  | =head1 NAME
13 |  |  |  |  |
14 |  |  |  |  | HTTP::Body::XForms - HTTP Body XForms Parser
15 |  |  |  |  |
16 |  |  |  |  | =head1 SYNOPSIS
17 |  |  |  |  |
18 |  |  |  |  | use HTTP::Body::XForms;
19 |  |  |  |  |
20 |  |  |  |  | =head1 DESCRIPTION
21 |  |  |  |  |
22 |  |  |  |  | HTTP Body XForms Parser. This module parses single part XForms
23 |  |  |  |  | submissions, which are identifiable by the content-type
24 |  |  |  |  | application/xml. The XML is stored unparsed on the parameter
25 |  |  |  |  | XForms:Model.
26 |  |  |  |  |
27 |  |  |  |  | =head1 METHODS
28 |  |  |  |  |
29 |  |  |  |  | =over 4
30 |  |  |  |  |
31 |  |  |  |  | =item spin
32 |  |  |  |  |
33 |  |  |  |  | This method is overwrited to set the param XForms:Model with
34 |  |  |  |  | the buffer content.
35 |  |  |  |  |
36 |  |  |  |  | =cut
37 |  |  |  |  |
38 |  |  |  |  | sub spin {
39 |  |  |  |  | my $self = shift;
40 |  |  |  |  |
41 |  |  |  |  | return unless $self->length == $self->content_length;
42 |  |  |  |  |
43 |  |  |  |  | $self->body($self->{buffer});
44 |  |  |  |  | $self->param( 'XForms:Model', $self->{buffer} );
45 |  |  |  |  | $self->{buffer} = '';
46 |  |  |  |  | $self->{state} = 'done';
47 |  |  |  |  |
48 |  |  |  |  | return $self->SUPER::init();
49 |  |  |  |  | }
50 |  |  |  |  |
51 |  |  |  |  | =back
52 |  |  |  |  |
53 |  |  |  |  | =head1 AUTHOR
54 |  |  |  |  |
55 |  |  |  |  | Daniel Ruoso, C<daniel@ruoso.com>
56 |  |  |  |  |
57 |  |  |  |  | =head1 LICENSE
58 |  |  |  |  |
59 |  |  |  |  | This library is free software . You can redistribute it and/or modify
60 |  |  |  |  | it under the same terms as perl itself.
61 |  |  |  |  |
62 |  |  |  |  | =cut
63 |  |  |  |  |
64 | 1 | 2µs |  |  | 1;