Devel-Scooby

 view release on metacpan or  search on metacpan

Makefile  view on Meta::CPAN

# 5.45 (Revision: 1.222) from the contents of
# Makefile.PL. Don't edit this file, edit Makefile.PL instead.
#
#	ANY CHANGES MADE HERE WILL BE LOST!
#
#   MakeMaker ARGV: ()
#
#   MakeMaker Parameters:

#	NAME => q[Devel::Scooby]
#	PREREQ_PM => { Storable=>q[2.04], IO::Socket=>q[0], Crypt::RSA=>q[1.5], Socket=>q[0], PadWalker=>q[0.08], Data::Dumper=>q[0] }
#	VERSION_FROM => q[Scooby.pm]

# --- MakeMaker post_initialize section:


# --- MakeMaker const_config section:

# These definitions are from config.sh (via /usr/lib/perl5/5.6.1/i386-linux/Config.pm)

# They may have been overridden via Makefile.PL or on the command line

Makefile  view on Meta::CPAN


test_ : test_dynamic

test_static :: test_dynamic
testdb_static :: testdb_dynamic


# --- MakeMaker ppd section:
# Creates a PPD (Perl Package Description) for a binary distribution.
ppd:
	@$(PERL) -e "print qq{<SOFTPKG NAME=\"Devel-Scooby\" VERSION=\"4,12,0,0\">\n}. qq{\t<TITLE>Devel-Scooby</TITLE>\n}. qq{\t<ABSTRACT></ABSTRACT>\n}. qq{\t<AUTHOR></AUTHOR>\n}. qq{\t<IMPLEMENTATION>\n}. qq{\t\t<DEPENDENCY NAME=\"Crypt-RSA\" VERSION=\"1...

# --- MakeMaker pm_to_blib section:

pm_to_blib: $(TO_INST_PM)
	@$(PERL) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" \
	"-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -MExtUtils::Install \
        -e "pm_to_blib({qw{$(PM_TO_BLIB)}},'$(INST_LIB)/auto','$(PM_FILTER)')"
	@$(TOUCH) $@


Makefile.PL  view on Meta::CPAN

use 5.006;

use ExtUtils::MakeMaker;

WriteMakefile(
              'NAME'         => 'Devel::Scooby',
              'VERSION_FROM' => 'Scooby.pm',
              'PREREQ_PM'    => {
                                   'Data::Dumper'   => 0,
                                   'Storable'       => 2.04,
                                   'PadWalker'      => 0.08,
                                   'Crypt::RSA'     => 1.50,
                                   'Socket'         => 0,
                                   'IO::Socket'     => 0,
                                },
             );

README  view on Meta::CPAN

   make test

then as root:

   make install

DEPENDENCIES

This module requires these other modules and libraries:

  Crypt::RSA, PadWalker, Storable, Data::Dumper, and libwww-perl.

COPYRIGHT AND LICENCE

Copyright (c) 2003, Paul Barry.  All Rights Reserved.

This module is free software.  It may be used, redistributed 
and/or modified under the same terms as Perl itself.

Scooby.pm  view on Meta::CPAN

package Devel::Scooby;

# Scooby.pm - a relocation mechanism for use with the Mobile::Location
#             and Mobile::Executive modules.
#
# Author: Paul Barry, paul.barry@itcarlow.ie
# Create: October 2002.
# Update: April/May 2003 - Version 4.x series.
#
# Notes:  This code takes advantage of the CPAN modules
#         PadWalker and Storable (with a little help from the
#         Data::Dumper module when it comes to Objects).  The Crypt::RSA
#         module provides PK+/PK- support.
#
#         Version 1.x supported relocating simple Perl code.
#         Version 2.x supported relocating SCALARs, ARRAYs, and
#             HASHes and references to same.
#         Version 3.x supported relocating Perl OO objects.  Note 
#             that this will only occur after Scooby has contacted
#             the receiving Location and determined that any 
#             required classes exist on the remote Perl system.

Scooby.pm  view on Meta::CPAN

        # IN:  nothing.  Although "$sub" is set to the name of the
        #      subroutine that was just called (thanks to Perl's debugging
        #      mechanisms).
        #
        # OUT: nothing.

        if ( $sub =~ /^Mobile::Executive::relocate$/ )
        {
            use Socket;                      # Functional interface to Socket API.
            use Storable qw( freeze thaw );  # Provides a persistence mechanism.
            use PadWalker qw( peek_my );     # Provides access to all lexically scoped variables.

            use Crypt::RSA;                  # Provides authentication and 
                                             # encryption services.

            my $remote = shift; 

            # Next two lines turn the IP name into a dotted-decimal.

            my $tmp = gethostbyname( $remote ) or inet_aton( $remote );
            $remote = inet_ntoa( $tmp );

Scooby.pm  view on Meta::CPAN

Loads.  The biggest item on the list would be to enhance Scooby to allow it to handle more complex data structures, such as ARRAYs of HASHes and HASHes of ARRAYs, etc., etc.

My initial plan was to allow for the automatic relocation of open disk-files.  However, on reflection, I decided not to do this at this time, but may return to the idea at some stage in the future.

The current implementation checks to see if "used" classes are available on the next Location before attempting relocation, but does not check to see if "used" modules are available.  It would be nice if it did.

It would also be nice to incorporate an updated B<Class::Tom> (by James Duncan) to handle the relocation of objects to a Location without the need to have the module exist on the remote Location.  On my system (Linux), the most recent B<Class::Tom> g...

=head1 SEE ALSO

The B<Mobile::Executive> module and the B<Mobile::Location> class.  Internally, this module uses the following CPAN modules: B<PadWalker> and B<Storable>, in addition to the standard B<Data::Dumper> module.  The B<Crypt::RSA> modules provides encrypt...

The Scooby Website: B<http://glasnost.itcarlow.ie/~scooby/>.

=head1 AUTHOR

Paul Barry, Institute of Technology, Carlow in Ireland, B<paul.barry@itcarlow.ie>, B<http://glasnost.itcarlow.ie/~barryp/>.

=head1 COPYRIGHT

Copyright (c) 2003, Paul Barry.  All Rights Reserved.



( run in 0.747 second using v1.01-cache-2.11-cpan-05444aca049 )