Jonathan Rockway

NAME

File::Attributes::Simple - the simplest implementation of File::Attributes

SYNOPSIS

This is the fallback for File::Attributes if it can't find anything better. It stores attributes as YAML files (named .filename.attributes) containing key/value pairs.

You probably shouldn't use this class directly, see File::Attributes instead.

METHODS

All the standard ones, namely:

get

set

unset

list

applicable

Applicable for every file.

priority

Priority 1 (low).

EXTENDING

If you want to implement a file attribute scheme, and can do so doing hashrefs, this class might make your life easier. Simply subclass File::Attributes::Simple (this class), and override the following (private) methods:

_attribute_file($filename)

If you just want the attributes to be stored somewhere else, override this method. It takes a filename and returns the filename that stores the attributes. If you override _load and _save, you don't need to worry about this method; it isn't called from anywhere else.

_load($filename)

This method takes a filename and returns the hash(ref) of attributes.

_save($filename, \%attributes)

This method takes a filename and the attributes hashref and stores it to disk (or wherever, the method doesn't care if it's a disk or not).

I think OS X uses a format for storing filesystem attributes that could be implemented by overriding this class, but I don't have a Mac and couldn't find any documentation.

BUGS

See bug reporting instructions in "BUGS" in File::Attributes.

AUTHOR

Jonathan Rockway <jrockway at cpan.org>