Heray-Was-Here
Server : Apache
System : Linux vps103298.mylogin.co 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : calvet ( 273824)
PHP Version : 7.4.33
Disable Function : NONE
Directory :  /proc/thread-self/root/usr/local/share/perl5/SOAP/Transport/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/thread-self/root/usr/local/share/perl5/SOAP/Transport/IO.pm
# ======================================================================
#
# Copyright (C) 2000-2001 Paul Kulchenko (paulclinger@yahoo.com)
# SOAP::Lite is free software; you can redistribute it
# and/or modify it under the same terms as Perl itself.
#
# ======================================================================

package SOAP::Transport::IO;

use strict;

our $VERSION = '1.27'; # VERSION

use IO::File;
use SOAP::Lite;
# ======================================================================

package SOAP::Transport::IO::Server;

use strict;
use Carp ();
use vars qw(@ISA);
@ISA = qw(SOAP::Server);

sub new {
    my $class = shift;

    return $class if ref $class;
    my $self = $class->SUPER::new(@_);

    return $self;
}

sub in {
    my $self = shift;
    $self = $self->new() if not ref $self;

    return $self->{ _in } if not @_;

    my $file = shift;
    $self->{_in} = (defined $file && !ref $file && !defined fileno($file))
        ? IO::File->new($file, 'r')
        : $file;
    return $self;
}

sub out {
    my $self = shift;
    $self = $self->new() if not ref $self;

    return $self->{ _out } if not @_;

    my $file = shift;
    $self->{_out} = (defined $file && !ref $file && !defined fileno($file))
        ? IO::File->new($file, 'w')
        : $file;
    return $self;
}

sub handle {
    my $self = shift->new;

    $self->in(*STDIN)->out(*STDOUT) unless defined $self->in;
    my $in = $self->in;
    my $out = $self->out;

    my $result = $self->SUPER::handle(join '', <$in>);
    no strict 'refs';
    print {$out} $result
        if defined $out;
    return;
}

# ======================================================================

1;

__END__

Hry