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 )