X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class-UUIDColumns.git;a=blobdiff_plain;f=README;fp=README;h=bb25b2681ea5b20db0bb4b38da78ef947b714b82;hp=0000000000000000000000000000000000000000;hb=aaeaf963adf6f25d0b94f91141b93b4260f5bd47;hpb=ebb2fe4f2972890b1eea3c5fdbfaa51653848e33 diff --git a/README b/README new file mode 100644 index 0000000..bb25b26 --- /dev/null +++ b/README @@ -0,0 +1,76 @@ +NAME + DBIx::Class::UUIDColumns - Implicit uuid columns + +SYNOPSIS + In your DBIx::Class table class: + + __PACKAGE__->load_components(qw/UUIDColumns ... Core/); + __PACKAGE__->uuid_columns('artist_id'); + + Note: The component needs to be loaded *before* Core. + +DESCRIPTION + This DBIx::Class component resembles the behaviour of Class::DBI::UUID, + to make some columns implicitly created as uuid. + + When loaded, "UUIDColumns" will search for a suitable uuid generation + module from the following list of supported modules: + + Data::UUID + APR::UUID* + UUID + Win32::Guidgen + Win32API::GUID + + If no supporting module can be found, an exception will be thrown. + + *APR::UUID will not be loaded under OpenBSD due to an as yet + unidentified XS issue. + + If you would like to use a specific module, you can set "uuid_class": + + __PACKAGE__->uuid_class('::Data::UUID'); + __PACKAGE__->uuid_class('MyUUIDGenerator'); + +METHODS + get_uuid + Returns a uuid string from the current uuid_maker. + + insert + Inserts a new uuid string into each column in "uuid_columns". + + uuid_columns + Takes a list of columns to be filled with uuids during insert. + + __PACKAGE__->uuid_columns('artist_id'); + + uuid_class + Takes the name of a UUIDMaker subclass to be used for uuid value + generation. This can be a fully qualified class name, or a shortcut name + starting with :: that matches one of the available + DBIx::Class::UUIDColumns::UUIDMaker subclasses: + + __PACKAGE__->uuid_class('CustomUUIDGenerator'); + # loads CustomeUUIDGenerator + + __PACKAGE__->uuid_class('::Data::UUID'); + # loads DBIx::Class::UUIDMaker::Data::UUID; + + Note that "uuid_class" chacks to see that the specified class isa + DBIx::Class::UUIDColumns::UUIDMaker subbclass and throws and exception + if it isn't. + + uuid_maker + Returns the current UUIDMaker instance for the given module. + + my $uuid = __PACKAGE__->uuid_maker->as_string; + +SEE ALSO + DBIx::Class::UUIDColumns::UUIDMaker + +AUTHORS + Chia-liang Kao Chris Laco + +LICENSE + You may distribute this code under the same terms as Perl itself. +