AnyEvent-Ident

 view release on metacpan or  search on metacpan

lib/AnyEvent/Ident/Response.pm  view on Meta::CPAN

    my($server_port, $client_port) = split /\s*,\s*/, $pair;
    my $self = bless { 
      raw => $raw,
      server_port => $server_port,
      client_port => $client_port
    }, $class;
  
    if($list[0] eq 'USERID')
    {
      shift @list;
      ($self->{os}, $self->{charset}) = split /\s,\s*/, shift @list;
      $self->{username} = shift @list;
      $self->{charset} ||= 'US-ASCII';
    }
    else
    {
      shift @list;
      $self->{error_type} = shift @list;
    }
  
    return $self;
  }
  else
  {
     my $args = ref $_[0] eq 'HASH' ? (\%{$_[0]}) : ({@_});
     my $self = bless {
       server_port => $args->{req}->server_port,
       client_port => $args->{req}->client_port,
       username    => $args->{username},
       os          => $args->{os},
       charset     => $args->{charset},
       error_type  => $args->{error_type},
     }, $class;
     $self->{os} = 'OTHER' unless defined $self->{os};
     if($self->{error_type})
     {
       $self->{raw} = join(':', join(',', $self->{server_port}, $self->{client_port}), 'ERROR', $self->{error_type});
     }
     elsif($self->{charset})
     {
       $self->{raw} = join(':', join(',', $self->{server_port}, $self->{client_port}), 'USERID', join(',', $self->{os}, $self->{charset}), $self->{username});
     }
     else
     {
       $self->{raw} = join(':', join(',', $self->{server_port}, $self->{client_port}), 'USERID', $self->{os}, $self->{username});
     }
     return $self;
  }
}

sub _key

lib/AnyEvent/Ident/Response.pm  view on Meta::CPAN

  join ':', $self->{server_port}, $self->{client_port};
}


sub as_string { shift->{raw} }
sub is_success { defined shift->{username} }
sub server_port { shift->{server_port} }
sub client_port { shift->{client_port} }
sub username { shift->{username} }
sub os { shift->{os} }
sub charset { shift->{charset} }
sub error_type { shift->{error_type} }

1;

__END__

=pod

=encoding UTF-8

lib/AnyEvent/Ident/Response.pm  view on Meta::CPAN

 my $username = $res->username

The username in the response.

=head2 os

 my $os = $res->os

The operating system in the response.

=head2 charset

 my $charset = $res->charset

The encoding for the username.  This will be C<US-ASCII> if it
was not provided by the server.

=head2 error_type

 my $type = $res->error_type

The error type returned from the server.  Normally, this is one of



( run in 0.256 second using v1.01-cache-2.11-cpan-4d50c553e7e )