JOAP::Proxy::Package

JOAP::Proxy::Package contains mixin for proxies that store metadata in the package.
Download

JOAP::Proxy::Package Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • Evan Prodromou
  • Publisher web site:
  • http://search.cpan.org/~evan/

JOAP::Proxy::Package Tags


JOAP::Proxy::Package Description

JOAP::Proxy::Package contains mixin for proxies that store metadata in the package. JOAP::Proxy::Package contains mixin for proxies that store metadata in the package.SYNOPSIS use JOAP::Proxy::Package; use base qw(JOAP::Proxy::Package JOAP::Proxy::Object);ABSTRACTThis module provides a mixin class for storing JOAP::Proxy::Object metadata in the package of a class rather than in each instance. It also caches AUTOLOAD'd methods in the package namespace so they can be accessed by standard lookup the next time around.First of all, this modules isn't really of use unless you're really messing around inside the JOAP proxy internals. If you aren't, well, just forget that you saw this package.The module does two things:· It has class data accessors for the metadata (attribute and method descriptors, timestamps, and descriptions) for a class of JOAP objects. It also overloads the per-instance accessors so that they pass through to the class accessors. Because JOAP::Proxy and friends use those per-instance accessors, this means that the behavior of instances of a package will all be the same (more or less).· It provides an AUTOLOAD method like the one in JOAP::Proxy. This one, however, will cache the resultant proxy method or accessor in the package namespace, so that the method doesn't have to be AUTOLOAD'd the next time around.This package should be the first in an @ISA or 'use base' statement, since it overloads some of the basic stuff in JOAP::Proxy. It is not a subclass of JOAP::Proxy -- this prevents the 'diamond problem', since Perl inheritance is depth-first.If that doesn't make any sense, just remember: this package first.Class MethodsThe package defines the following four class methods for storing JOAP metadata:AttributesThis is for storing a reference to a hashtable of attribute descriptors. See JOAP::Proxy for how these work.MethodsThis is for storing a reference to a hashtable of method descriptors (again, fully documented in JOAP::Proxy).DescriptionA text description of the interface.TimestampThe most recent time the interface was checked with the server. It's a string in ISO 8601 format; see JOAP for a full description of that format.Instance MethodsThe package also whomps ('overloads' is the wrong word, since it's not a subclass) the following methods in JOAP::Proxy:attributes methods timestamp description _set_timestamp _set_descriptionFor compatibility with the JOAP::Proxy interface, it's probably better to call the lowercase interface for application code, and reserve the uppercase interface for class declarations.Requirements:· Perl


JOAP::Proxy::Package Related Software