The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Footprintless::Resource::Provider - A contract for providing resources to the resource manager

VERSION

version 1.17

DESCRIPTION

The abstract base class for all providers. The class defines the contract that all providers must adhere to. Providers not intended to be used directly. Instead an instance of Footprintless::ResourceManager should be initialized with an ordered list of providers. See Footprintless::ResourceManager for usage.

CONSTRUCTORS

new(@args)

See implementation classes.

METHODS

download($resource, %options)

Downloads $resource and returns the filename it downloaded to. The returned filename may be an object which overrides the "" operator so that when used in string context, you will get the actual filename. All %options are passed through to the implementation. At minimum, all implementations must support these options:

to

The path of a directory or filename to download to.

resource($spec)

Returns an instance of the subclass of Footprintless::Resource provided by this provider, indicated by $spec.

supports($spec)

Returns 1 if this provider supports $spec, 0 otherwise.

AUTHOR

Lucas Theisen <lucastheisen@pastdev.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2016 by Lucas Theisen.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

SEE ALSO

Please see those modules/websites for more information related to this module.