Net-LibNFS

 view release on metacpan or  search on metacpan

lib/Net/LibNFS/Async/Filehandle.pm  view on Meta::CPAN

=item * I<OBJ>->close()

=cut

sub close {
    my ($self) = @_;

    return $self->_io_act( '_async_close' );
}

=item * I<OBJ>->read( $SIZE )

=cut

sub read {
    my ($self, $size) = @_;

    return $self->_io_act( _async_read => $size );
}

=item * I<OBJ>->pread( $OFFSET, $SIZE )

=cut

sub pread {
    my ($self, $offset, $size) = @_;

    return $self->_io_act( _async_pread => $offset, $size );
}

=item * I<OBJ>->write( $BUFFER )

=cut

sub write {
    my ($self, $buf) = @_;

    return $self->_io_act( _async_write => $buf );
}

=item * I<OBJ>->pwrite( $OFFSET, $BUFFER )

=cut

sub pwrite {
    my ($self, $offset, $buf) = @_;

    return $self->_io_act( _async_pwrite => $offset, $buf );
}

=item * I<OBJ>->chmod( $MODE )

=cut

sub chmod {
    my ($self, $mode) = @_;

    return $self->_io_act( _async_chmod => $mode );
}

=item * I<OBJ>->chown( $UID, $GID )

=cut

sub chown {
    my ($self, $uid, $gid) = @_;

    return $self->_io_act( '_async_chown', $uid, $gid );
}

=item * I<OBJ>->stat()

=cut

sub stat {
    my ($self) = @_;

    return $self->_io_act( '_async_stat' );
}

=item * I<OBJ>->fcntl( $CMD, @ARGS )

(NB: Even if $CMD == NFS4_F_SETLK, the returned promise won’t resolve until
we receive the NFS server’s response.)

=cut

sub fcntl {
    my ($self, @args) = @_;

    return $self->_io_act( '_async_fcntl', @args );
}

=item * I<OBJ>->seek()

=cut

sub seek {
    my ($self, $offset, $whence) = @_;

    return $self->_io_act( '_async_seek', $offset, $whence );
}

=item * I<OBJ>->sync()

=cut

sub sync {
    my ($self) = @_;

    return $self->_io_act( '_async_sync' );
}

=item * I<OBJ>->truncate( $LENGTH )

=cut

sub truncate {
    my ($self, $len) = @_;

    return $self->_io_act( _async_truncate => $len );
}

#----------------------------------------------------------------------

sub _io_act {
    my $self = shift;



( run in 0.702 second using v1.01-cache-2.11-cpan-71847e10f99 )