Connector

 view release on metacpan or  search on metacpan

lib/Connector/Builtin/File/Path.pm  view on Meta::CPAN

        open (FILE, ">>",$filename) || die "Unable to open file for appending";
    } else {
        open (FILE, ">", $filename) || die "Unable to open file for writing";
    }

    print FILE $content;
    close FILE;

    if (my $filemode = $self->mode()) {
        if ($filemode =~ m{\A[0-7]{4}\z}) {
            chmod (oct($filemode), $filename) || die "Unable to change mode to $filemode";
        } else {
            die "Given mode string '$filemode' is not valid";
        }
    }

    if ($gid) {
        chown ($uid, $gid, $filename) || die "Unable to chown $filename to $uid/$gid";
    }

    #FIXME - some error handling might not hurt

lib/Connector/Builtin/File/SCP.pm  view on Meta::CPAN

    my $tmpdir = tempdir( CLEANUP => 1 );
    my ($fh, $source) = tempfile( DIR => $tmpdir );

    open FILE, ">$source" || die "Unable to open file for writing";
    print FILE $content;
    close FILE;

    if ($self->filemode()) {
        my $mode = $self->filemode();
        $mode = oct($mode) if $mode =~ /^0/;
        chmod $mode, $source;
    }

    my $target = $self->_sanitize_path( $file, $data );

    my $res = $self->_transfer( $source, $target );
    if ($res) {
        die sprintf("Unable to transfer data (EC %01d)", $res);
    }

    return 1;



( run in 0.233 second using v1.01-cache-2.11-cpan-8d75d55dd25 )