|
NAMESPOPS::Export - Export SPOPS objects to various formatsSYNOPSISuse SPOPS::Export; # Export to internal SPOPS format my $exporter = SPOPS::Export->new( 'object', { object_class => 'My::Object' }); # Export all objects print $exporter->run; # Export only certain objects $exporter->where( "user_id = 5" ); print $exporter->run; $exporter->where( "last_name = ?" ); $exporter->value( [ "O'Reilly" ] ); print $exporter->run; my $exporter2 = SPOPS::Export->new( 'xml', { object_class => 'My::Object' } ); # Export all objects print $exporter2->run; # Export only certain objects $exporter2->where( "user_id = 5" ); print $exporter2->run; $exporter2->where( "last_name = ?" ); $exporter2->value( [ "O'Reilly" ] ); print $exporter2->run; DESCRIPTIONThis is a simple module to export SPOPS objects into a portable format. The format depends on the type of exporting you are doing. Currently we support five formats, each of which has a unique identifier (in parens) that you pass to the "new()" method:
PROPERTIESYou can set the following properties in the exporter object. Only one is mandatory.object_class ($) Class of the object for which you want to export the data. This should already be created via the normal means (see SPOPS::Initialize). include_id (bool) (optional) Whether to include the ID field its values in the exported data. Default: false skip_fields (\@) (optional) Fields for which you do not want to include data. Default: none where ($) (optional) A WHERE clause (or whatever the datasource supports) to export only certain data. value (\@) (optional) If you use placeholders in the "where" property, replace them with values here. METHODSnew( $export_type, \%params )Create a new instance of an exporter. Since this is a factory class, we use $export_type to determine the class used to create the exporter object. (The export types and classes are listed above.) run() Runs the configured export, returning a string with the exported data. SUBCLASS METHODSIf you want to write your own exporter, you just need to create a class with the following methods. (Technically, all are optional, but you will not get too far if you do not implement at least "create_record()".)Also: if you are writing your own exporter, be sure to look at the "add_type()" method defined above. initialize( \%params ) Perform any necessary initialization for an instance of your exporter object. Return the object. create_header( \@object_fields ) Return a string with the export header. create_record( $object, \@object_fields ) Return a string representing the object in the export format you are implementing. create_footer() Return a string with the export footer. BUGSNone known.TO DONothing known.SEE ALSOSPOPS::Manual::ImportExportClass::Accessor Class::Factory COPYRIGHTCopyright (c) 2001-2004 intes.net, inc.. All rights reserved.This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. AUTHORSChris Winters <chris@cwinters.com>
Visit the GSP FreeBSD Man Page Interface. |