Flash-FLAP
view release on metacpan or search on metacpan
lib/Flash/FLAP.pm view on Meta::CPAN
require Exporter;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
@ISA = qw(Exporter);
# Items to export into callers namespace by default. Note: do not export
# names by default without a very good reason. Use EXPORT_OK instead.
# Do not simply export all your public functions/methods/constants.
# This allows declaration use Flash::FLAP ':all';
# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
# will save memory.
%EXPORT_TAGS = ( 'all' => [ qw(
) ] );
@EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
@EXPORT = qw(
);
$VERSION = '0.09';
=head1 NAME
Flash::FLAP - Flash Remoting in Perl
Translated from PHP Remoting v. 0.5b from the -PHP project.
Main gateway class. This is always the file you call from flash remoting-enabled server scripts.
=head1 SYNOPSIS
This code should be present in your FLAP gateway script, the one called by the Flash client.
To enable the client to call method bar() under service Foo,
make sure MyCLass has a method called bar() and register an instance of your class.
my $object = new MyClass();
my $flap = FLAP->new;
$flap->registerService("Foo",$object);
$flap->service();
Or, if you have many services to register, create a package corresponding to each service
and put them into a separate directory. Then register this directory name.
In the example below directory "services" may contain Foo.pm, Bar.pm etc.
Therefore, services Foo and Bar are available. However, these packages must have a function
called methodTable returning the names and descriptions of all possible methods to invoke.
See the documentation and examples for details.
my $flap = FLAP->new;
$flap->setBaseClassPath('./services');
$flap->service();
=head1 ABSTRACT
Macromedia Flash Remoting server-side support.
=head1 DESCRIPTION
This file accepts the data and deserializes it using the InputStream and Deserializer classes.
Then the gateway builds the executive class which then loads the targeted class file
and executes the targeted method via flash remoting.
After the target uri executes the the gateway determines the data type of the data
and serializes and returns the data back to the client.
=head2 EXPORT
None by default.
=head1 SEE ALSO
There is a mailing list for Flash::FLAP. You can subscribe here:
http://lists.sourceforge.net/lists/listinfo/flaph-general
The web page for the package is at:
http://www.simonf.com/flap
=head1 AUTHOR
Vsevolod (Simon) Ilyushchenko, simonf@simonf.com
=head1 COPYRIGHT AND LICENSE
Copyright (c) 2003 by Vsevolod (Simon) Ilyushchenko. All rights reserved.
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
The code is based on the -PHP project (http://amfphp.sourceforge.net/)
ORIGINAL PHP Remoting CONTRIBUTORS
Musicman - original design
Justin - gateway architecture, class structure, datatype io additions
John Cowen - datatype io additions, class structure
Klaasjan Tukker - modifications, check routines, and register-framework
==head1 CHANGES
=head2 Sat Mar 13 16:25:00 EST 2004
=item Patch from Kostas Chatzikokolakis handling encoding.
Sat Aug 2 14:01:15 EDT 2003
Changed new() to be invokable on objects, not just strings.
Sun Jul 20 19:27:44 EDT 2003
Added "binmode STDIN" before reading input to prevent treating 0x1a as EOF on Windows.
Wed Apr 23 19:22:56 EDT 2003
Added "binmode STDOUT" before printing headers to prevent conversion of 0a to 0d0a on Windows.
Added modperl 1 support and (so far commented out) hypothetical modperl 2 support.
Sun Mar 23 13:27:00 EST 2003
Synching with AMF-PHP:
Added functions debugDir() and log() (debug() in PHP), added reading headers to service().
Added fromFile() to enable parsing traffic dumps.
( run in 0.599 second using v1.01-cache-2.11-cpan-5837b0d9d2c )