The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

WebService::Rackspace::CloudFiles::Object::Iterator - A simple iterator for CloudFiles file objects.

SYNOPSIS

  # $container is an instance of WebService::Rackspace::CloudFiles::Container
  my @objects = $container->objects->all;

  # or
  my $next = $container->objects->next;
 

DESCRIPTION

Since Rackspace CloudFiles can only return 10,000 files at a time, an iterator is needed. WebService::RackSpace::CloudFiles used to use Data::Bulk::Streamer but this relied upon Moose. It was replaced with this module in order to allow use of Moo instead.

This class supports the methods next, items, all, and is_done. For backward compatibility with previous versions of WebService::Rackspace::CloudFiles, if you call one of unsupported Data::Stream::Bulk's methods on an instance of this class, it will be converted to a Data::Stream::Bulk::Callback object.

METHODS

next

Retrieves the next block of items, if any, as an arrayref.

items

Retrieves the next block of items and dereferences the result.

all

Retrieves all items.

callback

cat

chunk

filter

list_cat

upgrade_to_data_stream_bulk

is_done

Returns true if there are no more items. Note that a false value means that there MAY or MAY NOT be additional items.

SEE ALSO

WebService::Rackspace::CloudFiles, WebService::Rackspace::CloudFiles::Container, WebService::Rackspace::CloudFiles::Object.

AUTHOR

Dondi Michael Stroma <dstroma@gmail.com>.

COPYRIGHT

Copyright (C) 2017, Dondi Michael Stroma

LICENSE

This module is free software; you can redistribute it or modify it under the same terms as Perl itself.